html, body { min-height: 100vh; }
html {overflow-y:scroll;}
body { font-family: Verdana, sans-serif; font-size: 12px; color:#333; margin: 0; padding: 0; min-width: 900px; }

h1, h2, h3, h4, h5, h6 {font-family: "Trebuchet MS", Verdana, sans-serif;padding: 2px 10px 1px 0px;margin: 0 0 10px 0;}
#content h1, h2, h3, h4, h5, h6 {color: #555;}
h2 {font-size: 20px;}
h3 {font-size: 16px;}
h4 {font-size: 13px; border-bottom: 1px solid #ccc; font-weight:normal;}
pre, code {font-family: Consolas, Menlo, "Liberation Mono", Courier, monospace;}
.wiki h1 {font-size: 2em;}
.wiki h2 {font-size: 1.8em;}
.wiki h3 {font-size: 1.5em;}
.wiki h4 {font-size: 1.2em; border: none; font-weight: bold;}
.wiki h5 {font-size: 1em;}
.wiki h6 {font-size: 1em; color: #8e8e8e;}

/***** Layout *****/
div#wrapper, div#wrapper2, div#wrapper3 { min-height: inherit; }
#wrapper {background: white;overflow: hidden;}
#wrapper3 { display: flex; flex-direction: column; }

#top-menu {background: #3E5B76; color: #fff; height:1.8em; font-size: 0.8em; padding: 2px 10px 0px 12px;}
#top-menu ul {margin: 0;  padding: 0;}
#top-menu li {
  float:left;
  list-style-type:none;
  margin: 0px 0px 0px 0px;
  padding: 0px 0px 0px 0px;
  white-space:nowrap;
}
#top-menu a {color: #fff; margin-right: 8px; font-weight: bold;}
#top-menu #loggedas { float: right; margin-right: 0.5em; color: #fff; }

#account {float:right;}

#header {min-height:5.3em;margin:0;background-color:#628DB6;color:#f8f8f8; padding: 4px 16px 20px 16px; position:relative;}
#header a {color:#f8f8f8;}
#header h1 { overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
#header h1 .breadcrumbs { display:block; font-size: .5em; font-weight: normal; }

#quick-search {float:right;}
#quick-search #q {width:130px; height:24px; box-sizing:border-box; vertical-align:middle; border:1px solid #ccc; border-radius:3px;}

#main-menu {position: absolute;  bottom: 0px;  left: 10px; margin-right: -500px; width: 100%;}
#main-menu ul {margin: 0;  padding: 0; width: 100%; white-space: nowrap;}
#main-menu li {
  float:none;
  list-style-type:none;
  margin: 0px 2px 0px 0px;
  padding: 0px 0px 0px 0px;
  white-space:nowrap;
  display:inline-block;
}
#main-menu li a {
  display: block;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  margin: 0;
  padding: 4px 10px 4px 10px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
#main-menu li a:hover {background: #759FCF; color: #fff; }
#main-menu li:hover ul.menu-children, #main-menu li ul.menu-children.visible {display: block;}
#main-menu li a.selected, #main-menu li a.selected:hover {background: #fff; color: #555; }
#main-menu li a.new-object {background-color: #759FCF; }

#main-menu .menu-children {
  display: none;
  position:absolute;
  width: inherit;
  z-index:45;
  background-color:#fff;
  border-right: 1px solid #759FCF;
  border-bottom: 1px solid #759FCF;
  border-left: 1px solid #759FCF;
}
#main-menu .menu-children li {float:left; clear:both; width:100%;}
#main-menu .menu-children li a {color: #555; background-color:#fff; font-weight:normal; border-radius: 0;}
#main-menu .menu-children li a:hover {color: #fff; background-color: #759FCF;}

#main-menu .tabs-buttons {
  right: 6px;
  background-color: transparent;
  border-bottom-color: transparent;
}

#admin-menu ul {margin: 0;  padding: 0;}
#admin-menu li {margin: 0;  padding: 0 0 6px 0; list-style-type:none;}

#main {flex-grow: 2; display: flex; flex-direction: row-reverse;}

#sidebar{ flex-shrink: 0; padding-left: 20px; padding-right: 8px; background: #EEEEEE; border-left: 1px solid #ddd}
@media screen and (min-width: 0px) and (max-width: 1089px) {#sidebar{width: 22%;}}
@media screen and (min-width: 1090px) and (max-width: 1279px) {#sidebar{width: 240px;}}
@media screen and (min-width: 1280px) and (max-width: 1599px) {#sidebar{width: 280px;}}
@media screen and (min-width: 1600px) and (max-width: 1919px) {#sidebar{width: 320px;}}
@media screen and (min-width: 1920px) and (max-width: 2559px) {#sidebar{width: 360px;}}
@media screen and (min-width: 2560px) {#sidebar{width: 380px;}}
#sidebar h3{ font-size: 14px; margin-top:14px; color: #666;  }
#sidebar hr{ width: 100%; margin: 0 auto; height: 1px; background: #ccc; border: 0; }
* html #sidebar hr{ width: 95%; position: relative; left: -6px; color: #ccc; }
#sidebar .contextual { margin-right: 1em; }
#sidebar ul, ul.flat {margin: 0;  padding: 0;}
#sidebar ul li, ul.flat li {list-style-type:none;margin: 0px 2px 0px 0px; padding: 0px 0px 0px 0px;}
#sidebar div.wiki ul {margin:inherit; padding-left:40px;}
#sidebar div.wiki ul li {list-style-type:inherit;}
#sidebar a.icon-only {opacity: 0.4; margin-left: 5px;}
#sidebar a.icon-only:hover {opacity: 1;}
#sidebar span.icon-warning {margin-left: 5px;}
#sidebar li input[type=checkbox] {height: 20px;}

#content { flex-grow: 1; background-color: #fff; margin: 0px; padding: 10px 16px 10px 16px; overflow-x: auto;}
html>body #content { min-height: 600px; }
* html body #content { height: 600px; } /* IE */

#main.nosidebar #sidebar{ display: none; }

#footer {clear: both; border-top: 1px solid #bbb; font-size: 0.9em; color: #aaa; padding: 5px; text-align:center; background:#fff;}

#login-form {margin:5em auto 2em auto; padding:20px; width:340px; border:1px solid #FDBF3B; background-color:#FFEBC1; border-radius:4px; box-sizing: border-box;}
#login-form label {display:block; margin-bottom:5px; font-weight:bold;}
#login-form label[for=autologin] {font-weight:normal;}
#login-form input {height: 29px;}
#login-form input[type=text], #login-form input[type=password], #login-form input[type=submit] {display: block; width: 100%;}
#login-form input[type=text], #login-form input[type=password] {margin-bottom: 15px;}
#login-form a.lost_password {float:right; font-weight:normal;}
#login-form input#openid_url {background:#fff url(../images/openid-bg.gif) no-repeat 4px 50%; padding-left:24px !important;}
#login-form h3 {text-align: center;}

div.modal { border-radius:5px; background:#fff; z-index:50; padding:4px;}
div.modal h3.title {display:none;}
div.modal p.buttons {text-align:right; margin-bottom:0;}
div.modal .box p {margin: 0.3em 0;}

.clear:after{ content: "."; display: block; height: 0; clear: both; visibility: hidden; }

.mobile-show {display: none;}
.hidden {display: none;}
.inline-flex {display: inline-flex;}

/***** Links *****/
a, a:link, a:visited{ color: #169; text-decoration: none; }
a:hover, a:active{ color: #c61a1a; text-decoration: underline;}
a img{ border: 0; }

a.issue.closed, a.issue.closed:link, a.issue.closed:visited { color: #999; text-decoration: line-through; }
a.project.closed, a.project.closed:link, a.project.closed:visited { color: #999; }
a.user.locked, a.user.locked:link, a.user.locked:visited {color: #999;}

#sidebar a.selected {line-height:1.7em; padding:1px 3px 2px 2px; margin-left:-2px; background-color:#9DB9D5; color:#fff; border-radius:2px;}
#sidebar a.selected:hover {text-decoration:none;}
#admin-menu a {line-height:1.7em;}
#admin-menu a.selected {padding-left: 20px !important; background-position: 2px 40%;}

a.collapsible {padding-left: 12px; }

a#toggle-completed-versions {color:#999;}

/***** Dropdown *****/
.drdn {position:relative;}
.drdn-trigger {
  box-sizing:border-box;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  cursor:pointer;
  user-select:none;
  -moz-user-select:none;
  -webkit-user-select:none;
}
.drdn-content {
  display:none;
  position:absolute;
  right:0px;
  top:25px;
  min-width:100px;
  background-color:#fff;
  border:1px solid #ccc;
  border-radius:4px;
  color:#555;
  z-index:99;
}
.drdn.expanded .drdn-content {display:block;}

.drdn-content .quick-search {margin:8px;}
.drdn-content .autocomplete {box-sizing: border-box; width:100% !important; height:28px;}
.drdn-content .autocomplete:focus {border-color:#5ad;}
.drdn-items {max-height:400px; overflow:auto;}
div + .drdn-items {border-top:1px solid #ccc;}
.drdn-items>* {
  display:block;
  border:1px solid #fff;
  overflow:hidden;
  text-overflow: ellipsis;
  white-space:nowrap;
  padding:4px 8px;
}
.drdn-items>a:hover {text-decoration:none;}
.drdn-items>*:focus {border:1px dotted #bbb;}

.drdn-items.selection>*:before {
  content:' ';
  display:inline-block;
  line-height:1em;
  width:1em;
  height:1em;
  margin-right:4px;
  font-weight:bold;
}
.drdn-items.selection>*.selected:before {
  content:"\2713 ";
}
.drdn-items.selection:empty {
  border: none;
}
.drdn-items>span {color:#999;}

.contextual .drdn-content {top:18px;}
.contextual .drdn-items {padding:2px; min-width: 160px;}
.contextual .drdn-items>a {padding: 5px 8px;}
.contextual .drdn-items>a.icon {padding-left: 24px; background-position-x: 4px;}
.contextual .drdn-items>a:hover {color:#2A5685; border:1px solid #628db6; background-color:#eef5fd; border-radius:3px;}

#project-jump.drdn {width:200px;display:inline-block;}
#project-jump .drdn-trigger {
  width:100%;
  height:24px;
  display:inline-block;
  padding:3px 18px 3px 6px;
  border-radius:3px;
  border:1px solid #ccc;
  margin:0 !important;
  vertical-align:middle;
  color:#555;
  background:#fff url(../images/arrow_down.png) no-repeat 97% 50%;
}
#project-jump .drdn.expanded .drdn-trigger {background-image:url(../images/arrow_up.png);}
#project-jump .drdn-content {width:280px;}
#project-jump .drdn-items>* {color:#555 !important;}
#project-jump .drdn-items>a:hover {background-color:#759FCF; color:#fff !important;}

/***** Tables *****/
table.list, .table-list { border: 1px solid #e4e4e4; width: 100%; margin-bottom: 4px; border-radius: 3px; border-spacing: 0; overflow: hidden;}
table.list th, .table-list-header { background-color:#EEEEEE; padding: 4px; white-space:nowrap; font-weight:bold; }
table.list td {text-align:center; vertical-align:middle; padding-right:10px;}
table.list td.id { width: 2%; text-align: center;}
table.list td.name, table.list td.description, table.list td.subject, table.list td.parent-subject, table.list td.comments, table.list td.roles, table.list td.attachments, table.list td.text,  table.list td.short_description {text-align: left;}

table.list td.attachments span {display: block; height: 16px;}
table.list td.attachments span a.icon-download {display: inline-block; visibility: hidden;}
table.list td.attachments span:hover a.icon-download {visibility: visible;}
table.list td.tick {width:15%}
table.list td.checkbox { width: 15px; padding: 2px 0 0 0; }
table.list .checkbox input {padding:0px; height: initial;}
table.list td.buttons, div.buttons { white-space:nowrap; text-align: right; }
table.list td.buttons a, div.buttons a { margin-right: 0.6em; }
table.list td.buttons a:last-child, div.buttons a:last-child { margin-right: 0; }
table.list td.buttons img, div.buttons img {vertical-align:middle;}
table.list td.reorder {width:15%; white-space:nowrap; text-align:center; }
table.list table.progress td {padding-right:0px;}
table.list caption { text-align: left; padding: 0.5em 0.5em 0.5em 0; }
table.list tr.overdue td.due_date  { color: #c22; }
#role-permissions-trackers table.list th {white-space:normal;}

.table-list-cell {display: table-cell; vertical-align: top; padding:2px; }
.table-list div.buttons {width: 15%;}

tr.project td.name a { white-space:nowrap; }
tr.project.closed, tr.project.archived { color: #aaa; }
tr.project.closed a, tr.project.archived a { color: #aaa; }

tr.issue { text-align: center; white-space: nowrap; }
tr.issue td.subject, tr.issue td.parent-subject, tr.issue td.category, td.assigned_to, td.last_updated_by, tr.issue td.string, tr.issue td.text, tr.issue td.list, tr.issue td.relations, tr.issue td.parent { white-space: normal; }
tr.issue td.relations { text-align: left; }
tr.issue td.done_ratio table.progress { margin-left:auto; margin-right: auto;}
tr.issue td.relations span {white-space: nowrap;}
table.issues td.block_column {color:#777; font-size:90%; padding:4px 4px 4px 24px; text-align:left; white-space:normal;}
table.issues td.block_column span {font-weight: bold; display: block; margin-bottom: 4px;}
table.issues td.block_column pre {white-space:normal;}

tr.idnt td.subject, tr.idnt td.name {background: url(../images/arrow_right.png) no-repeat 2px 50%;}
tr.idnt-1 td.subject, tr.idnt-1 td.name {padding-left: 24px; background-position: 8px 50%;}
tr.idnt-2 td.subject, tr.idnt-2 td.name {padding-left: 40px; background-position: 24px 50%;}
tr.idnt-3 td.subject, tr.idnt-3 td.name {padding-left: 56px; background-position: 40px 50%;}
tr.idnt-4 td.subject, tr.idnt-4 td.name {padding-left: 72px; background-position: 56px 50%;}
tr.idnt-5 td.subject, tr.idnt-5 td.name {padding-left: 88px; background-position: 72px 50%;}
tr.idnt-6 td.subject, tr.idnt-6 td.name {padding-left: 104px; background-position: 88px 50%;}
tr.idnt-7 td.subject, tr.idnt-7 td.name {padding-left: 120px; background-position: 104px 50%;}
tr.idnt-8 td.subject, tr.idnt-8 td.name {padding-left: 136px; background-position: 120px 50%;}
tr.idnt-9 td.subject, tr.idnt-9 td.name {padding-left: 152px; background-position: 136px 50%;}

table.issue-report {table-layout:fixed;}
.issue-report-graph {width: 75%; margin: 2em 0;}

tr.entry { border: 1px solid #f8f8f8; }
tr.entry td { white-space: nowrap; }
tr.entry td.filename {width:30%; text-align:left;}
tr.entry td.filename_no_report {width:70%; text-align:left;}
tr.entry td.size { text-align: right; font-size: 90%; }
tr.entry td.revision, tr.entry td.author { text-align: center; }
tr.entry td.age { text-align: right; }
tr.entry.file td.filename a { margin-left: 16px; }
tr.entry.file td.filename_no_report a { margin-left: 16px; }

tr span.expander, .gantt_subjects div > span.expander {background-position: 2px 50%; padding-left: 8px; margin-left: 0; cursor: pointer;}
.gantt_subjects div > span.expander {padding-left: 12px;}
.gantt_subjects div > span .icon-gravatar {float: none;}

tr.changeset { height: 20px }
tr.changeset ul, ol { margin-top: 0px; margin-bottom: 0px; }
tr.changeset td.revision_graph { width: 15%; background-color: #fffffb; }
tr.changeset td.author { text-align: center; width: 15%; white-space:nowrap;}
tr.changeset td.committed_on { text-align: center; width: 15%; white-space:nowrap;}

table.files tbody th {text-align:left;}
table.files tr.file td.filename { text-align: left; padding-left: 24px; }
table.files tr.file td.digest { font-size: 80%; }

table.members td.roles, table.memberships td.roles { width: 45%; }

table.messages td.last_message {text-align:left;}
tr.message { height: 2.6em; }
tr.message td.created_on { white-space: nowrap; }
tr.message td.last_message { font-size: 80%; white-space: nowrap; }
tr.message.sticky td.subject { font-weight: bold; }

body.avatars-on #replies .message.reply {padding-left: 32px;}
#replies .reply:target h4.reply-header {background-color:#DDEEFF;}
#replies h4 img.gravatar {margin-left:-32px;}

tr.version.closed, tr.version.closed a { color: #999; }
tr.version td.name { padding-left: 20px; }
tr.version td.date, tr.version td.status, tr.version td.sharing { text-align: center; white-space:nowrap; }

tr.member td.icon-user, #principals_for_new_member .icon-user {background:transparent;}

tr.user td {width:13%;white-space: nowrap;}
td.username, td.firstname, td.lastname, td.email {text-align:left !important;}
tr.user td.email { width:18%; }
tr.user.locked, tr.user.registered { color: #aaa; }
tr.user.locked a, tr.user.registered a { color: #aaa; }

table.permissions td.role {color:#999;font-size:90%;font-weight:normal !important;text-align:center;vertical-align:bottom;}
table.permissions tr.group>td:nth-of-type(1),
table.tracker-summary tr.group>td:nth-of-type(1) {font-weight: bold;}

tr.wiki-page-version td.updated_on, tr.wiki-page-version td.author {text-align:center;}

tr.time-entry { text-align: center; white-space: nowrap; }
tr.time-entry td.issue, tr.time-entry td.comments, tr.time-entry td.subject, tr.time-entry td.activity, tr.time-entry td.project { text-align: left; white-space: normal; }
td.hours { text-align: right; font-weight: bold; padding-right: 0.5em; }
td.hours .hours-dec { font-size: 0.9em; }

table.plugins td { vertical-align: middle; }
table.plugins td.configure { text-align: right; padding-right: 1em; }
table.plugins span.name { font-weight: bold; display: block; margin-bottom: 6px; }
table.plugins span.description { display: block; font-size: 0.9em; }
table.plugins span.url { display: block; font-size: 0.9em; }

table.list.enumerations {table-layout: fixed; margin-bottom: 2em;}

tr.group td { padding: 0.8em 0 0.5em 0.3em; border-bottom: 1px solid #ccc; text-align:left; background-color: #fff;}
tr.group span.count {top:-1px;}
tr.group span.name {font-weight:bold;}
tr.group span.totals {color: #aaa; font-size: 80%;}
tr.group span.totals .value {font-weight:bold; color:#777;}
tr.group a.toggle-all { color: #aaa; font-size: 80%; display:none; float:right; margin-right:4px;}
tr.group:hover a.toggle-all { display:inline;}
a.toggle-all:hover {text-decoration:none;}

table.list tbody tr.group:hover { background-color:inherit; }

table td {padding:2px;}
table p {margin:0;}

table.list:not(.odd-even) tbody tr:nth-child(odd), .odd, #issue-changesets div.changeset:nth-child(odd) { background-color:#f6f7f8; }
table.list:not(.odd-even) tbody tr:nth-child(even), .even, #issue-changesets div.changeset:nth-child(even) { background-color: #fff; }
table.list:not(.odd-even) tbody tr:nth-child(odd):hover, .odd:hover, #issue-changesets div.changeset:nth-child(odd):hover,
table.list:not(.odd-even) tbody tr:nth-child(even):hover, .even:hover, #issue-changesets div.changeset:nth-child(even):hover { background-color:#ffffdd; }

tr.builtin td.name {font-style:italic;}

a.sort { padding-right: 16px; background-position: 100% 50%; background-repeat: no-repeat; }

table.boards a.board { background: url(../images/comment.png) no-repeat 0% 50%; padding-left: 20px; }
table.boards td.last-message {text-align:left;font-size:80%;}

div.table-list.boards .table-list-cell.name {width: 30%;}

#query_form_content {font-size:90%;}
#query_form_with_buttons > p.contextual {font-size:12px; margin:12px 0px;}

.query_sort_criteria_count {
  display: inline-block;
  min-width: 1em;
}

.query-columns>span {
  display:inline-block;
  height:100%;
  vertical-align: middle;
}
.query-columns label {
  display:block;
}
.query-columns .buttons input[type=button] {
  width:35px;
  display:block;
}
.query-columns select {
  min-width:150px;
}

.query-totals {text-align:right; margin-top:-2.3em;}
.query-totals>span:not(:first-child) {margin-left:0.6em;}
.query-totals .value {font-weight:bold;}
body.controller-timelog .query-totals {margin-top:initial;}

td.center {text-align:center;}

#watchers select {width: 95%; display: block;}
#watchers img.gravatar {margin: 0 4px 2px 0;}
#users_for_watcher img.gravatar {padding-bottom: 2px; margin-right: 4px;}

span#watchers_inputs {overflow:auto; display:block;}
span.search_for_watchers {display:block;}
span.search_for_watchers, span.add_attachment {font-size:80%; line-height:2.5em;}
span.add_attachment a {padding-left:16px; background: url(../images/bullet_add.png) no-repeat 0 50%; }

input:disabled, select:disabled, textarea:disabled {
  cursor: not-allowed;
  color: graytext;
  background-color: #ebebe4;
}


.highlight { background-color: #FCFD8D;}
.highlight.token-1 { background-color: #faa;}
.highlight.token-2 { background-color: #afa;}
.highlight.token-3 { background-color: #aaf;}

.box{
  padding:6px;
  margin-bottom: 10px;
  background-color:#f6f6f6;
  color:#505050;
  line-height:1.5em;
  border: 1px solid #e4e4e4;
  word-wrap: break-word;
  border-radius: 3px;
}

div.square {
  border: 1px solid #999;
  float: left;
  margin: .3em .4em 0 .4em;
  overflow: hidden;
  width: .6em; height: .6em;
}
.contextual {float:right; white-space: nowrap; line-height:1.4em;margin:5px 0px; padding-left: 10px; font-size:0.9em;}
.contextual .icon {padding-top: 2px; padding-bottom: 3px;}
.contextual input, .contextual select {font-size:0.9em;}
.message .contextual { margin-top: 0; }

.splitcontent {overflow: auto; display: flex; flex-wrap: wrap;}
.splitcontentleft {flex: 1; margin-right: 5px;}
.splitcontentright {flex: 1; margin-left: 5px;}
.splitcontenttop {flex: 2; flex-basis: 100%;}

form {display: inline;}
input, select, button {vertical-align: middle; margin-top: 1px; margin-bottom: 1px; height: 24px; padding: 0 7px;}
input, select, textarea, button { color: #333; background-color: #fff; border:1px solid #ccc; border-radius:3px; box-sizing: border-box;}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  background-color: #fff;
  background-image: url(../images/arrow_down.png);
  background-repeat: no-repeat;
  background-position: calc(100% - 7px) 50%;
  padding-right: 20px;
}
input[type="file"] {border: 0; padding-left: 0; padding-right: 0; height: initial; background-color: initial; }
input[type="submit"], button[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
  background-color: #fff;
  height: 28px;
  -webkit-transition: background-color 100ms linear;
  -moz-transition: background-color 100ms linear;
  -o-transition: background-color 100ms linear;
  transition: background-color 100ms linear;
}
input[type="submit"]:hover, button[type="submit"]:hover {
  background-color: #ddd;
}

input[type="text"]:focus, input[type="text"]:active,
input[type="password"]:focus, input[type="password"]:active,
input[type="date"]:focus, input[type="date"]:active,
input[type="number"]:focus, input[type="number"]:active,
select:focus, select:active,
textarea:focus, textarea:active {
  border: 1px solid #5ad;
  outline: none;
}

select[multiple=multiple] {background: #fff; padding-right: initial; height: auto;}
fieldset {border: 1px solid #e4e4e4; margin:0; min-width: inherit;}
legend {color: #333;}
hr { width: 100%; height: 1px; background: #ccc; border: 0;}
blockquote { font-style: italic; border-left: 3px solid #e0e0e0; padding-left: 0.6em; margin-left: 0;}
blockquote blockquote { margin-left: 0;}
abbr, span.field-description[title] { border-bottom: 1px dotted #aaa; cursor: help; }
textarea.wiki-edit {width:99%; resize:vertical; box-sizing: border-box;}
body.textarea-monospace textarea.wiki-edit {font-family: Consolas, Menlo, "Liberation Mono", Courier, monospace; font-size: 12px;}
body.textarea-proportional textarea.wiki-edit {font-family: Verdana, sans-serif; font-size: 12px;}
li p {margin-top: 0;}
div.issue {background:#ffffdd; padding:6px; margin-bottom:6px; border: 1px solid #d7d7d7; border-radius:3px;}
p.breadcrumb { font-size: 0.9em; margin: 4px 0 4px 0;}
p.subtitle { font-size: 0.9em; margin: -6px 0 12px 0; font-style: italic; }
p.footnote { font-size: 0.9em; margin-top: 0px; margin-bottom: 0px; }
.wiki-class-ltr {direction:ltr !important;}
.wiki-class-rtl {direction:rtl !important;}

div.issue div.subject div div { padding-left: 16px; }
div.issue div.subject p {margin: 0; margin-bottom: 0.1em; font-size: 90%; color: #999;}
div.issue div.subject>div>p { margin-top: 0.5em; }
div.issue div.subject h3 {margin: 0; margin-bottom: 0.1em;}
div.issue p.author {margin-top:0.5em;}
div.issue span.private, div.journal span.private {font-size: 60%;}
div.issue .next-prev-links {color:#999;}
div.issue .attributes {margin-top: 2em;}
div.issue .attributes .attribute {padding-left:180px; clear:left; min-height: 1.8em;}
div.issue .attributes .attribute .label {width: 170px; margin-left:-180px; font-weight:bold; float:left;  overflow:hidden; text-overflow: ellipsis;}
div.issue .attribute .value {overflow:auto; text-overflow: ellipsis;}
div.issue.overdue .due-date .value { color: #c22; }
body.controller-issues h2.inline-flex {padding-right: 0}

#issue_tree table.issues, #relations table.issues { border: 0; }
#issue_tree td.checkbox, #relations td.checkbox {display:none;}
#issue_tree td.subject, #relations td.subject {width: 50%;}
#issue_tree td.buttons, #relations td.buttons {padding:0;}
#issue_tree .issues-stat {font-size: 80%}
#issue_tree .issues-stat .badge {bottom: initial;}

#trackers_description {display:none;}
#trackers_description dt {font-weight: bold; text-decoration: underline;}
#trackers_description dd {margin: 0; padding: 0 0 1em 0;}

#issue-form .assign-to-me-link { padding-left: 5px; }

fieldset.collapsible {border-width: 1px 0 0 0;}
fieldset.collapsible>legend { cursor:pointer; padding-left: 18px; background-position: 4px;}

fieldset#date-range p { margin: 2px 0 2px 0; }
fieldset#filters table { border-collapse: collapse; }
fieldset#filters table td { padding: 0; vertical-align: middle; }
fieldset#filters tr.filter { height: 2.1em; }
fieldset#filters td.field { width:230px; }
fieldset#filters td.operator { width:130px; }
fieldset#filters td.operator select {max-width:120px;}
fieldset#filters td.values { white-space:nowrap; }
fieldset#filters td.values select {min-width:130px;}

#filters-table {width:60%; float:left;}
.add-filter {width:35%; float:right; text-align: right; vertical-align: top;}

#issue_is_private_wrap {float:right; margin-right:1em;}
.toggle-multiselect { margin-right:5px; cursor:pointer;}
.buttons { font-size: 0.9em; margin-bottom: 1.4em; margin-top: 1em; }
.buttons .icon {padding-bottom:3px; padding-top:1px;}

div#issue-changesets {float:right; width:45%; margin-left: 1em; margin-bottom: 1em; background: #fff; padding-left: 1em; font-size: 90%;}
div#issue-changesets div.changeset {border-bottom: 1px solid #ddd; padding: 4px;}
div#issue-changesets p { margin-top: 0; margin-bottom: 1em;}
.changeset-comments {margin-bottom:1em;}

div.journal .contextual {margin-top: 0;}
div.journal.private-notes .wiki {border-left:2px solid #d22; padding-left:4px; margin-left:-6px;}
div.journal ul.details, ul.revision-info {color:#959595; margin-bottom: 1.5em;}
div.journal ul.details a, ul.revision-info a {color:#70A7CD;}
div.journal ul.details a:hover, ul.revision-info a:hover {color:#D14848;}
body.avatars-on div.journal {padding-left:32px;}
div.journal h4 img.gravatar {margin-left:-32px;}

#history .tab-content {
  padding: 0 6px;
  margin-bottom: 10px;
  border-right: 1px solid #d7d7d7;
  border-bottom: 1px solid #d7d7d7;
  border-left: 1px solid #d7d7d7;
  border-radius: 0 0 3px 3px / 0 0 3px 3px;
}

#history div:target h4.note-header {background-color:#DDEEFF;}
#history p.nodata {display: none;}

div#activity dl, #search-results { margin-left: 2em; }
div#activity dd, #search-results dd { margin-bottom: 1em; padding-left: 18px; font-size: 0.9em; }
div#activity dt.me .time { border-bottom: 1px solid #999; }
div#activity dt .time { color: #777; font-size: 80%; }
div#activity dd .description, #search-results dd .description { font-style: italic; }
div#activity span.project:after, #search-results span.project:after { content: " -"; }
div#activity dd span.description, #search-results dd span.description { display:block; color: #808080; }
div#activity dt.grouped {margin-left:5em;}
div#activity dd.grouped {margin-left:9em;}
div#activity dt.icon {background-position: 0 10px !important;}
div#activity h3 {
  padding: 5px;
  background-color: #eeeeee;
}
div#activity dt {
  padding-top: 10px;
  border-top: 1px solid #eeeeee;
}
div#activity dl dt:first-child {
  border: 0px;
}

#search-results dd { margin-bottom: 1em; padding-left: 20px; margin-left:0px; }

div#search-results-counts {float:right;}
div#search-results-counts ul { margin-top: 0.5em; }
div#search-results-counts  li { list-style-type:none; float: left; margin-left: 1em; }

div#roadmap .related-issues { margin-bottom: 1em; }
div#roadmap .related-issues td.checkbox { display: none; }
div#roadmap .related-issues td.assigned_to { width:1px; white-space:nowrap; padding: 0; }
div#roadmap .related-issues td.assigned_to img { padding-left: 4px; padding-right: 4px;}
div#roadmap .wiki h1:first-child { display: none; }
div#roadmap .wiki h1 { font-size: 120%; }
div#roadmap .wiki h2 { font-size: 110%; }
div#roadmap h2, div#roadmap h3 {padding-right: 0;}
body.controller-versions.action-show div#roadmap .related-issues {width:70%;}

div#version-summary { float:right; width:28%; margin-left: 16px; margin-bottom: 16px; background-color: #fff; }
div#version-summary fieldset { margin-bottom: 1em; }
div#version-summary fieldset.time-tracking table { width:100%; }
div#version-summary th, div#version-summary td.total-hours { text-align: right; }

table#time-report td.hours, table#time-report th.period, table#time-report th.total { text-align: right; padding-right: 0.5em; }
table#time-report tbody tr.subtotal { font-style: italic; color:#777;}
table#time-report tbody tr.subtotal td.hours { color:#b0b0b0; }
table#time-report tbody tr.total { font-weight: bold; background-color:#EEEEEE; border-top:1px solid #e4e4e4;}
table#time-report .hours-dec { font-size: 0.9em; }

div.wiki-page .contextual a {opacity: 0.4}
div.wiki-page .contextual a:hover {opacity: 1}

div.wiki a:target + h1, div.wiki a:target + h2, div.wiki a:target + h3, div.wiki a:target + h4, div.wiki a:target + h5, div.wiki a:target + h6 {
  background-color:#DDEEFF;
}

.wiki-update-info {text-align:right; color:#666; font-size:90%;}

form .attributes select { width: 60%; }
form .attributes select + a.icon-only { vertical-align: middle; margin-left: 4px; }
input#issue_subject, input#document_title { width: 99%; }
select#issue_done_ratio { width: 95px; }

ul.projects {margin:0; padding-left:1em;}
ul.projects ul {padding-left:1.6em;}
ul.projects.root {margin:0; padding:0;}
ul.projects li.root, ul.projects li.child {list-style-type:none;}
ul.projects li.root div.archived, ul.projects li.child div.archived {color: #aaa;}
ul.projects div.description li {list-style-type:initial;}

#projects-index {
  column-count: auto;
  column-width: 400px;
  -webkit-column-count: auto;
  -webkit-column-width: 400px;
  -webkit-column-gap : 0.5rem;
  -moz-column-count: auto;
  -moz-column-width: 400px;
  -moz-column-gap : 0.5rem;
  margin-bottom: 1.2em;
}
#projects-index li.root ul.projects { border-left: 3px solid #e0e0e0; padding-left:1em;}
#projects-index ul.projects li.root {
  margin-bottom: 1em;
  padding: 15px 20px;
  border: 1px solid #d7d7d7;
  border-radius: 3px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  break-inside: avoid-column;
  -webkit-break-inside: avoid-column;
  -moz-break-inside: avoid-column;
  page-break-inside:avoid;
  -webkit-column-break-inside: avoid;
  -moz-column-break-inside: avoid;
  width: 100%;
}
#projects-index ul.projects li.child {margin-top: 1em;}
#projects-index ul.projects div.root a.project { font-family: "Trebuchet MS", Verdana, sans-serif; font-weight: bold; font-size: 16px; margin: 0 0 10px 0; }
#projects-index ul.projects div.description {
  padding-top: 0.5em;
}
#projects-index a.icon-user, a.icon-bookmarked-project {padding-left:0; padding-right:20px; background-position:98% 50%;}
#projects-index a.icon-user.icon-bookmarked-project {
  background-image: url(../images/tag_blue.png), url(../images/user.png);
  background-position: bottom 0px right 0px, bottom 0px right 20px;
  padding-right: 40px;
  padding-top: 4px;
}

#notified-projects>ul, #tracker_project_ids>ul, #custom_field_project_ids>ul {max-height:250px; overflow-y:auto;}

ul.subprojects {list-style: none; display: inline-block; padding: 0; margin: 0;}
ul.subprojects li {float: left;}
ul.subprojects li:not(:last-child)::after {content: ', '; white-space: pre;}

#related-issues li img {vertical-align:middle;}

ul.properties {padding:0; font-size: 0.9em; color: #777;}
ul.properties li {list-style-type:none;}
ul.properties li span {font-style:italic;}

.total-hours { font-size: 110%; font-weight: bold; }
.total-hours span.hours-int { font-size: 120%; }

.autoscroll {overflow-x: auto; padding:1px; margin-bottom: 1.2em; position: relative;}
#user_login, #user_firstname, #user_lastname, #user_mail, #my_account_form select, #user_form select, #user_identity_url { width: 90%; }

#workflow_copy_form select { width: 200px; }
table.transitions td.enabled {background: #bfb;}
#workflow_form table select {font-size:90%; max-width:100px;}
table.fields_permissions td.readonly {background:#ddd;}
table.fields_permissions td.required {background:#d88;}

select.expandable {vertical-align:top;}

textarea#custom_field_possible_values {width: 95%; resize:vertical}
textarea#custom_field_default_value {width: 95%; resize:vertical}
.sort-handle {display:inline-block; vertical-align:middle; cursor: move;}

input#content_comments {width: 99%}

span.pagination {margin-left:3px; color:#888; display:block;}
.pagination ul.pages {
  margin: 0 5px 0 0;
  padding: 0;
  display: inline;
}
.pagination ul.pages li {
  display: inline-block;
  padding: 0;
  border: 1px solid #ddd;
  margin-left: -1px;
  line-height: 2em;
  margin-bottom: 1em;
  white-space: nowrap;
  text-align: center;
}
.pagination ul.pages li a,
.pagination ul.pages li span {
  padding: 3px 8px;
}
.pagination ul.pages li:first-child {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.pagination ul.pages li:last-child {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.pagination ul.pages li.current {
  color: white;
  background-color: #628DB6;
  border-color: #628DB6;
}
.pagination ul.pages li.page:hover {
  background-color: #ddd;
}
.pagination ul.pages li.page a:hover,
.pagination ul.pages li.page a:active {
  color: #169;
  text-decoration: inherit;
}
.pagination .per-page span.selected {
  font-weight: bold;
}
span.pagination>span {white-space:nowrap;}
.controller-attachments.action-show span.pagination{
  display: block;
  margin-top: 1.2em;
}

#search-form fieldset p {margin:0.2em 0;}
#csv-export-options fieldset {padding: 0;}

/***** Tabular forms ******/
.tabular p{
  margin: 0;
  padding: 3px 0 3px 0;
  padding-left: 180px; /* width of left column containing the label elements */
  min-height: 2em;
  clear:left;
}
html>body .tabular p {overflow:hidden;}

.tabular input, .tabular select {max-width:95%}
.tabular textarea {width:95%; resize:vertical;}
input#twofa_code, img#twofa_code { width: 140px; }
ul.twofa_backup_codes { list-style-type: none; padding: 0; display: inline-block; }
ul.twofa_backup_codes li { float: left; }
ul.twofa_backup_codes li:nth-child(odd) { float: left; clear: left; padding-right: 4em; }

.tabular label{
  font-weight: bold;
  float: left;
  text-align: right;
  /* width of left column */
  margin-left: -180px;
  /* width of labels. Should be smaller than left column to create some right margin */
  width: 175px;
  line-height: 24px;
}

.tabular label.floating{
  font-weight: normal;
  margin-left: 0px;
  text-align: left;
  width: 270px;
}

label.block {
  display: block;
  width: auto !important;
}

.tabular label.block{
  font-weight: normal;
  margin-left: 0px !important;
  text-align: left;
  float: none;
}

.tabular label.inline{
  font-weight: normal;
  float:none;
  margin-left: 5px !important;
  width: auto;
}

.tabular label.error {
  color: #bb0000;
}

.tabular label.error + * {
  border: 1px solid #bb0000;
}

label.no-css {
  font-weight: inherit;
  float:none;
  text-align:left;
  margin-left:0px;
  width:auto;
}
input#time_entry_comments { width: 90%;}
input#months { width: 46px; }

.jstBlock .jstTabs, .jstBlock .wiki-preview { width: 99%; }

.jstBlock .jstTabs { padding-right: 6px; }
.jstBlock .wiki-preview { padding: 2px; }
.jstBlock .wiki-preview p:first-child { padding-top: 0 !important; margin-top: 0 !important;}
.jstBlock .wiki-preview p:last-child { padding-bottom: 0 !important; margin-bottom: 0 !important;}

.tabular .wiki-preview, .tabular .jstTabs {width: 95%;}
.tabular.settings .wiki-preview, .tabular.settings .jstTabs { width: 99%; }
.tabular.settings .wiki-preview p {padding-left: 0 !important}
.tabular .wiki-preview p {
  min-height: initial;
  padding: 0;
  padding-top: 1em !important;
  padding-bottom: 1em !important;
  overflow: initial;
}

.tabular.settings p { padding-left: 300px; }
.tabular.settings label{ margin-left: -300px; width: 295px; }
.tabular.settings textarea, .tabular.settings .wiki-preview, .tabular.settings .jstTabs { width: 99%; }

.settings.enabled_scm table {width:100%}
.settings.enabled_scm td.scm_name{ font-weight: bold; }

fieldset.settings label { display: block; }
fieldset#notified_events .parent { padding-left: 20px; }

span.required {color: #bb0000;}
.summary {font-style: italic;}

.check_box_group {
  display:block;
  width:95%;
  max-height:120px;
  overflow-y:auto;
  padding:2px 4px 4px 2px;
  background:#fff;
  border:1px solid #9EB1C2;
  border-radius:2px
}
.check_box_group label {
  font-weight: normal;
  margin-left: 0px !important;
  text-align: left;
  float: none;
  display: block;
  width: auto;
}
.check_box_group.bool_cf {border:0; background:inherit;}
.check_box_group.bool_cf label {display: inline;}

.attachments_fields input.description, #existing-attachments input.description {margin-left:4px; width:340px;}
.attachments_fields>span, #existing-attachments>span {display:block; white-space:nowrap;}
.attachments_fields input.filename, #existing-attachments .filename {border:0; width:250px; color:#555; background-color:inherit; }
.tabular input.filename {max-width:75% !important;}
.attachments_fields input.filename {height:1.8em;}
.attachments_fields .ajax-waiting input.filename {background:url(../images/hourglass.png) no-repeat 0px 50%;}
.attachments_fields .ajax-loading input.filename {background:url(../images/loading.gif) no-repeat 0px 50%;}
.attachments_fields div.ui-progressbar { width: 100px; height:14px; margin: 2px 0 -5px 8px; display: inline-block; }

a.remove-upload:hover {text-decoration:none !important;}
.existing-attachment.deleted .filename {text-decoration:line-through; color:#999 !important;}

div.fileover, p.custom-field-filedroplistner.fileover { background-color: lavender; }

div.attachments p { margin:4px 0 2px 0; }
div.attachments img { vertical-align: middle; }
div.attachments span.author { font-size: 0.9em; color: #888; }

div.thumbnails {margin:0.6em;}
div.thumbnails div {background:#fff;border:2px solid #ddd;display:inline-block;margin-right:2px;}
div.thumbnails img {margin: 3px; vertical-align: middle;}
#history div.thumbnails {margin-left: 2em;}

p.other-formats { text-align: right; font-size:0.9em; color: #666; }
.other-formats span + span:before { content: "| "; }

a.atom { background: url(../images/feed.png) no-repeat 1px 50%; padding: 2px 0px 3px 16px; }

em.info {font-style:normal;display:block;font-size:90%;color:#888;}
em.info.error {padding-left:20px; background:url(../images/exclamation.png) no-repeat 0 50%;}

textarea.text_cf {width:95%; resize:vertical;}
input.string_cf, input.link_cf {width:95%;}
select.bool_cf {width:auto !important;}

#tab-content-modules fieldset p {margin:3px 0 4px 0;}

#tab-content-users .splitcontentleft {width: 64%;}
#tab-content-users .splitcontentright {width: 34%;}
#tab-content-users fieldset {padding:1em; margin-bottom: 1em;}
#tab-content-users fieldset label {display: block;}
#tab-content-users #principals {max-height: 400px; overflow: auto;}

#users_for_watcher {height: 200px; overflow:auto;}
#users_for_watcher label {display: block;}

input#principal_search, input#user_search {width:90%}
.roles-selection label {display:inline-block; width:210px;}

input.autocomplete {
  background: #fff url(../images/magnifier.png) no-repeat 2px 50%; padding-left:20px !important;
}
input.autocomplete.ajax-loading {
  background-image: url(../images/loading.gif);
}

.role-visibility {padding-left:2em;}

.objects-selection {
  height: 300px;
  overflow: auto;
  margin-bottom: 1em;
}

.objects-selection label {
  display: block;
}

.objects-selection>div, #user_group_ids {
  column-count: auto;
  column-width: 200px;
  -webkit-column-count: auto;
  -webkit-column-width: 200px;
  -webkit-column-gap : 0.5rem;
  -webkit-column-rule: 1px solid #ccc;
  -moz-column-count: auto;
  -moz-column-width: 200px;
  -moz-column-gap : 0.5rem;
  -moz-column-rule: 1px solid #ccc;
}

/***** Flash & error messages ****/
#errorExplanation, div.flash, .nodata, .warning, .conflict {
  padding: 6px 4px 6px 30px;
  margin-bottom: 12px;
  font-size: 1.1em;
  border: 1px solid;
  border-radius: 3px;
}

div.flash {margin-top: 8px;}

div.flash.error, #errorExplanation {
  background: url(../images/exclamation.png) 8px 50% no-repeat;
  background-color: #ffe3e3;
  border-color: #d88;
  color: #880000;
}

div.flash.notice {
  background: url(../images/true.png) 8px 5px no-repeat;
  background-color: #dfffdf;
  border-color: #9fcf9f;
  color: #005f00;
}

div.flash.warning, .conflict {
  background: url(../images/warning.png) 8px 5px no-repeat;
  background-color: #F3EDD1;
  border-color: #eadbbc;
  color: #A6750C;
  text-align: left;
}

.nodata, .warning {
  text-align: center;
  background-color: #F3EDD1;
  border-color: #eadbbc;
  color: #A6750C;
}

#errorExplanation ul { font-size: 0.9em;}
#errorExplanation h2, #errorExplanation p { display: none; }

.conflict-details {font-size:80%;}

/***** Ajax indicator ******/
#ajax-indicator {
  position: absolute; /* fixed not supported by IE */
  background-color:#eee;
  border: 1px solid #bbb;
  top:35%;
  left:40%;
  width:20%;
  font-weight:bold;
  text-align:center;
  padding:0.6em;
  z-index:100;
  opacity: 0.5;
}

html>body #ajax-indicator { position: fixed; }

#ajax-indicator span {
  background-position: 0% 40%;
  background-repeat: no-repeat;
  background-image: url(../images/loading.gif);
  padding-left: 26px;
  vertical-align: bottom;
}

/***** Calendar *****/
table.cal {width: 100%; margin: 0 0 6px 0; border: 1px solid #c0c0c0; border-spacing: 0; border-radius: 3px;}
table.cal thead th {width: 14%; background-color:#EEEEEE; padding: 4px; }
table.cal thead th.week-number {width: auto;}
table.cal tbody tr {height: 100px;}
table.cal td .icon {padding-top: 2px; padding-bottom: 3px;}
table.cal td {border: 1px solid #d7d7d7; vertical-align: top; font-size: 0.9em; border-bottom: 0; border-right: 0;}
table.cal td.week-number { background-color:#EEEEEE; padding: 4px; border:none; font-size: 1em;}
table.cal td p.day-num {font-size: 1.1em; text-align:right;}
table.cal td.odd p.day-num {color: #bbb;}
table.cal td.today {background:#ffffdd;}
table.cal td.today p.day-num {font-weight: bold;}
table.cal td.nwday:not(.odd) {background-color:#f1f1f1;}
table.cal .starting a.issue, p.cal.legend .starting {background: url(../images/bullet_go.png) no-repeat -1px -2px; padding-left:16px;}
table.cal .ending a.issue, p.cal.legend .ending {background: url(../images/bullet_end.png) no-repeat -1px -2px; padding-left:16px;}
table.cal .starting.ending a.issue, p.cal.legend .starting.ending {background: url(../images/bullet_diamond.png) no-repeat -1px -2px; padding-left:16px;}
p.cal.legend span {display:block;}

/***** Tooltips ******/
.tooltip{position:relative;z-index:24;}
.tooltip:hover{z-index:25;color:#000;}
.tooltip span.tip{display: none; text-align:left;}
.tooltip span.tip a { color: #169 !important; }

.tooltip span.tip img.gravatar {
  float: none;
  margin: 0;
}

div.tooltip:hover span.tip{
  display:block;
  position:absolute;
  top:12px; width:270px;
  border:1px solid #555;
  background-color:#fff;
  padding: 4px;
  font-size: 0.8em;
  color:#505050;
}

table.cal div.tooltip:hover span.tip {
  top: 25px;
}

img.ui-datepicker-trigger {
  cursor: pointer;
  vertical-align: middle;
  margin-left: 4px;
}

/***** Progress bar *****/
table.progress {
  border-collapse: collapse;
  border-spacing: 0pt;
  empty-cells: show;
  text-align: center;
  float:left;
  margin: 1px 6px 1px 0px;
  width:80px;
}

table.progress td { height: 1em; }
table.progress td.closed { background: #BAE0BA none repeat scroll 0%; }
table.progress td.done { background: #D3EDD3 none repeat scroll 0%; }
table.progress td.todo { background: #eee none repeat scroll 0%; }
p.percent {font-size: 80%; margin:0;}
p.progress-info {clear: left; font-size: 80%; margin-top:-4px; color:#777;}

.version-overview table.progress {width:40em;}
.version-overview table.progress td { height: 1.2em; }

/***** Tabs *****/
#content .tabs {height: 2.6em; margin-bottom:1.2em; position:relative; overflow:hidden;}
#content .tabs ul {margin:0; position:absolute; bottom:0; padding-left:0.5em; min-width: 2000px; width: 100%;  border-bottom: 1px solid #bbbbbb;}
#content .tabs ul li {
  float:left;
  list-style-type:none;
  white-space:nowrap;
  margin-right:4px;
  position:relative;
  margin-bottom:-1px;
}
#content .tabs ul li a{
  display:block;
  font-size: 0.9em;
  text-decoration:none;
  line-height:1.3em;
  padding:4px 6px 4px 6px;
  border: 1px solid #ccc;
  border-bottom: 1px solid #bbbbbb;
  color:#999;
  font-weight:bold;
  border-top-left-radius:3px;
  border-top-right-radius:3px;
}

#content .tabs ul li a:hover {
  color:#777;
  text-decoration:none;
}

#content .tabs ul li a.selected {
  background-color: #fff;
  border: 1px solid #bbbbbb;
  border-bottom: 1px solid #fff;
  color:#444;
}

#content .tabs ul li a.selected:hover {background-color: #fff;}

div.tabs-buttons { position:absolute; right: 0; width: 54px; height: 24px; background: white; bottom: 0; border-bottom: 1px solid #bbbbbb; }

button.tab-left, button.tab-right {
  font-size: 0.9em;
  cursor: pointer;
  height:24px;
  border: 1px solid #ccc;
  border-bottom: 1px solid #bbbbbb;
  position:absolute;
  padding:4px;
  width: 24px;
  bottom: -1px;
}
button.tab-left:hover, button.tab-right:hover {
  background-color: #f5f5f5;
}
button.tab-left:focus, button.tab-right:focus {
  outline: 0;
}

button.tab-left {
  right: 28px;
  background: #eeeeee url(../images/arrow_left.png) no-repeat 50% 50%;
  border-top-left-radius:3px;
}

button.tab-right {
  right: 4px;
  background: #eeeeee url(../images/arrow_right.png) no-repeat 50% 50%;
  border-top-right-radius:3px;
}

button.tab-left.disabled, button.tab-right.disabled {
  background-color: #ccc;
  cursor: unset;
}

/***** Diff *****/
.diff_out { background: #fcc; }
.diff_out span { background: #faa; }
.diff_in { background: #cfc; }
.diff_in span { background: #afa; }

.text-diff {
  padding: 1em;
  background-color:#f6f6f6;
  color:#505050;
  border: 1px solid #e4e4e4;
  white-space: pre-wrap;
}

/***** Wiki *****/
div.wiki table {
  border-collapse: collapse;
  margin-bottom: 1em;
}

div.wiki table, div.wiki td, div.wiki th {
  border: 1px solid #bbb;
  padding: 4px;
}

div.wiki .wiki-class-noborder, div.wiki .wiki-class-noborder td, div.wiki .wiki-class-noborder th {border:0;}

div.wiki .external {
  background-position: 0% 60%;
  background-repeat: no-repeat;
  padding-left: 12px;
  background-image: url(../images/external.png);
}

div.wiki a {word-wrap: break-word;}
div.wiki a.new {color: #b73535;}

div.wiki ul, div.wiki ol {margin-bottom:1em;}
div.wiki li>ul, div.wiki li>ol {margin-bottom: 0;}

div.wiki pre {
  margin: 1em 1em 1em 1.6em;
  padding: 8px;
  background-color: #fafafa;
  border: 1px solid #e2e2e2;
  border-radius: 3px;
  width:auto;
  overflow-x: auto;
  overflow-y: hidden;
}

div.wiki *:not(pre)>code, div.wiki>code {
  background: rgba(62, 91, 118, 0.08);
  padding: 0.1em 0.1em;
  border-radius: 0.1em;
}

div.wiki ul.toc {
  background-color: #ffffdd;
  border: 1px solid #e4e4e4;
  padding: 4px;
  line-height: 1.2em;
  margin-bottom: 12px;
  margin-right: 12px;
  margin-left: 0;
  display: table
}
* html div.wiki ul.toc { width: 50%; } /* IE6 doesn't autosize div */

div.wiki ul.toc.right { float: right; margin-left: 12px; margin-right: 0; width: auto; }
div.wiki ul.toc.left  { float: left; margin-right: 12px; margin-left: 0; width: auto; }
div.wiki ul.toc ul { margin: 0; padding: 0; }
div.wiki ul.toc li {list-style-type:none; margin: 0; font-size:12px;}
div.wiki ul.toc>li:first-child {margin-bottom: .5em; color: #777;}
div.wiki ul.toc li li {margin-left: 1.5em; font-size:10px;}
div.wiki ul.toc a {
  font-size: 0.9em;
  font-weight: normal;
  text-decoration: none;
  color: #606060;
}
div.wiki ul.toc a:hover { color: #c61a1a; text-decoration: underline;}

a.wiki-anchor { display: none; margin-left: 6px; text-decoration: none; }
a.wiki-anchor:hover { color: #aaa !important; text-decoration: none; }
h1:hover a.wiki-anchor, h2:hover a.wiki-anchor, h3:hover a.wiki-anchor, h4:hover a.wiki-anchor, h5:hover a.wiki-anchor, h6:hover a.wiki-anchor { display: inline; color: #ddd; }

div.wiki img {vertical-align:middle; max-width:100%;}

/***** My page layout *****/
.block-receiver {
  border:1px dashed #fff;
  padding: 15px 0 0 0;
}
.dragging .block-receiver {
  border:1px dashed #777;
  margin-bottom: 20px;
}
.mypage-box {
  border:1px solid #ddd;
  padding:8px;
  margin:0 0 20px 0;
  color:#505050;
  line-height:1.5em;
  border-radius: 3px;
}

.mypage-box>.contextual {opacity:0.001; transition: opacity 0.2s;}
.mypage-box:hover>.contextual {opacity:1;}

.handle {cursor: move;}

#my-page .list th.checkbox, #my-page .list td.checkbox {display:none;}
/***** Gantt chart *****/
table.gantt-table {
  width: 100%;
  border-collapse: collapse;
}
table.gantt-table td {
  padding: 0px;
}
.gantt_hdr {
  position:absolute;
  top:0;
  height:16px;
  border-top: 1px solid #c0c0c0;
  border-bottom: 1px solid #c0c0c0;
  border-left: 1px solid #c0c0c0;
  text-align: center;
  overflow: hidden;
}
#gantt_area .gantt_hdr {
  border-left: 0px;
  border-right: 1px solid #c0c0c0;
}
.gantt_subjects_container:not(.draw_selected_columns) .gantt_hdr,
.last_gantt_selected_column .gantt_hdr {
  border-right: 1px solid #c0c0c0;
}
.last_gantt_selected_column .gantt_selected_column_container,
.gantt_subjects_container .gantt_subjects * {
  z-index: 10;
}

.gantt_subjects_column + td {
  padding: 0;
}

.gantt_hdr.nwday {background-color:#f1f1f1; color:#999;}

.gantt_subjects,
.gantt_selected_column_content.gantt_hdr {
  font-size: 0.8em;
  position: relative;
  z-index: 1;
}
.gantt_subjects div,
.gantt_selected_column_content div {
  line-height: 16px;
  height: 16px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  width: 100%;
}
.gantt_subjects div.issue-subject:hover { background-color:#ffffdd; }
.gantt_selected_column_content { padding-left: 3px; padding-right: 3px;}
.gantt_subjects .issue-subject img.icon-gravatar {
  margin: 2px 5px 0px 2px;
}
.gantt_hdr_selected_column_name {
  position: absolute;
  top: 50%;
  width:100%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  font-size: 0.8em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;

}
td.gantt_selected_column {
  width: 50px;
}
td.gantt_selected_column .gantt_hdr,.gantt_selected_column_container {
  width: 49px;
}

.task {
  position: absolute;
  height:8px;
  font-size:0.8em;
  color:#888;
  padding:0;
  margin:0;
  line-height:16px;
  white-space:nowrap;
}

.task.label {width:100%;}
.task.label.project, .task.label.version { font-weight: bold; }

.task_late { background:#f66 url(../images/task_late.png); border: 1px solid #f66; }
.task_done { background:#00c600 url(../images/task_done.png); border: 1px solid #00c600; }
.task_todo { background:#aaa url(../images/task_todo.png); border: 1px solid #aaa; }

.task_todo.parent { background: #888; border: 1px solid #888; height: 3px;}
.task_late.parent, .task_done.parent { height: 3px;}
.task.parent.marker.starting  { position: absolute; background: url(../images/task_parent_end.png) no-repeat 0 0; width: 8px; height: 16px; margin-left: -4px; left: 0px; top: -1px;}
.task.parent.marker.ending { position: absolute; background: url(../images/task_parent_end.png) no-repeat 0 0; width: 8px; height: 16px; margin-left: -4px; right: 0px; top: -1px;}

.version.task_late { background:#f66 url(../images/milestone_late.png); border: 1px solid #f66; height: 2px; margin-top: 3px;}
.version.task_done { background:#00c600 url(../images/milestone_done.png); border: 1px solid #00c600; height: 2px; margin-top: 3px;}
.version.task_todo { background:#fff url(../images/milestone_todo.png); border: 1px solid #fff; height: 2px; margin-top: 3px;}
.version.marker { background-image:url(../images/version_marker.png); background-repeat: no-repeat; border: 0; margin-left: -4px; margin-top: 1px; }

.project.task_late { background:#f66 url(../images/milestone_late.png); border: 1px solid #f66; height: 2px; margin-top: 3px;}
.project.task_done { background:#00c600 url(../images/milestone_done.png); border: 1px solid #00c600; height: 2px; margin-top: 3px;}
.project.task_todo { background:#fff url(../images/milestone_todo.png); border: 1px solid #fff; height: 2px; margin-top: 3px;}
.project.marker { background-image:url(../images/project_marker.png); background-repeat: no-repeat; border: 0; margin-left: -4px; margin-top: 1px; }

.version-behind-schedule a, .issue-behind-schedule a {color: #f66914;}
.version-overdue a, .issue-overdue a, .project-overdue a {color: #f00;}

/***** Badges *****/
.badge {
  position:relative;
  font-weight:bold;
  font-size: 10px;
  bottom: 2px;
  padding: 1px 3px;
  margin-right: 2px;
  margin-left: 2px;
  border-radius: 2px;
  text-transform: uppercase;
  text-decoration: none;
}
.badge-private {
  background: #d22;
  color: #fff;
  border: 1px solid #d22;
}
.badge-count {
  color: #fff;
  background:#9DB9D5;
}
.badge-status-open {
  color: #205D86;
  border: 1px solid #205D86;
}
.badge-status-locked {
  color: #696969;
  border: 1px solid #696969;
}
.badge-status-closed {
  color: #1D781D;
  border: 1px solid #1D781D;
}
.badge-issues-count {
  background: #EEEEEE;
}

/***** Tooltips *****/
.ui-tooltip {
  background: #000;
  color: #fff;
  border-radius: 3px;
  border: 0;
  box-shadow: none
}

/***** Icons *****/
.icon {
  background-position: 0% 50%;
  background-repeat: no-repeat;
  padding-left: 20px;
}
.icon-only {
  background-position: 0% 50%;
  background-repeat: no-repeat;
  padding-left: 16px;
  display: inline-block;
  width: 0;
  height: 16px;
  overflow: hidden;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 8px;
  vertical-align: middle;
}
.icon-only::after {
  content: "\a0";
}

.icon-add { background-image: url(../images/add.png); }
.icon-edit { background-image: url(../images/edit.png); }
.icon-copy { background-image: url(../images/copy.png); }
.icon-duplicate { background-image: url(../images/duplicate.png); }
.icon-del { background-image: url(../images/delete.png); }
.icon-move { background-image: url(../images/move.png); }
.icon-save { background-image: url(../images/save.png); }
.icon-download { background-image: url(../images/download.png); }
.icon-cancel { background-image: url(../images/cancel.png); }
.icon-multiple { background-image: url(../images/table_multiple.png); }
.icon-folder { background-image: url(../images/folder.png); }
.open .icon-folder { background-image: url(../images/folder_open.png); }
.icon-package { background-image: url(../images/package.png); }
.icon-user { background-image: url(../images/user.png); }
.icon-project, .icon-projects { background-image: url(../images/projects.png); }
.icon-help { background-image: url(../images/help.png); }
.icon-attachment  { background-image: url(../images/attachment.png); }
.icon-history  { background-image: url(../images/history.png); }
.icon-time-entry, .icon-time  { background-image: url(../images/time.png); }
.icon-time-add  { background-image: url(../images/time_add.png); }
.icon-stats  { background-image: url(../images/stats.png); }
.icon-warning  { background-image: url(../images/warning.png); }
.icon-error { background-image: url(../images/exclamation.png); }
.icon-fav  { background-image: url(../images/fav.png); }
.icon-fav-off  { background-image: url(../images/fav_off.png); }
.icon-reload  { background-image: url(../images/reload.png); }
.icon-lock, .icon-locked  { background-image: url(../images/locked.png); }
.icon-unlock  { background-image: url(../images/unlock.png); }
.icon-checked  { background-image: url(../images/toggle_check.png); }
.icon-report  { background-image: url(../images/report.png); }
.icon-comment, .icon-comments  { background-image: url(../images/comment.png); }
.icon-summary  { background-image: url(../images/lightning.png); }
.icon-server-authentication { background-image: url(../images/server_key.png); }
.icon-issue { background-image: url(../images/ticket.png); }
.icon-zoom-in { background-image: url(../images/zoom_in.png); }
.icon-zoom-out { background-image: url(../images/zoom_out.png); }
.icon-magnifier { background-image: url(../images/magnifier.png); }
.icon-passwd { background-image: url(../images/textfield_key.png); }
.icon-arrow-right, .icon-test, .icon-sticky { background-image: url(../images/bullet_go.png); }
.icon-email { background-image: url(../images/email.png); }
.icon-email-disabled { background-image: url(../images/email_disabled.png); }
.icon-email-add { background-image: url(../images/email_add.png); }
.icon-ok { background-image: url(../images/true.png); }
.icon-not-ok { background-image: url(../images/false.png); }
.icon-link-break { background-image: url(../images/link_break.png); }
.icon-list { background-image: url(../images/text_list_bullets.png); }
.icon-close { background-image: url(../images/close.png); }
.icon-close:hover { background-image: url(../images/close_hl.png); }
.icon-settings { background-image: url(../images/changeset.png); }
.icon-group, .icon-groupnonmember, .icon-groupanonymous { background-image: url(../images/group.png); }
.icon-roles { background-image: url(../images/database_key.png); }
.icon-issue-edit { background-image: url(../images/ticket_edit.png); }
.icon-workflows { background-image: url(../images/ticket_go.png); }
.icon-custom-fields { background-image: url(../images/textfield.png); }
.icon-plugins { background-image: url(../images/plugin.png); }
.icon-news { background-image: url(../images/news.png); }
.icon-issue-closed { background-image: url(../images/ticket_checked.png); }
.icon-issue-note { background-image: url(../images/ticket_note.png); }
.icon-changeset { background-image: url(../images/changeset.png); }
.icon-message { background-image: url(../images/message.png); }
.icon-reply { background-image: url(../images/comments.png); }
.icon-wiki-page { background-image: url(../images/wiki_edit.png); }
.icon-document { background-image: url(../images/document.png); }
.icon-project { background-image: url(../images/projects.png); }
.icon-add-bullet { background-image: url(../images/bullet_add.png); }
.icon-shared { background-image: url(../images/link.png); }
.icon-actions { background-image: url(../images/3_bullets.png); }
.icon-sort-handle { background-image: url(../images/reorder.png); }
.icon-expended { background-image: url(../images/arrow_down.png); }
.icon-collapsed { background-image: url(../images/arrow_right.png); }
.icon-bookmark { background-image: url(../images/tag_blue_delete.png); }
.icon-bookmark-off { background-image: url(../images/tag_blue_add.png); }
.icon-bookmarked-project { background-image: url(../images/tag_blue.png); }
.icon-sorted-asc { background-image: url(../images/arrow_down.png); }
.icon-sorted-desc { background-image: url(../images/arrow_up.png); }
.icon-toggle-plus { background-image: url(../images/bullet_toggle_plus.png) }
.icon-toggle-minus { background-image: url(../images/bullet_toggle_minus.png) }
.icon-clear-query { background-image: url(../images/close_hl.png); }
.icon-import { background-image: url(../images/database_go.png); }

.icon-file { background-image: url(../images/files/default.png); }
.icon-file.text-plain { background-image: url(../images/files/text.png); }
.icon-file.text-x-c { background-image: url(../images/files/c.png); }
.icon-file.text-x-csharp { background-image: url(../images/files/csharp.png); }
.icon-file.text-x-java { background-image: url(../images/files/java.png); }
.icon-file.application-javascript { background-image: url(../images/files/js.png); }
.icon-file.text-x-php { background-image: url(../images/files/php.png); }
.icon-file.text-x-ruby { background-image: url(../images/files/ruby.png); }
.icon-file.text-xml { background-image: url(../images/files/xml.png); }
.icon-file.text-css { background-image: url(../images/files/css.png); }
.icon-file.text-html { background-image: url(../images/files/html.png); }
.icon-file.image-gif { background-image: url(../images/files/image.png); }
.icon-file.image-jpeg { background-image: url(../images/files/image.png); }
.icon-file.image-png { background-image: url(../images/files/image.png); }
.icon-file.image-tiff { background-image: url(../images/files/image.png); }
.icon-file.application-pdf { background-image: url(../images/files/pdf.png); }
.icon-file.application-zip { background-image: url(../images/files/zip.png); }
.icon-file.application-gzip { background-image: url(../images/files/zip.png); }
.icon-copy-link { background-image: url(../images/copy_link.png); }

.sort-handle.ajax-loading { background-image: url(../images/loading.gif); }
tr.ui-sortable-helper { border:1px solid #e4e4e4; }

.contextual>*:not(:first-child), .buttons>.icon:not(:first-child), .contextual .journal-actions>*:not(:first-child) { margin-left: 5px; }

img.gravatar {
  vertical-align: middle;
  border-radius: 20%;
}

div.issue img.gravatar {
  float: left;
  margin: 0 12px 6px 0;
}

div.gravatar-with-child {
  position: relative;
}

div.gravatar-with-child > img.gravatar:nth-child(2) {
  position: absolute;
  top: 30px;
  left: 30px;
  border-radius: 20%;
  border: 2px solid rgba(255, 255, 255, 0.9);
}

h2 img.gravatar, h3 img.gravatar {margin-right: 4px;}
h4 img.gravatar {margin: -2px 4px -4px 0;}
td.username img.gravatar {margin: 0 0.5em 0 0; vertical-align: top;}
#activity dt img.gravatar {float: left; margin: 0 1em 1em 0;}
/* Used on 12px Gravatar img tags without the icon background */
.icon-gravatar {float: left; margin-right: 4px;}

#activity dt, .journal {clear: left;}

h2 img { vertical-align:middle; }

.hascontextmenu { cursor: context-menu; }

.sample-data {border:1px solid #ccc; border-collapse:collapse; background-color:#fff; margin:0.5em;}
.sample-data td {border:1px solid #ccc; padding: 2px 4px; font-family: Consolas, Menlo, "Liberation Mono", Courier, monospace;}
.sample-data tr:first-child td {font-weight:bold; text-align:center;}

.ui-progressbar {position: relative;}
#progress-label {
  position: absolute; left: 50%; top: 4px;
  font-weight: bold;
  color: #555; text-shadow: 1px 1px 0 #fff;
}

.repository-graph {width:75%; margin-bottom:2em;}

img.filecontent.image {background-image: url(../images/transparent.png);}

/* Custom JQuery styles */
.ui-autocomplete, .ui-menu {
  border-radius: 2px;
  border: 1px solid #ccc;
}
.ui-autocomplete .ui-menu-item > div, .ui-menu .ui-menu-item > div {
  padding: 4px 8px;
  max-width: 500px;
}
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active {
  border-color: #759FCF;
  background: #759FCF;
}
.ui-widget-overlay {
  background: #000;
  opacity: 70%;
}

/* Custom tribute styles */
.tribute-container ul {
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 2px;
}
.tribute-container li.highlight {background-color: #759FCF; color:#fff;}

/************* Rouge styles *************/
/* generated by: pygmentize -f html -a .syntaxhl -S colorful */
.syntaxhl .hll { background-color: #ffffcc }
.syntaxhl  { background: #fafafa; }
.syntaxhl .c { color: #888888 } /* Comment */
.syntaxhl .err { color: #FF0000; background-color: #FFAAAA } /* Error */
.syntaxhl .k { color: #008800; font-weight: bold } /* Keyword */
.syntaxhl .o { color: #333333 } /* Operator */
.syntaxhl .ch { color: #888888 } /* Comment.Hashbang */
.syntaxhl .cm { color: #888888 } /* Comment.Multiline */
.syntaxhl .cp { color: #557799 } /* Comment.Preproc */
.syntaxhl .cpf { color: #888888 } /* Comment.PreprocFile */
.syntaxhl .c1 { color: #888888 } /* Comment.Single */
.syntaxhl .cs { color: #cc0000; font-weight: bold } /* Comment.Special */
.syntaxhl .gd { color: #A00000 } /* Generic.Deleted */
.syntaxhl .ge { font-style: italic } /* Generic.Emph */
.syntaxhl .gr { color: #FF0000 } /* Generic.Error */
.syntaxhl .gh { color: #000080; font-weight: bold } /* Generic.Heading */
.syntaxhl .gi { color: #00A000 } /* Generic.Inserted */
.syntaxhl .go { color: #888888 } /* Generic.Output */
.syntaxhl .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
.syntaxhl .gs { font-weight: bold } /* Generic.Strong */
.syntaxhl .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.syntaxhl .gt { color: #0044DD } /* Generic.Traceback */
.syntaxhl .kc { color: #008800; font-weight: bold } /* Keyword.Constant */
.syntaxhl .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */
.syntaxhl .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */
.syntaxhl .kp { color: #003388; font-weight: bold } /* Keyword.Pseudo */
.syntaxhl .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */
.syntaxhl .kt { color: #333399; font-weight: bold } /* Keyword.Type */
.syntaxhl .m { color: #6600EE; font-weight: bold } /* Literal.Number */
.syntaxhl .s { background-color: #fff0f0 } /* Literal.String */
.syntaxhl .na { color: #0000CC } /* Name.Attribute */
.syntaxhl .nb { color: #007020 } /* Name.Builtin */
.syntaxhl .nc { color: #BB0066; font-weight: bold } /* Name.Class */
.syntaxhl .no { color: #003366; font-weight: bold } /* Name.Constant */
.syntaxhl .nd { color: #555555; font-weight: bold } /* Name.Decorator */
.syntaxhl .ni { color: #880000; font-weight: bold } /* Name.Entity */
.syntaxhl .ne { color: #FF0000; font-weight: bold } /* Name.Exception */
.syntaxhl .nf { color: #0066BB; font-weight: bold } /* Name.Function */
.syntaxhl .nl { color: #997700; font-weight: bold } /* Name.Label */
.syntaxhl .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */
.syntaxhl .nt { color: #007700 } /* Name.Tag */
.syntaxhl .nv { color: #996633 } /* Name.Variable */
.syntaxhl .ow { color: #000000; font-weight: bold } /* Operator.Word */
.syntaxhl .w { color: #bbbbbb } /* Text.Whitespace */
.syntaxhl .mb { color: #6600EE; font-weight: bold } /* Literal.Number.Bin */
.syntaxhl .mf { color: #6600EE; font-weight: bold } /* Literal.Number.Float */
.syntaxhl .mh { color: #005588; font-weight: bold } /* Literal.Number.Hex */
.syntaxhl .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */
.syntaxhl .mo { color: #4400EE; font-weight: bold } /* Literal.Number.Oct */
.syntaxhl .sa { background-color: #fff0f0 } /* Literal.String.Affix */
.syntaxhl .sb { background-color: #fff0f0 } /* Literal.String.Backtick */
.syntaxhl .sc { color: #0044DD } /* Literal.String.Char */
.syntaxhl .dl { background-color: #fff0f0 } /* Literal.String.Delimiter */
.syntaxhl .sd { color: #DD4422 } /* Literal.String.Doc */
.syntaxhl .s2 { background-color: #fff0f0 } /* Literal.String.Double */
.syntaxhl .se { color: #666666; font-weight: bold; background-color: #fff0f0 } /* Literal.String.Escape */
.syntaxhl .sh { background-color: #fff0f0 } /* Literal.String.Heredoc */
.syntaxhl .si { background-color: #eeeeee } /* Literal.String.Interpol */
.syntaxhl .sx { color: #DD2200; background-color: #fff0f0 } /* Literal.String.Other */
.syntaxhl .sr { color: #000000; background-color: #fff0ff } /* Literal.String.Regex */
.syntaxhl .s1 { background-color: #fff0f0 } /* Literal.String.Single */
.syntaxhl .ss { color: #AA6600 } /* Literal.String.Symbol */
.syntaxhl .bp { color: #007020 } /* Name.Builtin.Pseudo */
.syntaxhl .fm { color: #0066BB; font-weight: bold } /* Name.Function.Magic */
.syntaxhl .vc { color: #336699 } /* Name.Variable.Class */
.syntaxhl .vg { color: #dd7700; font-weight: bold } /* Name.Variable.Global */
.syntaxhl .vi { color: #3333BB } /* Name.Variable.Instance */
.syntaxhl .vm { color: #996633 } /* Name.Variable.Magic */
.syntaxhl .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */

/***** Media print specific styles *****/
@media print {
  #top-menu, #header, #main-menu, #sidebar, #footer, .contextual, .other-formats { display:none; }
  #main { background: #fff; }
  #content { width: 99%; margin: 0; padding: 0; border: 0; background: #fff; overflow: visible !important;}
  #wiki_add_attachment { display:none; }
  .hide-when-print, .pagination ul.pages, .pagination .per-page { display: none !important; }
  .autoscroll {overflow-x: visible;}
  table.list {margin-top:0.5em;}
  table.list th, table.list td {border: 1px solid #aaa;}
}

/* Accessibility specific styles */
.hidden-for-sighted {
  position:absolute;
  left:-10000px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
}

img {
  image-orientation: from-image;
}

.filecontent-container {
  position: relative;
  margin-bottom: 20px;
  min-height: 200px;
}
.filecontent-container > .filecontent {
  position: absolute;
  max-height: 100%;
  max-width: 100%;
}

.filecontent-container > .filecontent.wiki {
  position: relative;
  padding: 1em;
  border: 1px solid #e4e4e4;
  border-radius: 3px;
}

/* Fixes for IE 11 */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  select::-ms-expand {
    display: none;
  }
  select[multiple=multiple] {padding-right: 0;}
}

/* tablesort */
th[role=columnheader]:not(.no-sort) {
  cursor: pointer;
}

th[role=columnheader]:not(.no-sort):after {
  content: '';
  float: right;
  margin-top: 7px;
  border-width: 0 4px 4px;
  border-style: solid;
  border-color: #404040 transparent;
  display: none;
  opacity: 0;
  -ms-user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

th[aria-sort=ascending]:not(.no-sort):after {
  border-bottom: none;
  border-width: 4px 4px 0;
}

th[aria-sort]:not(.no-sort):after {
  display: inline;
  opacity: 0.4;
}

th[role=columnheader]:not(.no-sort):hover:after {
  display: inline;
  opacity: 1;
}

/*START FONTS FOR THEME*/
/* --------------------- https://redmine-evolution.com/ -- */
/* COMMON PROJECT VARIABLES */
/* 21.03.2022 */
/* START ICONS-FONTS */
@font-face {
  font-family: "WFS-RM-font";
  src: url('../fonts/WFS-RM-font.eot');
  src: url('../fonts/WFS-RM-font.eot?#iefix') format('eot'), url('../fonts/WFS-RM-font.woff') format('woff'), url('../fonts/WFS-RM-font.ttf') format('truetype');
}
/* END ICONS-FONTS */
/*END FONTS FOR THEME*/
/*START VARIABLES FOR THEME*/
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ICON FONTS */
/* END ICON FONTS */
/* 20.03.2022 */
/* START FONT VARIABLES */
/* END FONT VARIABLES */
/* VARS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ALL VARIABLES FOR WORK LESS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START BORDER RADIUS VARIABLES */
/* END BORDER RADIUS VARIABLES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START FONT SISE + LINE HIGHT */
/* START 1024*/
/*  START 768*/
/*  START 500*/
/* END FONT SISE + LINE HIGHT */
/* --------------------- https://redmine-evolution.com/ -- */
/* START JCF */
/* END JCF */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ANIMATE TIME*/
/* hover */
/* Main big bloks animated */
/* --------------------- https://redmine-evolution.com/ -- */
/* START OPACITY */
/* END OPACITY*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START ICONS VAR */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ICON FONTS */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/*  ----  */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* END ICON FONTS */
/*END VARIABLES FOR THEME*/
/*START COLOUR-VARIABLES GLOBAL FOR THEME*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START COLOR VARIABLES */
/* END COLOR VARIABLES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START NOTICE */
/*D9E8FF*/
/* END NOTICE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MOBILE MENU */
/* END MOBILE MENU */
/* --------------------- https://redmine-evolution.com/ -- */
/* START BOX-SHADOWS */
/* END BOX-SHADOWS */
/* START tables */
/* END tables*/
/* START pagination */
/* END pagination*/
/* START TOP MENU */
/* HOVER */
/* END TOP MENU */
/* START MAIN MENU */
/* MOBILE */
/* END MAIN MENU */
/* new  */
/* START TOP MENU */
/* HOVER */
/* END TOP MENU */
/* START MAIN MENU */
/* MOBILE */
/* END MAIN MENU */
/* CONTENT COLOR SETTINGS  */
/* --------------------- https://redmine-evolution.com/ -- */
:root {
  /* START GENERAL COLOR */
  --color-fff: #fff;
  --color-dark: #10131e;
  --color-blue: #654EFF;
  --color-darck-blue: #8A78D0;
  --color-blue-light: #cce5ff;
  --color-red: #FF5757;
  --color-red-errof: #BE4646;
  --color-red-superlight: #FFD1D1;
  --color-green: #66C8AB;
  --color-green-dark: #5caa93;
  --color-green-super-light: #CFFFF1;
  --color-purple: #E284FE;
  --color-purple-dark: #C072D8;
  --color-yellow: #FFCF69;
  --color-yellow-light: #FFF1D3;
  --color-error: #FF5757;
  --color-orange: #FE9A51;
  --color-grey: #cccccc;
  --super_grey_light: #ebebec;
  --suder-dark-grey: #BBBFCD;
  --main-bg-box: #ECEDF0;
  --menu-grey: #6a6e82;
  --icon-grey: #676879;
  --icon-grey-dark: #323338;
  --menu-bg: #2E314F;
  --color-main-color: #9D89EE;
  --color-main-color-activety: #8E7DD6;
  --bg-box-activety: #cce5ff;
  --color-main-color-text: #ffffff;
  --grey: #cccccc;
  --color-dark-grey: #A5A5A5;
  --icon-bg: #cce5ff;
  /*--main-background: url("../images/login-bg01.jpg") repeat;*/
  --main-background: var(--color-fff);
  --border-color: var(--border-color-content);
  --text-color-main: var(--color-dark);
  --bg-in-content: var(--color-blue-light);
  --bg-body: var(--bg-fff);
  --bg-mobile: #fff;
  --bg-box: #ECEDF0;
  --bg-other: #ECEDF0;
  --bg-other-in: #ffffff;
  --bg-fff: #ffffff;
  --light-bg: #ece1fc;
  --select-bg-redmineup: #5f5bfa;
  --all-hover-bg: var(--color-blue-light);
  --all-hover-bg-color: var(--color-dark);
  --scroll-bg: #ECEDF0;
  --scroll-handle: #BBBFCD;
  --jcf-drop-active: var(--text-color-main);
  /* END GENERAL COLOR */
  /* START TABS */
  --tab-color-text: var(--border-color-content);
  --tab-color-text-seleced: var(--color-main-color);
  /* END TABS */
  /* START NOTICE */
  --notice-error-bg: var(--color-red-superlight);
  --notice-error-main: var(--color-red);
  --notice-error-main-text: var(--color-red);
  --notice-successfu-main: var(--color-green);
  --notice-successfu-main-text: var(--color-fff);
  --notice-successfu-bg: var(--color-green-super-light);
  --notice-successfu-bg-text: var(--color-green-dark);
  --notice-worning-main: var(--color-yellow);
  --notice-worning-bg: var(--color-yellow-light);
  --notice-worning-color: var(--color-dark);
  --red_border_error: var(--color-red);
  --red_error_text: var(--color-fff);
  /* END NOTICE */
  /* START BORDER RADIUS */
  --border-radius: 8px;
  --border-radius-full: 100%;
  --border-radius-small: 3px;
  --border-radius-midle: 5px;
  --icon-border-radius: 8px;
  /* START BORDER RADIUS */
  /* START ANIMATE TIME*/
  --time-hover: 0.2s;
  --time-main: 0.5s;
  --time-hover-null: 0s;
  /* END ANIMATE TIME*/
  /* START ICONS */
  --icon-width: 30px;
  --icon-font-size: 30px;
  --icon-smaller-width: 26px;
  --icon-smaller-font-size: 26px;
  --icon-width-small: 20px;
  --icon-font-size-small: 20px;
  --icon-font: "WFS-RM-font";
  --icon-color: var(--icon-grey);
  --icon-color-hover: #444444;
  --icon_color_active: #444444;
  --icon_bg: #bfd6fd;
  --icon_bg_hover: #bfd6fd;
  --icon_bg_active: #bfd6fd;
  --icon-color-disabled: var(--icon-grey);
  --icon_bg-disabled: var(--color-grey);
  --icon-color-bg: var(--icon-grey);
  --icon-color-hover-bg: var(--icon-grey-dark);
  --icon_color_active-bg: var(--icon-grey-dark);
  --icon_bg-bg: var(--color-blue-light);
  --icon_bg_hover-bg: var(--color-blue-light);
  --icon_bg_active-bg: var(--color-blue-light);
  --icon-color-list: var(--icon-grey);
  --icon-color-hover-list: var(--bg-fff);
  --icon_color_active-list: var(--bg-fff);
  --icon_bg-list: var(--color-main-color);
  --icon_bg_hover-list: var(--color-main-color);
  --icon_bg_active-list: var(--color-main-color);
  --icon-color-: var(--icon-grey);
  --icon-content-color: var(--color-orange);
  --icon-content-color-hover: #fff;
  --icon-content_bg: var(--color-orange);
  --icon-content_bg_hover: var(--color-orange);
  --icon-content_bg_active: var(--color-orange);
  --icon-star: var(--color-orange);
  --button-main-color: var(--color-fff);
  --button-main-bg: var(--color-purple);
  --button-main-color-hover: var(--color-fff);
  --button-main-bg-hover: var(--color-purple-dark);
  --button-main-color-disabled: var(--color-dark);
  --button-main-bg-disabled: var(--color-grey);
  --button-color: #654EFF;
  --button-bg: #ebe7fc;
  --button-color-hover: #654EFF;
  --button-bg-hover: #d8d0f8;
  --button-color-disabled: var(--color-dark);
  --button-bg-disabled: var(--color-grey);
  --button-color-disabled: #fff;
  --button-bg-disabled: var(--color-dark-grey);
  --button-grey-color: var(--color-dark);
  --button-grey-bg: var(--super_grey_light);
  --button-grey-color-hover: var(--color-dark);
  --button-grey-bg-hover: var(--color-grey);
  --button-font-weight: 600;
  --button-border-radius: 8px;
  --bg-disabled: var(--color-dark-grey);
  --color-disabled: var(--color-fff);
  --button-main-color-bg: #fff;
  --button-main-bg-bg: var(--color-purple-dark);
  --button-main-color-hover-bg: #fff;
  --button-main-bg-hover-bg: var(--color-purple-dark);
  --button-main-color-disabled-bg: var(--color-dark);
  --button-main-bg-disabled-bg: var(--color-grey);
  --button-color-bg: var(--color-dark);
  --button-bg-bg: var(--color-blue-light);
  --button-color-hover-bg: #fff;
  --button-bg-hover-bg: var(--color-blue);
  /* END ICONS */
  --table-bg-hover: #afd6fd;
  --popup-overlay: rgba(41, 47, 76, 0.7);
  --popup-overlay-fancy: var(--menu-bg);
  --main-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  --small-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.1);
  --box-shadow-null: 0 10px 10px rgba(0, 0, 0, 0);
  --table-shadow: rgba(0, 0, 0, 0.1) 0px 3px 5px;
  --big-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
  --big-shadow-hover: 0 10px 10px rgba(101, 154, 244, 0.5);
  --popup-close-color: var(--color-red);
  --popup-close-bg: var(--color-red);
  --popup-close-color-hover: var(--color-fff);
  --popup-close-bg-hover: var(--color-red);
  --popup-close-color-2: var(--color-red);
  --popup-close-bg-2: var(--color-fff);
  --popup-close-color-hover-2: var(--color-fff);
  --popup-close-bg-hover-2: var(--color-red);
  /* START PRIORITY COLOR */
  --color-warning: var(--color-orange);
  --priority-1: var(--color-blue);
  --priority-2: var(--color-green);
  --priority-3: var(--color-yellow);
  --priority-4: var(--color-purple);
  --priority-5: var(--color-error);
  --priority-color: var(--color-fff);
  /* END PRIORITY COLOR */
  /* START TRACKER COLOR */
  --tracker-1: var(--color-red);
  --tracker-2: var(--color-green);
  --tracker-3: var(--color-blue);
  /* END TRACKER COLOR */
  /* START DROPDOWN */
  --drop-text-color: var(--color-dark);
  --drop-text-color-hover: var(--color-dark);
  --drop-icon-color: var(--color-dark);
  --drop-icon-color-hover: var(--color-dark);
  --drop-border-color: var(--color-grey);
  --drop-bg: var(--color-blue-light);
  --drop-bg-hover: var(--color-blue-light);
  --drop-shadow: var(--box-shadow-null);
  /* START DROPDOWN */
  /* START ISSUES */
  --icon-save-color: var(--color-green);
  --icon-save-color-hover: var(--color-fff);
  --icon-save-bg: var(--color-green-super-light);
  --icon-save-bg-hover: var(--color-green);
  --icon-close-color: var(--color-error);
  --icon-close-color-hover: var(--color-fff);
  --icon-close-bg: var(--color-red-superlight);
  --icon-close-bg-hover: var(--color-error);
  --icon-dell-bg: var(--color-red);
  --icon-dell-bg-hover: var(--color-error);
  --icon-dell-color: var(--color-fff);
  --icon-dell-color-hover: var(--color-fff);
  --color-link: var(--color-main-color);
  --border-color-content: #BBBFCD;
  /* END ISSUES */
  /* START PAGINATION */
  --pagination-color: var(--icon-color);
  --pagination-color-hover: var(--icon-color-hover);
  --pagination-color-avtive: var(--icon_color_active);
  --pagination-bg: var(--color-fff);
  --pagination-bg-hover: var(--icon_bg_hover);
  --pagination-bg-active: var(--icon_bg_active);
  --pagination-font-weight: 700;
  /* END PAGINATION */
  /* START FLYOUT MENU */
  --flyout_menu_bg: var(--color-main-color);
  --flyout_menu_color: var(--color-fff);
  --flyout_menu_border: var(--color-fff);
  --flyout_menu_button_bg: var(--color-fff);
  --flyout_menu_button_color: var(--color-main-color);
  --flyout_menu_bg_selected: var(--color-red);
  --flyout_menu_color_selected: var(--color-fff);
  --flyout_menu_title_bg: #0067c3;
  --flyout_menu_title_color: var(--color-fff);
  --flyout_menu_admin_menu_bg: #6b8eff;
  --flyout_menu_admin_menu_color: var(--color-fff);
  --flyout_menu_general-menu_bg: #817eff;
  --flyout_menu_general-menu_color: var(--color-fff);
  --flyout_menu_profile-menu_bg: #5DCA86;
  --flyout_menu_profile-menu_color: var(--color-fff);
  --flyout_menu_watchers-menu_bg: var(--color-green);
  --flyout_menu_watchers-menu_color: var(--color-fff);
  --flyout-text-color: var(--color-dark);
  /* END FLYOUT MENU */
  /* START TOOLTIP */
  --tooltip-bg: var(--color-main-color);
  --tooltip-bg-hover: var(--color-main-color);
  --tooltip-color: var(--color-fff);
  --tooltip-color-hover: var(--color-fff);
  /* END TOOLTIP */
  /* START SCROLLBAR */
  --scrollbar: var(--color-grey);
  --scrollbar_handle: var(--color-main-color);
  /* END SCROLLBAR */
}
/* START FOOTER */
#footer {
  --bg: var(--color-fff);
  --text-color-main: var(--color-grey);
  --border-color: var(--color-grey);
}
/* END FOOTER */
/* START SIDEBAR */
#sidebar {
  --bg: var(--main-bg-box);
  --main_color: var(--color-main-color);
  --text-color-main: var(--color-dark);
  --border-color: #BBBFCD;
  --icon-color: var(--icon-grey);
  --icon-color-hover: var(--icon-grey-dark);
  --icon_color_active: var(--icon-grey-dark);
  --icon_bg: var(--color-blue-light);
  --icon_bg_hover: var(--color-blue-light);
  --icon_bg_active: var(--color-blue-light);
  --button-main-color: var(--bg-fff);
  --button-main-bg: var(--color-purple);
  --button-main-color-hover: var(--bg-fff);
  --button-main-bg-hover: var(--color-purple-dark);
  --button-color: var(--bg-fff);
  --button-bg: var(--color-purple);
  --button-color-hover: var(--bg-fff);
  --button-bg-hover: var(--color-purple-dark);
  --scroll-bg: #ECEDF0;
  --scroll-handle: #BBBFCD;
}
#main {
  --sidebar-main_color: var(--color-main-color);
  --sidebar-main_color_text: var(--bg-fff);
  --sidebar-main_color_hover: #292f4c;
  --sidebar-main_color_text_hover: var(--bg-fff);
  --sidebar-open-button-bg: #fff;
  --sidebar-open-button-border: var(--border-color);
  --sidebar-open-button-color: var(--color-dark);
  --sidebar-open-button-bg-hover: #9D89EE;
  --sidebar-open-button-border-hover: #9D89EE;
  --sidebar-open-button-color-hover: #fff;
}
/* END SIDEBAR */
#admin-menu,
#main-menu,
.mod-obj {
  --bg: #20233D;
  --border-color: #20233D;
  --border-color-logo: #484C78;
  --link-color: #C7B8FF;
  --link-color-hover: #E182FF;
  --link-color-active: #C7B8FF;
  --scrollbar: #20233D;
  --scrollbar_handle: #C7B8FF;
  --icon-color: #C7B8FF;
  --icon-color-hover: #E182FF;
  --icon_color_active: #C7B8FF;
  --icon_bg: var(--menu-bg);
  --icon_bg_hover: var(--color-dark);
  --icon_bg_active: var(--menu-grey);
  --main-menu-font-weight: 700;
  --menu-children-font-weight: 500;
  --flyout-menu-font-weight: 600;
  --submit-font-weight: 600;
}
#admin-index {
  --admin-color-text: var(--color-dark);
  --admin-color-after: var(--menu-bg);
  --admin-color-after-hover: var(--menu-bg);
  --admin-color-text-hover: var(--color-dark);
}
#top-menu {
  --bg: var(--main-bg-box);
  --icon-color: var(--icon-grey);
  --icon-color-hover: var(--icon-grey-dark);
  --icon_color_active: var(--icon-grey-dark);
  --border-color: var(--color-grey);
  --icon_bg: var(--color-blue-light);
  --icon_bg_hover: var(--color-blue-light);
  --icon_bg_active: var(--color-blue-light);
  --top-notification: var(--tracker-1);
  --top-notification-color: var(--color-fff);
  --link-color: var(--color-dark);
  --link-color-hover: var(--color-blue);
  --link-bg: var(--color-fff);
  --link-bg-hover: var(--color-blue-light);
  --text-color: var(--color-dark);
  --start-time-bg-time: var(--menu-bg);
  --start-time-text-color: var(--color-fff);
}
.revo-modal-badge {
  --bg: var(--bg-box);
  --bg-title: var(--color-fff);
  --text-color: var(--color-dark);
  --link-color: var(--color-dark);
  --link-color-hover: var(--color-dark);
  --link-bg: var(--color-fff);
  --link-bg-hover: var(--all-hover-bg);
  --border-color: var(--color-dark);
}
/*END COLOUR-VARIABLES GLOBAL FOR THEME*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START SELECT 2 */
.select2-container {
  box-sizing: border-box;
  display: inline-block;
  margin: 0;
  position: relative;
  vertical-align: middle;
}
.select2-container .select2-selection--single {
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  height: 28px;
  user-select: none;
  -webkit-user-select: none;
}
.select2-container .select2-selection--single .select2-selection__rendered {
  display: block;
  padding-left: 8px;
  padding-right: 20px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.select2-container .select2-selection--single .select2-selection__clear {
  background-color: transparent;
  border: none;
  font-size: 1em;
}
.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered {
  padding-right: 8px;
  padding-left: 20px;
}
.select2-container .select2-selection--multiple {
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  min-height: 32px;
  user-select: none;
  -webkit-user-select: none;
}
.select2-container .select2-selection--multiple .select2-selection__rendered {
  display: inline;
  list-style: none;
  padding: 0;
}
.select2-container .select2-selection--multiple .select2-selection__clear {
  background-color: transparent;
  border: none;
  font-size: 1em;
}
.select2-container .select2-search--inline .select2-search__field {
  box-sizing: border-box;
  border: none;
  font-size: 100%;
  margin-top: 5px;
  margin-left: 5px;
  padding: 0;
  max-width: 100%;
  resize: none;
  height: 18px;
  vertical-align: bottom;
  font-family: sans-serif;
  overflow: hidden;
  word-break: keep-all;
}
.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none;
}
.select2-dropdown {
  background-color: var(--bg-fff);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-small);
  box-sizing: border-box;
  display: block;
  position: absolute;
  left: -100000px;
  width: 100%;
  z-index: 1051;
}
.select2-results {
  display: block;
}
.select2-results__options {
  list-style: none;
  margin: 0;
  padding: 0;
}
.select2-results__option {
  padding: 6px;
  user-select: none;
  -webkit-user-select: none;
}
.select2-results__option--selectable {
  cursor: pointer;
}
.select2-container--open .select2-dropdown {
  left: 0;
}
.select2-container--open .select2-dropdown--above {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.select2-container--open .select2-dropdown--below {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.select2-search--dropdown {
  display: block;
  padding: 4px;
}
.select2-search--dropdown .select2-search__field {
  padding: 4px;
  width: 100%;
  box-sizing: border-box;
}
.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none;
}
.select2-search--dropdown.select2-search--hide {
  display: none;
}
.select2-close-mask {
  border: 0;
  margin: 0;
  padding: 0;
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  min-height: 100%;
  min-width: 100%;
  height: auto;
  width: auto;
  opacity: 0;
  z-index: 99;
  background-color: var(--bg-fff);
  filter: alpha(opacity=0);
}
.select2-hidden-accessible {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
}
.select2-container--default .select2-selection--single {
  background-color: var(--bg-fff);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-small);
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #444;
  line-height: 28px;
}
.select2-container--default .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  height: 26px;
  margin-right: 20px;
  padding-right: 0px;
}
.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #999;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #888 transparent transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0;
}
.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear {
  float: left;
}
.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow {
  left: 1px;
  right: auto;
}
.select2-container--default.select2-container--disabled .select2-selection--single {
  background-color: #eee;
  cursor: default;
}
.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
  display: none;
}
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 4px 5px 4px;
}
.select2-container--default .select2-selection--multiple {
  background-color: var(--bg-fff);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-small);
  cursor: text;
  padding-bottom: 5px;
  padding-right: 5px;
  position: relative;
}
.select2-container--default .select2-selection--multiple.select2-selection--clearable {
  padding-right: 25px;
}
.select2-container--default .select2-selection--multiple .select2-selection__clear {
  cursor: pointer;
  font-weight: bold;
  height: 20px;
  margin-right: 10px;
  margin-top: 5px;
  position: absolute;
  right: 0;
  padding: 1px;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-small);
  box-sizing: border-box;
  display: inline-block;
  margin-left: 5px;
  margin-top: 5px;
  padding: 0;
  padding-left: 20px;
  position: relative;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
  white-space: nowrap;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
  cursor: default;
  padding-left: 2px;
  padding-right: 5px;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  background-color: transparent;
  border: none;
  border-right: 1px solid var(--border-color);
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  color: #999;
  cursor: pointer;
  font-size: 1em;
  font-weight: bold;
  padding: 0 4px;
  position: absolute;
  left: 0;
  top: 0;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover,
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus {
  background-color: #f1f1f1;
  color: #333;
  outline: none;
}
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto;
}
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__display {
  padding-left: 5px;
  padding-right: 2px;
}
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
  border-left: 1px solid var(--border-color);
  border-right: none;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: var(--border-radius-small);
  border-bottom-right-radius: var(--border-radius-small);
}
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__clear {
  float: left;
  margin-left: 10px;
  margin-right: auto;
}
.select2-container--default.select2-container--focus .select2-selection--multiple {
  border: solid black 1px;
  outline: 0;
}
.select2-container--default.select2-container--disabled .select2-selection--multiple {
  background-color: #eee;
  cursor: default;
}
.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
  display: none;
}
.select2-container--default.select2-container--open.select2-container--above .select2-selection--single,
.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.select2-container--default.select2-container--open.select2-container--below .select2-selection--single,
.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
  border: 1px solid var(--border-color);
}
.select2-container--default .select2-search--inline .select2-search__field {
  background: transparent;
  border: none;
  outline: 0;
  box-shadow: none;
  -webkit-appearance: textfield;
}
.select2-container--default .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto;
}
.select2-container--default .select2-results__option .select2-results__option {
  padding-left: 1em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__group {
  padding-left: 0;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -1em;
  padding-left: 2em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -2em;
  padding-left: 3em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -3em;
  padding-left: 4em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -4em;
  padding-left: 5em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -5em;
  padding-left: 6em;
}
.select2-container--default .select2-results__option--group {
  padding: 0;
}
.select2-container--default .select2-results__option--disabled {
  color: #999;
}
.select2-container--default .select2-results__option--selected {
  background-color: #ddd;
}
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: var(--text-color-main);
  color: var(--color-main-color-text);
}
.select2-container--default .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px;
}
.select2-container--classic .select2-selection--single {
  background-color: #f7f7f7;
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-small);
  outline: 0;
  background-image: -webkit-linear-gradient(top, white 50%, #eeeeee 100%);
  background-image: -o-linear-gradient(top, white 50%, #eeeeee 100%);
  background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0);
}
.select2-container--classic .select2-selection--single:focus {
  border: 1px solid var(--text-color-main);
}
.select2-container--classic .select2-selection--single .select2-selection__rendered {
  color: #444;
  line-height: 28px;
}
.select2-container--classic .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  height: 26px;
  margin-right: 20px;
}
.select2-container--classic .select2-selection--single .select2-selection__placeholder {
  color: #999;
}
.select2-container--classic .select2-selection--single .select2-selection__arrow {
  background-color: #ddd;
  border: none;
  border-left: 1px solid var(--border-color);
  border-top-right-radius: var(--border-radius-small);
  border-bottom-right-radius: var(--border-radius-small);
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px;
  background-image: -webkit-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
  background-image: -o-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
  background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0);
}
.select2-container--classic .select2-selection--single .select2-selection__arrow b {
  border-color: #888 transparent transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0;
}
.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear {
  float: left;
}
.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow {
  border: none;
  border-right: 1px solid var(--border-color);
  border-radius: 0;
  border-top-left-radius: var(--border-radius-small);
  border-bottom-left-radius: var(--border-radius-small);
  left: 1px;
  right: auto;
}
.select2-container--classic.select2-container--open .select2-selection--single {
  border: 1px solid var(--text-color-main);
}
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
  background: transparent;
  border: none;
}
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 4px 5px 4px;
}
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  background-image: -webkit-linear-gradient(top, white 0%, #eeeeee 50%);
  background-image: -o-linear-gradient(top, white 0%, #eeeeee 50%);
  background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0);
}
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  background-image: -webkit-linear-gradient(top, #eeeeee 50%, white 100%);
  background-image: -o-linear-gradient(top, #eeeeee 50%, white 100%);
  background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0);
}
.select2-container--classic .select2-selection--multiple {
  background-color: white;
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-small);
  cursor: text;
  outline: 0;
  padding-bottom: 5px;
  padding-right: 5px;
}
.select2-container--classic .select2-selection--multiple:focus {
  border: 1px solid var(--text-color-main);
}
.select2-container--classic .select2-selection--multiple .select2-selection__clear {
  display: none;
}
.select2-container--classic .select2-selection--multiple .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-small);
  display: inline-block;
  margin-left: 5px;
  margin-top: 5px;
  padding: 0;
}
.select2-container--classic .select2-selection--multiple .select2-selection__choice__display {
  cursor: default;
  padding-left: 2px;
  padding-right: 5px;
}
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
  background-color: transparent;
  border: none;
  border-top-left-radius: var(--border-radius-small);
  border-bottom-left-radius: var(--border-radius-small);
  color: #888;
  cursor: pointer;
  font-size: 1em;
  font-weight: bold;
  padding: 0 4px;
}
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #555;
  outline: none;
}
.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto;
}
.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__display {
  padding-left: 5px;
  padding-right: 2px;
}
.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: var(--border-radius-small);
  border-bottom-right-radius: var(--border-radius-small);
}
.select2-container--classic.select2-container--open .select2-selection--multiple {
  border: 1px solid var(--text-color-main);
}
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.select2-container--classic .select2-search--dropdown .select2-search__field {
  border: 1px solid var(--border-color);
  outline: 0;
}
.select2-container--classic .select2-search--inline .select2-search__field {
  outline: 0;
  box-shadow: none;
}
.select2-container--classic .select2-dropdown {
  background-color: white;
  border: 1px solid transparent;
}
.select2-container--classic .select2-dropdown--above {
  border-bottom: none;
}
.select2-container--classic .select2-dropdown--below {
  border-top: none;
}
.select2-container--classic .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto;
}
.select2-container--classic .select2-results__option--group {
  padding: 0;
}
.select2-container--classic .select2-results__option--disabled {
  color: grey;
}
.select2-container--classic .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: var(--text-color-main);
  color: white;
}
.select2-container--classic .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px;
}
.select2-container--classic.select2-container--open .select2-dropdown {
  border-color: var(--text-color-main);
}
/* --------------------- https://redmine-evolution.com/ -- */
/*  END SELECT  2 */
/* START CASTOM SELECT 2 */
body #columns + .select2,
body #sidebar #columns + .select2,
body .select2 ~ *,
body #sidebar .select2 ~ *,
body input[type="text"] ~ *,
body #sidebar input[type="text"] ~ *,
body .jcf-select ~ *,
body #sidebar .jcf-select ~ *,
body textarea ~ *,
body #sidebar textarea ~ *,
body input[type="submit"] + a.icon,
body #sidebar input[type="submit"] + a.icon {
  margin: 5px 0 5px 10px !important;
}
body input[type="text"] ~ #issue_deal,
body #sidebar input[type="text"] ~ #issue_deal {
  margin: 0 !important;
}
body input[type="text"] + br,
body #sidebar input[type="text"] + br {
  display: none !important;
}
body input[type="text"] ~ .jcf-select,
body #sidebar input[type="text"] ~ .jcf-select {
  min-width: 50px;
}
body .simplecolorpicker,
body #sidebar .simplecolorpicker {
  margin: 0 !important;
}
body #preview_settings_welcome_text,
body #sidebar #preview_settings_welcome_text {
  margin: 0 !important;
}
body .select2,
body #sidebar .select2 {
  -moz-appearance: none;
  -webkit-appearance: none;
  -o-appearance: none;
  outline: 0 none;
}
body .select2 > *,
body #sidebar .select2 > * {
  -moz-appearance: none;
  -webkit-appearance: none;
  -o-appearance: none;
  outline: 0 none;
}
body select[multiple] + .select2-container--default,
body #sidebar select[multiple] + .select2-container--default {
  height: auto;
}
body .select2-container--default,
body #sidebar .select2-container--default {
  display: inline-block;
  vertical-align: top;
  position: relative;
  background: var(--bg-fff);
  margin: 0;
  min-width: 150px;
  height: 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid var(--border-color);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  cursor: pointer;
  flex: 1 0 0;
  -moz-appearance: none;
  -webkit-appearance: none;
  -o-appearance: none;
  outline: 0 none;
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
}
body .select2-container--default .select2-selection--multiple,
body #sidebar .select2-container--default .select2-selection--multiple {
  display: flex;
  padding-bottom: 0;
}
body .select2-container--default > *,
body #sidebar .select2-container--default > * {
  -moz-appearance: none;
  -webkit-appearance: none;
  -o-appearance: none;
  outline: 0 none;
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
}
body .select2-container--default:hover .select2-selection--single:after,
body #sidebar .select2-container--default:hover .select2-selection--single:after,
body .select2-container--default.select2-container--open .select2-selection--single:after,
body #sidebar .select2-container--default.select2-container--open .select2-selection--single:after {
  color: var(--color-main-color);
}
body .select2-container--default:hover .select2-selection--single .select2-selection__arrow:after,
body #sidebar .select2-container--default:hover .select2-selection--single .select2-selection__arrow:after,
body .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow:after,
body #sidebar .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow:after {
  color: var(--color-main-color);
}
body .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow:after,
body #sidebar .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
body .select2-container--default .select2-results__group,
body #sidebar .select2-container--default .select2-results__group {
  padding: 0;
}
body .select2-container--default .select2-selection--single,
body #sidebar .select2-container--default .select2-selection--single {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  display: block;
  font-size: 0.85714286rem;
  color: var(--text-color-main);
  padding: 0 30px 0 10px;
  margin: 0;
  z-index: 1;
  border: 0;
  height: 100%;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  background-image: none !important;
  -moz-appearance: none;
  -webkit-appearance: none;
  -o-appearance: none;
  outline: 0 none;
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
}
body .select2-container--default .select2-selection--single.icon,
body #sidebar .select2-container--default .select2-selection--single.icon {
  height: 28px;
  min-height: 28px;
}
body .select2-container--default .select2-selection--single:after,
body #sidebar .select2-container--default .select2-selection--single:after {
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: var(--icon-width);
  height: var(--icon-width);
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
  color: var(--color-dark-grey);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body .select2-container--default .select2-selection--single .select2-selection__rendered,
body #sidebar .select2-container--default .select2-selection--single .select2-selection__rendered {
  padding: 0;
  height: 100%;
  font-size: 0.85714286rem;
  line-height: 30px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
}
body .select2-container--default .select2-selection--single .select2-selection__clear,
body #sidebar .select2-container--default .select2-selection--single .select2-selection__clear {
  width: 28px;
  height: 28px;
  position: relative;
  overflow: hidden;
  color: var(--bg-fff);
  margin: 0;
}
body .select2-container--default .select2-selection--single .select2-selection__clear:after,
body #sidebar .select2-container--default .select2-selection--single .select2-selection__clear:after {
  display: block;
  clear: both;
  position: absolute;
  top: -1px;
  left: -1px;
  width: 28px;
  height: 28px;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 18px;
  line-height: 28px;
  color: var(--color-dark-grey);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body .select2-container--default .select2-selection--single .select2-selection__clear:hover:after,
body #sidebar .select2-container--default .select2-selection--single .select2-selection__clear:hover:after {
  color: var(--color-red);
}
body .select2-container--default .select2-selection--single .select2-selection,
body #sidebar .select2-container--default .select2-selection--single .select2-selection {
  margin: 2px 44px 3px 10px;
  border: 0;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
}
body .select2-container--default .select2-selection--single .select2-selection__arrow,
body #sidebar .select2-container--default .select2-selection--single .select2-selection__arrow {
  position: absolute;
  text-align: center;
  height: var(--icon-width);
  width: var(--icon-width);
  right: 0px;
  top: 0;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
}
body .select2-container--default .select2-selection--single .select2-selection__arrow:after,
body #sidebar .select2-container--default .select2-selection--single .select2-selection__arrow:after {
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  height: var(--icon-width);
  width: var(--icon-width);
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-width);
  line-height: var(--icon-width);
  color: var(--border-color-content);
}
body .select2-container--default .select2-selection--single .select2-selection__arrow b,
body #sidebar .select2-container--default .select2-selection--single .select2-selection__arrow b {
  display: none;
}
body .select2-container--default .select2-selection--multiple,
body #sidebar .select2-container--default .select2-selection--multiple {
  border: 0 !important;
  height: 100%;
}
body .select2-container--default .select2-selection--multiple .select2-selection__clear,
body #sidebar .select2-container--default .select2-selection--multiple .select2-selection__clear {
  margin-top: 0;
  padding: 0;
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  text-align: center;
  font-size: 1.28571429rem;
  line-height: var(--icon-width-small);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  background: var(--text-color-main);
  color: var(--color-main-color-text);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
body .select2-container--default .select2-selection--multiple .select2-selection__clear:after,
body #sidebar .select2-container--default .select2-selection--multiple .select2-selection__clear:after {
  display: none;
}
body .select2-container--default .select2-selection--multiple .select2-selection__clear:hover,
body #sidebar .select2-container--default .select2-selection--multiple .select2-selection__clear:hover {
  background: var(--bg-box);
  color: var(--text-color-main);
}
body .select2-container--default .select2-selection--multiple .select2-selection__choice,
body #sidebar .select2-container--default .select2-selection--multiple .select2-selection__choice {
  color: var(--text-color-main);
  vertical-align: top;
  border-radius: 3px;
  padding: 3px 4px;
  font-size: 0.7857rem;
  line-height: 1.1;
  margin: 2px 10px 2px 0;
  background: var(--bg-box);
  -webkit-transition: all var(--time-hover) ease;
  -moz-transition: all var(--time-hover) ease;
  -ms-transition: all var(--time-hover) ease;
  -o-transition: all var(--time-hover) ease;
  transition: all var(--time-hover) ease;
  border: 1px solid var(--color-main-color);
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  max-width: calc(100% - 4px);
}
body .select2-container--default .select2-selection--multiple .select2-selection__rendered,
body #sidebar .select2-container--default .select2-selection--multiple .select2-selection__rendered {
  margin: 0;
  height: 100%;
  display: flex;
  align-items: center;
  padding: 4px 10px;
  flex-wrap: wrap;
}
body .select2-container--default .select2-selection--multiple .select2-selection__choice__remove,
body #sidebar .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  position: static;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
  color: var(--color-main-color-text);
  width: 12px;
  height: 12px;
  padding: 0;
  margin: 0 5px 0 0;
  overflow: hidden;
  text-align: center;
  background: var(--color-main-color);
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 1px;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  display: inline-block;
}
body .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover,
body #sidebar .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: var(--color-main-color);
  background: var(--color-main-color-text);
}
body .select2-container--default .select2-search--inline .select2-search__field,
body #sidebar .select2-container--default .select2-search--inline .select2-search__field {
  padding-left: 10px;
  padding-right: 10px;
  height: 30px;
  line-height: 30px;
}
.select2-container .select2-search__field {
  border-color: var(--border-color);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  outline: none;
}
.select2-container .select2-dropdown {
  border-color: var(--border-color);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 0 0 -1px;
}
.select2-container .select2-dropdown .select2-results__group {
  display: block;
  padding: 5px 10px;
  position: relative;
}
.select2-container .select2-dropdown .select2-results__group:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  opacity: 0.5;
  background: var(--super_grey_light);
  z-index: -1;
}
.select2-container .select2-dropdown li {
  position: relative;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  padding: 5px 10px !important;
}
.select2-container .select2-dropdown li:empty {
  display: none;
}
.select2-container .select2-dropdown li.select2-results__option--group {
  padding: 0 !important;
}
.select2-container .select2-dropdown li.select2-results__option[role="group"] {
  padding: 0 !important;
}
.select2-container .select2-dropdown li.select2-results__option[role="group"]:after {
  display: none;
}
.select2-container .select2-dropdown li span {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  position: relative;
  padding: 5px 10px;
}
.select2-container .select2-dropdown li:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 100%;
  background: var(--all-hover-bg);
  z-index: -1;
  -webkit-transition: width var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out;
}
.select2-container .select2-dropdown li:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  height: 1px;
  width: 100%;
  background: var(--border-color);
}
.select2-container .select2-dropdown li.select2-results__option[aria-disabled=true]:after {
  width: 100% !important;
  background: var(--super_grey_light) !important;
}
.select2-container .select2-dropdown li:not(.select2-results__option--group):not(.select2-results__option[role="group"]):hover {
  color: var(--text-color-main);
}
.select2-container .select2-dropdown li:not(.select2-results__option--group):not(.select2-results__option[role="group"]):hover:after {
  width: 100%;
}
.select2-container .select2-dropdown li.select2-results__option--highlighted[aria-selected] {
  color: var(--text-color-main);
  background: none;
}
.select2-container .select2-dropdown li.select2-results__option--highlighted[aria-selected]:after {
  width: 100%;
}
.select2-container .select2-dropdown li.select2-results__option--selected[aria-selected=true],
.select2-container .select2-dropdown li.select2-results__option--selected[aria-selected=false] {
  color: var(--notice-error-main-text) !important;
  background: none;
}
.select2-container .select2-dropdown li.select2-results__option--selected[aria-selected=true]:after,
.select2-container .select2-dropdown li.select2-results__option--selected[aria-selected=false]:after {
  background: var(--notice-error-bg) !important;
  width: 100%;
}
.select2-container .select2-dropdown img {
  margin: 0 10px 0 0;
  display: block;
}
.select2-container .select2-results__option {
  /*padding: 0 ;   віпадайки тегов*/
}
.select2-container .select2-contact__name {
  margin-left: 0;
}
.select2-container .select2-contact__email {
  margin-left: 10px;
}
/* END CASTOM SELECT 2 */
/* --------------------- https://redmine-evolution.com/ -- */
/* START GENERAL STYLE */
body.avatars-on div.journal {
  padding-left: 0;
}
html {
  font-size: 14px;
  scroll-behavior: smooth;
}
html,
body {
  height: 100%;
  min-height: 100%;
  margin: 0;
  color: var(--text-color-main);
}
html > body #main #content {
  min-height: 0;
}
.touchdevice #wrapper {
  max-height: 9999999999999999999px;
}
.touchdevice #wrapper #wrapper2 {
  max-height: 9999999999999999999px;
}
.touchdevice #wrapper #wrapper2 #wrapper3 {
  max-height: 9999999999999999999px;
}
body {
  min-width: 320px;
  font-size: 1rem;
  line-height: 1.4;
  font-family: sans-serif;
  background: var(--main-background);
  position: relative;
  padding: 0 !important;
}
body .query-columns {
  height: auto;
}
body input,
body select,
body textarea,
body button {
  outline: 0 none;
}
body table.query-columns td.buttons br {
  display: none;
}
body .hidden-box {
  display: none !important;
}
body a {
  outline: 0;
}
body abbr,
body span.field-description[title] {
  text-decoration: none;
}
body table tr:hover a.wiki-anchor {
  opacity: 1;
}
body a.wiki-anchor {
  display: inline-block !important;
  overflow: hidden;
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  position: relative;
  font-size: 0px !important;
  line-height: 0px !important;
  vertical-align: bottom;
  opacity: 0;
}
body a.wiki-anchor:after {
  text-indent: 0;
  content: "\E11D";
  text-align: center;
  position: absolute;
  color: var(--icon-color);
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body a.wiki-anchor:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
body a.wiki-anchor:hover:after {
  color: var(--icon-color-hover);
}
body a.wiki-anchor:hover:before {
  background-color: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
body input,
body select,
body button {
  height: auto;
}
body select {
  height: 30px;
}
body select[class*=select2] {
  background-image: none;
}
body #project-jump .drdn-trigger,
body #project-jump .drdn.expanded .drdn-trigger,
body select,
body .icon-expended,
body .icon-sorted-asc,
body button.tab-left,
body button.tab-right {
  background-image: none !important;
}
body #wrapper3 {
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 0 42px;
}
body #main {
  /*display: block;*/
}
body h1,
body h2,
body h3,
body h4 {
  font-family: sans-serif;
}
.contextual > *:not(:first-child),
.buttons > .icon:not(:first-child),
.contextual .journal-actions > *:not(:first-child) {
  margin-left: 0;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
pre,
code {
  overflow-x: auto;
}
hr {
  background: var(--border-color);
}
.highlight {
  padding: 5px 10px;
  display: inline-block;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START WORKING */
#watchers a.delete {
  opacity: 1;
}
.hidden {
  position: fixed;
  top: -99999999px;
  left: -99999999px;
}
.icon.found {
  background: none;
  padding: 0 0 0 calc(var(--icon-width) + 5px);
  line-height: var(--icon-width);
  display: inline-block;
  position: relative;
}
.icon.found:after {
  position: absolute;
  top: 0;
  left: 0;
  width: var(--icon-width);
  height: var(--icon-width);
}
.icon.found.icon-ok:after {
  color: var(--notice-successfu-main);
}
.icon.found.icon-warning:after {
  color: var(--notice-worning-main);
}
table.list:not(.odd-even) tbody tr:nth-child(2n+1):hover,
.odd:hover,
#issue-changesets div.changeset:nth-child(2n+1):hover,
table.list:not(.odd-even) tbody tr:nth-child(2n):hover,
#issue-changesets div.changeset:nth-child(2n):hover {
  background: none !important;
}
.icon:not(td),
a[href*="questions_sections/new"] {
  padding: 0 0 0 calc(var(--icon-width) + 5px);
  line-height: var(--icon-width);
  min-height: var(--icon-width);
  display: inline-block;
  position: relative;
  background: none;
}
.icon:not(td):after,
a[href*="questions_sections/new"]:after {
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: var(--icon-width);
  height: var(--icon-width);
}
.issue .icon-email {
  padding: 0 0 0 30px;
  min-height: var(--icon-smaller-width);
  line-height: var(--icon-smaller-width);
}
.issue .icon-email:after {
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
}
.issue span.icon-email {
  color: var(--icon-color-bg);
}
table .icon,
table a[href*="questions_sections/new"] {
  vertical-align: top;
}
.flyout-is-active #wrapper {
  right: 0 !important;
  overflow: hidden;
}
.flyout-is-active #wrapper:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--flyout_menu_bg);
  opacity: 0.5;
}
.flyout-is-active #wrapper #wrapper2 {
  margin: 0 0 0 -250px;
}
.flyout-is-active .flyout-menu {
  right: 0;
}
a:after {
  font-size: 0px;
  line-height: 0px;
}
.touchdevice #wrapper #wrapper2 {
  min-height: 100%;
}
#wrapper {
  position: relative;
  background: none;
  min-height: 100% !important;
  right: 0;
  background-size: cover;
  display: flex;
}
#wrapper tr.group a.toggle-all {
  display: inline-block;
  visibility: hidden;
}
#wrapper tr.group:hover a.toggle-all {
  visibility: visible;
}
#wrapper tr.group span.totals {
  color: var(--text-color-main);
}
#wrapper h1,
#wrapper h2,
#wrapper h3,
#wrapper h4 {
  font-family: sans-serif;
  font-weight: 700;
}
#wrapper:before {
  content: '';
  display: block;
  clear: both;
  position: fixed;
  top: 50%;
  left: 50%;
  visibility: visible;
  background: url("../images/redmine-evolution.svg") 50% 50% no-repeat;
  background-size: contain;
  width: 100px;
  height: 100px;
  margin: -130px 0 0 -50px;
  -webkit-transition: opacity var(--time-main) ease-in-out;
  -moz-transition: opacity var(--time-main) ease-in-out;
  -ms-transition: opacity var(--time-main) ease-in-out;
  -o-transition: opacity var(--time-main) ease-in-out;
  transition: opacity var(--time-main) ease-in-out;
}
#wrapper:after {
  content: '';
  display: block;
  clear: both;
  visibility: visible;
  background: url("../images/spiner.svg") 50% 50% no-repeat;
  background-size: contain;
  width: 50px;
  height: 50px;
  position: fixed;
  top: 50%;
  left: 50%;
  margin: -25px 0 0 -25px;
  -webkit-transition: opacity var(--time-main) ease-in-out;
  -moz-transition: opacity var(--time-main) ease-in-out;
  -ms-transition: opacity var(--time-main) ease-in-out;
  -o-transition: opacity var(--time-main) ease-in-out;
  transition: opacity var(--time-main) ease-in-out;
}
#wrapper #wrapper2 {
  opacity: 0;
  margin: 0;
  width: 100%;
  min-height: 100vh;
  position: relative;
  background: var(--bg-body);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: opacity var(--time-main) ease-in-out, margin var(--time-main) ease-in-out;
  -moz-transition: opacity var(--time-main) ease-in-out, margin var(--time-main) ease-in-out;
  -ms-transition: opacity var(--time-main) ease-in-out, margin var(--time-main) ease-in-out;
  -o-transition: opacity var(--time-main) ease-in-out, margin var(--time-main) ease-in-out;
  transition: opacity var(--time-main) ease-in-out, margin var(--time-main) ease-in-out;
}
#wrapper > * {
  opacity: 0;
  -webkit-transition: opacity var(--time-main) ease-in-out;
  -moz-transition: opacity var(--time-main) ease-in-out;
  -ms-transition: opacity var(--time-main) ease-in-out;
  -o-transition: opacity var(--time-main) ease-in-out;
  transition: opacity var(--time-main) ease-in-out;
}
.no-animate #wrapper #wrapper2 {
  -webkit-transition: opacity var(--time-main) ease-in-out;
  -moz-transition: opacity var(--time-main) ease-in-out;
  -ms-transition: opacity var(--time-main) ease-in-out;
  -o-transition: opacity var(--time-main) ease-in-out;
  transition: opacity var(--time-main) ease-in-out;
}
.start:after {
  opacity: 0;
}
.start #wrapper:before,
.start #wrapper:after {
  opacity: 0;
}
.start #wrapper > *,
.start #wrapper #wrapper2 {
  opacity: 1;
  z-index: 2;
}
/* END START WORKING */
/* --------------------- https://redmine-evolution.com/ -- */
/* START FORM STYLE */
input[type="button"],
input[type="submit"] {
  cursor: pointer;
}
input {
  -webkit-appearance: none;
}
/* START CHECKBOX */
input[type='checkbox'] {
  -moz-appearance: none;
  -webkit-appearance: none;
  -o-appearance: none;
  position: relative;
  outline: 0 none;
  height: 18px !important;
  width: 18px !important;
  margin: 0 5px 0 0;
  border: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: none;
}
input[type='checkbox']:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 18px;
  width: 18px;
  background: var(--bg-fff);
  border: 1px solid var(--border-color-content);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: var(--border-radius-small);
  cursor: pointer;
  margin: 0;
}
input[type='checkbox']:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) skew(-5deg) rotate(-50deg);
  margin: -1px 0 0;
  height: 4px;
  width: 10px;
  border: 2px solid var(--color-main-color);
  border-right: none;
  border-top: none;
  opacity: 0;
  -webkit-transition: opacity var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out;
}
input[type='checkbox']:checked:after {
  opacity: 1;
}
input[type='checkbox']:disabled:before {
  background: var(--border-color);
  border: 1px solid var(--border-color);
}
/*END CHECKBOX*/
/* START RADIO */
input[type='radio'] {
  -moz-appearance: none;
  -webkit-appearance: none;
  -o-appearance: none;
  position: relative;
  outline: 0 none;
  height: 18px !important;
  width: 18px !important;
  margin: 0 5px 0 0;
  border: 0;
  background: none;
}
input[type='radio']:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  height: 18px;
  width: 18px;
  background: var(--bg-fff);
  border: 1px solid var(--border-color-content);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
  cursor: pointer;
}
input[type='radio']:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -5px 0 0 -5px;
  width: 10px;
  height: 10px;
  background: var(--color-main-color);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
  opacity: 0;
  -webkit-transition: opacity var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out;
}
input[type='radio']:checked:after {
  opacity: 1;
}
/*END RADIO*/
/* END FORM STYLE */
/* START TOOLTIP */
body div.tooltip-new {
  position: absolute;
  z-index: 1070;
  display: block;
  font-size: 0.7857rem;
  font-style: normal;
  font-weight: bold;
  line-height: 1.4;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  white-space: normal;
  filter: alpha(opacity=0);
  opacity: 0;
  line-break: auto;
}
body div.tooltip-new.in {
  filter: alpha(opacity=100);
  opacity: 1;
}
body div.tooltip-new.top {
  padding: 5px 0;
  margin-top: -3px;
}
body div.tooltip-new.right {
  padding: 0 5px;
  margin-left: 3px;
}
body div.tooltip-new.bottom {
  padding: 5px 0;
  margin-top: 3px;
}
body div.tooltip-new.left {
  padding: 0 5px;
  margin-left: -3px;
}
body div.tooltip-new .tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: var(--tooltip-color);
  text-align: center;
  background-color: var(--tooltip-bg);
  border-radius: var(--border-radius-small);
  -webkit-box-shadow: var(--box-shadow-null);
  -moz-box-shadow: var(--box-shadow-null);
  box-shadow: var(--box-shadow-null);
}
body div.tooltip-new div.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
body div.tooltip-new.top div.tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: var(--tooltip-bg);
}
body div.tooltip-new.top-left div.tooltip-arrow {
  right: 5px;
  bottom: 0;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: var(--tooltip-bg);
}
body div.tooltip-new.top-right div.tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: var(--tooltip-bg);
}
body div.tooltip-new.right div.tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: var(--tooltip-bg);
}
body div.tooltip-new.left div.tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: var(--tooltip-bg);
}
body div.tooltip-new.bottom div.tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: var(--tooltip-bg);
}
body div.tooltip-new.bottom-left div.tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: var(--tooltip-bg);
}
body div.tooltip-new.bottom-right div.tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: var(--tooltip-bg);
}
/* END TOOLTIP */
/* --------------------- https://redmine-evolution.com/ -- */
#new-relation-form p {
  display: flex;
  align-items: center;
}
#new-relation-form p input[type="text"] {
  margin: 0 10px 0 10px;
}
#new-relation-form p input[type="submit"] {
  margin: 0 !important;
  -webkit-border-radius: var(--border-radius-small) !important;
  -moz-border-radius: var(--border-radius-small) !important;
  border-radius: var(--border-radius-small) !important;
}
#new-relation-form p input[type="submit"] + a {
  background: var(--button-bg);
  color: var(--button-color);
  -webkit-border-radius: var(--border-radius-small) !important;
  -moz-border-radius: var(--border-radius-small) !important;
  border-radius: var(--border-radius-small) !important;
}
#new-relation-form p input[type="submit"] + a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
.controller-notes #main .attachments,
.controller-attachments #main .attachments {
  margin-top: 0;
}
.controller-notes #main .attachments table,
.controller-attachments #main .attachments table {
  margin-top: 0;
  padding-top: 0;
}
.controller-notes #main .attachments table .icon-attachment,
.controller-attachments #main .attachments table .icon-attachment {
  min-height: 0;
  line-height: inherit;
}
/* START MAIN */
#main {
  z-index: 1;
  background: none;
  padding: 0 30px 20px 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: margin-left var(--time-main) ease-in-out;
  -moz-transition: margin-left var(--time-main) ease-in-out;
  -ms-transition: margin-left var(--time-main) ease-in-out;
  -o-transition: margin-left var(--time-main) ease-in-out;
  transition: margin-left var(--time-main) ease-in-out;
  /* START BG BODY FOR BUTTON */
  /* END BG BODY FOR BUTTON */
  /* START AGILE */
  /* END AGILE */
  /*  !!!!!   END FOR BUTTON */
}
#main .tag-label-color:after {
  display: none !important;
}
#main #admin-index .nodata .jcf-select {
  margin: 10px 0;
}
#main #admin-index .nodata p {
  margin: 15px 0;
}
#main .attachments {
  position: relative;
  margin: 0 0 20px;
}
#main .attachments.done-attachments {
  margin: 0;
}
#main .attachments .thumbnails {
  display: none;
}
#main .attachments table .delete {
  float: right;
}
#main .attachments .contextual {
  top: 0 !important;
}
#main .attachments a.icon {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#main span.icon-zoom-in,
#main span.icon-zoom-out {
  padding: 0;
  font-size: 0;
  line-height: 0;
  overflow: hidden;
  min-height: 0;
  min-width: 0;
}
#main span.icon-zoom-in:after,
#main span.icon-zoom-out:after {
  color: var(--color-red);
}
#main .open .icon-folder {
  background: none;
}
#main a[href*="dmsf/webdav"],
#main .icon-fancybox,
#main a.current-from-address,
#main .repeat-value,
#main .contextual:not(.next-prev-links) a:not(#show_note_form_extras),
#main .contextual a[href="/issues"],
#main .contextual a[href="/time_entries"],
#main .contextual a[href="/activity"],
#main .toggle-multiselect,
#main .avatar.extended .delete,
#main a[href*="questions_sections/new"],
#main .hold-control .controls .btn,
#main #checklist_form_items .new span.icon,
#main .fa-pencil,
#main #content #comments .contextual a[href*="order_comments"],
#main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"],
#main .query-columns .buttons span,
#main #sidebar .contextual a,
#main a.open-filter,
#main a.html,
#main a.txt,
#main a.odt,
#main a.icon:not(.add-checklist-item),
#main span.icon-only,
#main a.atom,
#main a.csv,
#main a.pdf,
#main .sort-handle,
#main a.icon-settings,
#main a.icon-close,
#main a.icon-only,
#main a.png,
#main a.vcf,
#main a.xls,
#main a.project,
#main #operation_contact_id_add_link,
#main #deal_contact_id_add_link,
#main #expense_contact_id_add_link,
#main #invoice_contact_id_add_link,
#main #order_contact_id_add_link,
#main #company_profile_edit a,
#main .icon-not-ok {
  opacity: 1 !important;
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  vertical-align: middle;
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  cursor: pointer;
}
#main a[href*="dmsf/webdav"]:after,
#main .icon-fancybox:after,
#main a.current-from-address:after,
#main .repeat-value:after,
#main .contextual:not(.next-prev-links) a:not(#show_note_form_extras):after,
#main .contextual a[href="/issues"]:after,
#main .contextual a[href="/time_entries"]:after,
#main .contextual a[href="/activity"]:after,
#main .toggle-multiselect:after,
#main .avatar.extended .delete:after,
#main a[href*="questions_sections/new"]:after,
#main .hold-control .controls .btn:after,
#main #checklist_form_items .new span.icon:after,
#main .fa-pencil:after,
#main #content #comments .contextual a[href*="order_comments"]:after,
#main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:after,
#main .query-columns .buttons span:after,
#main #sidebar .contextual a:after,
#main a.open-filter:after,
#main a.html:after,
#main a.txt:after,
#main a.odt:after,
#main a.icon:not(.add-checklist-item):after,
#main span.icon-only:after,
#main a.atom:after,
#main a.csv:after,
#main a.pdf:after,
#main .sort-handle:after,
#main a.icon-settings:after,
#main a.icon-close:after,
#main a.icon-only:after,
#main a.png:after,
#main a.vcf:after,
#main a.xls:after,
#main a.project:after,
#main #operation_contact_id_add_link:after,
#main #deal_contact_id_add_link:after,
#main #expense_contact_id_add_link:after,
#main #invoice_contact_id_add_link:after,
#main #order_contact_id_add_link:after,
#main #company_profile_edit a:after,
#main .icon-not-ok:after {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main a[href*="dmsf/webdav"]:before,
#main .icon-fancybox:before,
#main a.current-from-address:before,
#main .repeat-value:before,
#main .contextual:not(.next-prev-links) a:not(#show_note_form_extras):before,
#main .contextual a[href="/issues"]:before,
#main .contextual a[href="/time_entries"]:before,
#main .contextual a[href="/activity"]:before,
#main .toggle-multiselect:before,
#main .avatar.extended .delete:before,
#main a[href*="questions_sections/new"]:before,
#main .hold-control .controls .btn:before,
#main #checklist_form_items .new span.icon:before,
#main .fa-pencil:before,
#main #content #comments .contextual a[href*="order_comments"]:before,
#main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:before,
#main .query-columns .buttons span:before,
#main #sidebar .contextual a:before,
#main a.open-filter:before,
#main a.html:before,
#main a.txt:before,
#main a.odt:before,
#main a.icon:not(.add-checklist-item):before,
#main span.icon-only:before,
#main a.atom:before,
#main a.csv:before,
#main a.pdf:before,
#main .sort-handle:before,
#main a.icon-settings:before,
#main a.icon-close:before,
#main a.icon-only:before,
#main a.png:before,
#main a.vcf:before,
#main a.xls:before,
#main a.project:before,
#main #operation_contact_id_add_link:before,
#main #deal_contact_id_add_link:before,
#main #expense_contact_id_add_link:before,
#main #invoice_contact_id_add_link:before,
#main #order_contact_id_add_link:before,
#main #company_profile_edit a:before,
#main .icon-not-ok:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main a[href*="dmsf/webdav"]:hover,
#main .icon-fancybox:hover,
#main a.current-from-address:hover,
#main .repeat-value:hover,
#main .contextual:not(.next-prev-links) a:not(#show_note_form_extras):hover,
#main .contextual a[href="/issues"]:hover,
#main .contextual a[href="/time_entries"]:hover,
#main .contextual a[href="/activity"]:hover,
#main .toggle-multiselect:hover,
#main .avatar.extended .delete:hover,
#main a[href*="questions_sections/new"]:hover,
#main .hold-control .controls .btn:hover,
#main #checklist_form_items .new span.icon:hover,
#main .fa-pencil:hover,
#main #content #comments .contextual a[href*="order_comments"]:hover,
#main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover,
#main .query-columns .buttons span:hover,
#main #sidebar .contextual a:hover,
#main a.open-filter:hover,
#main a.html:hover,
#main a.txt:hover,
#main a.odt:hover,
#main a.icon:not(.add-checklist-item):hover,
#main span.icon-only:hover,
#main a.atom:hover,
#main a.csv:hover,
#main a.pdf:hover,
#main .sort-handle:hover,
#main a.icon-settings:hover,
#main a.icon-close:hover,
#main a.icon-only:hover,
#main a.png:hover,
#main a.vcf:hover,
#main a.xls:hover,
#main a.project:hover,
#main #operation_contact_id_add_link:hover,
#main #deal_contact_id_add_link:hover,
#main #expense_contact_id_add_link:hover,
#main #invoice_contact_id_add_link:hover,
#main #order_contact_id_add_link:hover,
#main #company_profile_edit a:hover,
#main .icon-not-ok:hover {
  color: var(--icon_color_active);
  background-image: none !important;
}
#main a[href*="dmsf/webdav"]:hover:before,
#main .icon-fancybox:hover:before,
#main a.current-from-address:hover:before,
#main .repeat-value:hover:before,
#main .contextual:not(.next-prev-links) a:not(#show_note_form_extras):hover:before,
#main .contextual a[href="/issues"]:hover:before,
#main .contextual a[href="/time_entries"]:hover:before,
#main .contextual a[href="/activity"]:hover:before,
#main .toggle-multiselect:hover:before,
#main .avatar.extended .delete:hover:before,
#main a[href*="questions_sections/new"]:hover:before,
#main .hold-control .controls .btn:hover:before,
#main #checklist_form_items .new span.icon:hover:before,
#main .fa-pencil:hover:before,
#main #content #comments .contextual a[href*="order_comments"]:hover:before,
#main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover:before,
#main .query-columns .buttons span:hover:before,
#main #sidebar .contextual a:hover:before,
#main a.open-filter:hover:before,
#main a.html:hover:before,
#main a.txt:hover:before,
#main a.odt:hover:before,
#main a.icon:not(.add-checklist-item):hover:before,
#main span.icon-only:hover:before,
#main a.atom:hover:before,
#main a.csv:hover:before,
#main a.pdf:hover:before,
#main .sort-handle:hover:before,
#main a.icon-settings:hover:before,
#main a.icon-close:hover:before,
#main a.icon-only:hover:before,
#main a.png:hover:before,
#main a.vcf:hover:before,
#main a.xls:hover:before,
#main a.project:hover:before,
#main #operation_contact_id_add_link:hover:before,
#main #deal_contact_id_add_link:hover:before,
#main #expense_contact_id_add_link:hover:before,
#main #invoice_contact_id_add_link:hover:before,
#main #order_contact_id_add_link:hover:before,
#main #company_profile_edit a:hover:before,
#main .icon-not-ok:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main a[href*="dmsf/webdav"].selected,
#main .icon-fancybox.selected,
#main a.current-from-address.selected,
#main .repeat-value.selected,
#main .contextual:not(.next-prev-links) a:not(#show_note_form_extras).selected,
#main .contextual a[href="/issues"].selected,
#main .contextual a[href="/time_entries"].selected,
#main .contextual a[href="/activity"].selected,
#main .toggle-multiselect.selected,
#main .avatar.extended .delete.selected,
#main a[href*="questions_sections/new"].selected,
#main .hold-control .controls .btn.selected,
#main #checklist_form_items .new span.icon.selected,
#main .fa-pencil.selected,
#main #content #comments .contextual a[href*="order_comments"].selected,
#main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"].selected,
#main .query-columns .buttons span.selected,
#main #sidebar .contextual a.selected,
#main a.open-filter.selected,
#main a.html.selected,
#main a.txt.selected,
#main a.odt.selected,
#main a.icon:not(.add-checklist-item).selected,
#main span.icon-only.selected,
#main a.atom.selected,
#main a.csv.selected,
#main a.pdf.selected,
#main .sort-handle.selected,
#main a.icon-settings.selected,
#main a.icon-close.selected,
#main a.icon-only.selected,
#main a.png.selected,
#main a.vcf.selected,
#main a.xls.selected,
#main a.project.selected,
#main #operation_contact_id_add_link.selected,
#main #deal_contact_id_add_link.selected,
#main #expense_contact_id_add_link.selected,
#main #invoice_contact_id_add_link.selected,
#main #order_contact_id_add_link.selected,
#main #company_profile_edit a.selected,
#main .icon-not-ok.selected {
  color: var(--icon_color_active);
}
#main a[href*="dmsf/webdav"].selected:before,
#main .icon-fancybox.selected:before,
#main a.current-from-address.selected:before,
#main .repeat-value.selected:before,
#main .contextual:not(.next-prev-links) a:not(#show_note_form_extras).selected:before,
#main .contextual a[href="/issues"].selected:before,
#main .contextual a[href="/time_entries"].selected:before,
#main .contextual a[href="/activity"].selected:before,
#main .toggle-multiselect.selected:before,
#main .avatar.extended .delete.selected:before,
#main a[href*="questions_sections/new"].selected:before,
#main .hold-control .controls .btn.selected:before,
#main #checklist_form_items .new span.icon.selected:before,
#main .fa-pencil.selected:before,
#main #content #comments .contextual a[href*="order_comments"].selected:before,
#main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"].selected:before,
#main .query-columns .buttons span.selected:before,
#main #sidebar .contextual a.selected:before,
#main a.open-filter.selected:before,
#main a.html.selected:before,
#main a.txt.selected:before,
#main a.odt.selected:before,
#main a.icon:not(.add-checklist-item).selected:before,
#main span.icon-only.selected:before,
#main a.atom.selected:before,
#main a.csv.selected:before,
#main a.pdf.selected:before,
#main .sort-handle.selected:before,
#main a.icon-settings.selected:before,
#main a.icon-close.selected:before,
#main a.icon-only.selected:before,
#main a.png.selected:before,
#main a.vcf.selected:before,
#main a.xls.selected:before,
#main a.project.selected:before,
#main #operation_contact_id_add_link.selected:before,
#main #deal_contact_id_add_link.selected:before,
#main #expense_contact_id_add_link.selected:before,
#main #invoice_contact_id_add_link.selected:before,
#main #order_contact_id_add_link.selected:before,
#main #company_profile_edit a.selected:before,
#main .icon-not-ok.selected:before {
  background-color: var(--icon_bg_active);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main a[href*="dmsf/webdav"].disabled,
#main .icon-fancybox.disabled,
#main a.current-from-address.disabled,
#main .repeat-value.disabled,
#main .contextual:not(.next-prev-links) a:not(#show_note_form_extras).disabled,
#main .contextual a[href="/issues"].disabled,
#main .contextual a[href="/time_entries"].disabled,
#main .contextual a[href="/activity"].disabled,
#main .toggle-multiselect.disabled,
#main .avatar.extended .delete.disabled,
#main a[href*="questions_sections/new"].disabled,
#main .hold-control .controls .btn.disabled,
#main #checklist_form_items .new span.icon.disabled,
#main .fa-pencil.disabled,
#main #content #comments .contextual a[href*="order_comments"].disabled,
#main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"].disabled,
#main .query-columns .buttons span.disabled,
#main #sidebar .contextual a.disabled,
#main a.open-filter.disabled,
#main a.html.disabled,
#main a.txt.disabled,
#main a.odt.disabled,
#main a.icon:not(.add-checklist-item).disabled,
#main span.icon-only.disabled,
#main a.atom.disabled,
#main a.csv.disabled,
#main a.pdf.disabled,
#main .sort-handle.disabled,
#main a.icon-settings.disabled,
#main a.icon-close.disabled,
#main a.icon-only.disabled,
#main a.png.disabled,
#main a.vcf.disabled,
#main a.xls.disabled,
#main a.project.disabled,
#main #operation_contact_id_add_link.disabled,
#main #deal_contact_id_add_link.disabled,
#main #expense_contact_id_add_link.disabled,
#main #invoice_contact_id_add_link.disabled,
#main #order_contact_id_add_link.disabled,
#main #company_profile_edit a.disabled,
#main .icon-not-ok.disabled {
  opacity: 0.3;
}
#main a[href*="dmsf/webdav"].disabled:hover,
#main .icon-fancybox.disabled:hover,
#main a.current-from-address.disabled:hover,
#main .repeat-value.disabled:hover,
#main .contextual:not(.next-prev-links) a:not(#show_note_form_extras).disabled:hover,
#main .contextual a[href="/issues"].disabled:hover,
#main .contextual a[href="/time_entries"].disabled:hover,
#main .contextual a[href="/activity"].disabled:hover,
#main .toggle-multiselect.disabled:hover,
#main .avatar.extended .delete.disabled:hover,
#main a[href*="questions_sections/new"].disabled:hover,
#main .hold-control .controls .btn.disabled:hover,
#main #checklist_form_items .new span.icon.disabled:hover,
#main .fa-pencil.disabled:hover,
#main #content #comments .contextual a[href*="order_comments"].disabled:hover,
#main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"].disabled:hover,
#main .query-columns .buttons span.disabled:hover,
#main #sidebar .contextual a.disabled:hover,
#main a.open-filter.disabled:hover,
#main a.html.disabled:hover,
#main a.txt.disabled:hover,
#main a.odt.disabled:hover,
#main a.icon:not(.add-checklist-item).disabled:hover,
#main span.icon-only.disabled:hover,
#main a.atom.disabled:hover,
#main a.csv.disabled:hover,
#main a.pdf.disabled:hover,
#main .sort-handle.disabled:hover,
#main a.icon-settings.disabled:hover,
#main a.icon-close.disabled:hover,
#main a.icon-only.disabled:hover,
#main a.png.disabled:hover,
#main a.vcf.disabled:hover,
#main a.xls.disabled:hover,
#main a.project.disabled:hover,
#main #operation_contact_id_add_link.disabled:hover,
#main #deal_contact_id_add_link.disabled:hover,
#main #expense_contact_id_add_link.disabled:hover,
#main #invoice_contact_id_add_link.disabled:hover,
#main #order_contact_id_add_link.disabled:hover,
#main #company_profile_edit a.disabled:hover,
#main .icon-not-ok.disabled:hover {
  color: var(--icon-color);
}
#main a[href*="dmsf/webdav"].disabled:hover:before,
#main .icon-fancybox.disabled:hover:before,
#main a.current-from-address.disabled:hover:before,
#main .repeat-value.disabled:hover:before,
#main .contextual:not(.next-prev-links) a:not(#show_note_form_extras).disabled:hover:before,
#main .contextual a[href="/issues"].disabled:hover:before,
#main .contextual a[href="/time_entries"].disabled:hover:before,
#main .contextual a[href="/activity"].disabled:hover:before,
#main .toggle-multiselect.disabled:hover:before,
#main .avatar.extended .delete.disabled:hover:before,
#main a[href*="questions_sections/new"].disabled:hover:before,
#main .hold-control .controls .btn.disabled:hover:before,
#main #checklist_form_items .new span.icon.disabled:hover:before,
#main .fa-pencil.disabled:hover:before,
#main #content #comments .contextual a[href*="order_comments"].disabled:hover:before,
#main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"].disabled:hover:before,
#main .query-columns .buttons span.disabled:hover:before,
#main #sidebar .contextual a.disabled:hover:before,
#main a.open-filter.disabled:hover:before,
#main a.html.disabled:hover:before,
#main a.txt.disabled:hover:before,
#main a.odt.disabled:hover:before,
#main a.icon:not(.add-checklist-item).disabled:hover:before,
#main span.icon-only.disabled:hover:before,
#main a.atom.disabled:hover:before,
#main a.csv.disabled:hover:before,
#main a.pdf.disabled:hover:before,
#main .sort-handle.disabled:hover:before,
#main a.icon-settings.disabled:hover:before,
#main a.icon-close.disabled:hover:before,
#main a.icon-only.disabled:hover:before,
#main a.png.disabled:hover:before,
#main a.vcf.disabled:hover:before,
#main a.xls.disabled:hover:before,
#main a.project.disabled:hover:before,
#main #operation_contact_id_add_link.disabled:hover:before,
#main #deal_contact_id_add_link.disabled:hover:before,
#main #expense_contact_id_add_link.disabled:hover:before,
#main #invoice_contact_id_add_link.disabled:hover:before,
#main #order_contact_id_add_link.disabled:hover:before,
#main #company_profile_edit a.disabled:hover:before,
#main .icon-not-ok.disabled:hover:before {
  background-color: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
}
#main .list .icon-fancybox,
#main .list a.current-from-address,
#main .list .repeat-value,
#main .list .contextual:not(.next-prev-links) a:not(#show_note_form_extras),
#main .list .contextual a[href="/issues"],
#main .list .contextual a[href="/time_entries"],
#main .list .contextual a[href="/activity"],
#main .list .toggle-multiselect,
#main .list .avatar.extended .delete,
#main .list a[href*="questions_sections/new"],
#main .list .hold-control .controls .btn,
#main .list #checklist_form_items .new span.icon,
#main .list .fa-pencil,
#main .list #content #comments .contextual a[href*="order_comments"],
#main .list div.issue.order.details #invoices .icon-invoice + a[href*="invoices"],
#main .list .query-columns .buttons span,
#main .list #sidebar .contextual a,
#main .list a.open-filter,
#main .list a.html,
#main .list a.txt,
#main .list a.odt,
#main .list a.icon:not(.add-checklist-item),
#main .list span.icon-only,
#main .list a.atom,
#main .list a.csv,
#main .list a.pdf,
#main .list .sort-handle,
#main .list a.icon-settings,
#main .list a.icon-close,
#main .list a.icon-only,
#main .list a.png,
#main .list a.vcf,
#main .list a.xls,
#main .list a.project,
#main .list #operation_contact_id_add_link,
#main .list #deal_contact_id_add_link,
#main .list #expense_contact_id_add_link,
#main .list #invoice_contact_id_add_link,
#main .list #order_contact_id_add_link,
#main .list #company_profile_edit a,
#main .list .icon-not-ok {
  color: var(--icon-color-list);
}
#main .list .icon-fancybox:after,
#main .list a.current-from-address:after,
#main .list .repeat-value:after,
#main .list .contextual:not(.next-prev-links) a:not(#show_note_form_extras):after,
#main .list .contextual a[href="/issues"]:after,
#main .list .contextual a[href="/time_entries"]:after,
#main .list .contextual a[href="/activity"]:after,
#main .list .toggle-multiselect:after,
#main .list .avatar.extended .delete:after,
#main .list a[href*="questions_sections/new"]:after,
#main .list .hold-control .controls .btn:after,
#main .list #checklist_form_items .new span.icon:after,
#main .list .fa-pencil:after,
#main .list #content #comments .contextual a[href*="order_comments"]:after,
#main .list div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:after,
#main .list .query-columns .buttons span:after,
#main .list #sidebar .contextual a:after,
#main .list a.open-filter:after,
#main .list a.html:after,
#main .list a.txt:after,
#main .list a.odt:after,
#main .list a.icon:not(.add-checklist-item):after,
#main .list span.icon-only:after,
#main .list a.atom:after,
#main .list a.csv:after,
#main .list a.pdf:after,
#main .list .sort-handle:after,
#main .list a.icon-settings:after,
#main .list a.icon-close:after,
#main .list a.icon-only:after,
#main .list a.png:after,
#main .list a.vcf:after,
#main .list a.xls:after,
#main .list a.project:after,
#main .list #operation_contact_id_add_link:after,
#main .list #deal_contact_id_add_link:after,
#main .list #expense_contact_id_add_link:after,
#main .list #invoice_contact_id_add_link:after,
#main .list #order_contact_id_add_link:after,
#main .list #company_profile_edit a:after,
#main .list .icon-not-ok:after {
  color: var(--icon-color-list);
}
#main .list .icon-fancybox:before,
#main .list a.current-from-address:before,
#main .list .repeat-value:before,
#main .list .contextual:not(.next-prev-links) a:not(#show_note_form_extras):before,
#main .list .contextual a[href="/issues"]:before,
#main .list .contextual a[href="/time_entries"]:before,
#main .list .contextual a[href="/activity"]:before,
#main .list .toggle-multiselect:before,
#main .list .avatar.extended .delete:before,
#main .list a[href*="questions_sections/new"]:before,
#main .list .hold-control .controls .btn:before,
#main .list #checklist_form_items .new span.icon:before,
#main .list .fa-pencil:before,
#main .list #content #comments .contextual a[href*="order_comments"]:before,
#main .list div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:before,
#main .list .query-columns .buttons span:before,
#main .list #sidebar .contextual a:before,
#main .list a.open-filter:before,
#main .list a.html:before,
#main .list a.txt:before,
#main .list a.odt:before,
#main .list a.icon:not(.add-checklist-item):before,
#main .list span.icon-only:before,
#main .list a.atom:before,
#main .list a.csv:before,
#main .list a.pdf:before,
#main .list .sort-handle:before,
#main .list a.icon-settings:before,
#main .list a.icon-close:before,
#main .list a.icon-only:before,
#main .list a.png:before,
#main .list a.vcf:before,
#main .list a.xls:before,
#main .list a.project:before,
#main .list #operation_contact_id_add_link:before,
#main .list #deal_contact_id_add_link:before,
#main .list #expense_contact_id_add_link:before,
#main .list #invoice_contact_id_add_link:before,
#main .list #order_contact_id_add_link:before,
#main .list #company_profile_edit a:before,
#main .list .icon-not-ok:before {
  background: var(--icon_bg-list);
}
#main .list .icon-fancybox:hover,
#main .list a.current-from-address:hover,
#main .list .repeat-value:hover,
#main .list .contextual:not(.next-prev-links) a:not(#show_note_form_extras):hover,
#main .list .contextual a[href="/issues"]:hover,
#main .list .contextual a[href="/time_entries"]:hover,
#main .list .contextual a[href="/activity"]:hover,
#main .list .toggle-multiselect:hover,
#main .list .avatar.extended .delete:hover,
#main .list a[href*="questions_sections/new"]:hover,
#main .list .hold-control .controls .btn:hover,
#main .list #checklist_form_items .new span.icon:hover,
#main .list .fa-pencil:hover,
#main .list #content #comments .contextual a[href*="order_comments"]:hover,
#main .list div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover,
#main .list .query-columns .buttons span:hover,
#main .list #sidebar .contextual a:hover,
#main .list a.open-filter:hover,
#main .list a.html:hover,
#main .list a.txt:hover,
#main .list a.odt:hover,
#main .list a.icon:not(.add-checklist-item):hover,
#main .list span.icon-only:hover,
#main .list a.atom:hover,
#main .list a.csv:hover,
#main .list a.pdf:hover,
#main .list .sort-handle:hover,
#main .list a.icon-settings:hover,
#main .list a.icon-close:hover,
#main .list a.icon-only:hover,
#main .list a.png:hover,
#main .list a.vcf:hover,
#main .list a.xls:hover,
#main .list a.project:hover,
#main .list #operation_contact_id_add_link:hover,
#main .list #deal_contact_id_add_link:hover,
#main .list #expense_contact_id_add_link:hover,
#main .list #invoice_contact_id_add_link:hover,
#main .list #order_contact_id_add_link:hover,
#main .list #company_profile_edit a:hover,
#main .list .icon-not-ok:hover {
  color: var(--icon-color-hover-list);
}
#main .list .icon-fancybox:hover:after,
#main .list a.current-from-address:hover:after,
#main .list .repeat-value:hover:after,
#main .list .contextual:not(.next-prev-links) a:not(#show_note_form_extras):hover:after,
#main .list .contextual a[href="/issues"]:hover:after,
#main .list .contextual a[href="/time_entries"]:hover:after,
#main .list .contextual a[href="/activity"]:hover:after,
#main .list .toggle-multiselect:hover:after,
#main .list .avatar.extended .delete:hover:after,
#main .list a[href*="questions_sections/new"]:hover:after,
#main .list .hold-control .controls .btn:hover:after,
#main .list #checklist_form_items .new span.icon:hover:after,
#main .list .fa-pencil:hover:after,
#main .list #content #comments .contextual a[href*="order_comments"]:hover:after,
#main .list div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover:after,
#main .list .query-columns .buttons span:hover:after,
#main .list #sidebar .contextual a:hover:after,
#main .list a.open-filter:hover:after,
#main .list a.html:hover:after,
#main .list a.txt:hover:after,
#main .list a.odt:hover:after,
#main .list a.icon:not(.add-checklist-item):hover:after,
#main .list span.icon-only:hover:after,
#main .list a.atom:hover:after,
#main .list a.csv:hover:after,
#main .list a.pdf:hover:after,
#main .list .sort-handle:hover:after,
#main .list a.icon-settings:hover:after,
#main .list a.icon-close:hover:after,
#main .list a.icon-only:hover:after,
#main .list a.png:hover:after,
#main .list a.vcf:hover:after,
#main .list a.xls:hover:after,
#main .list a.project:hover:after,
#main .list #operation_contact_id_add_link:hover:after,
#main .list #deal_contact_id_add_link:hover:after,
#main .list #expense_contact_id_add_link:hover:after,
#main .list #invoice_contact_id_add_link:hover:after,
#main .list #order_contact_id_add_link:hover:after,
#main .list #company_profile_edit a:hover:after,
#main .list .icon-not-ok:hover:after {
  color: var(--icon-color-hover-list);
}
#main .list .icon-fancybox:hover:before,
#main .list a.current-from-address:hover:before,
#main .list .repeat-value:hover:before,
#main .list .contextual:not(.next-prev-links) a:not(#show_note_form_extras):hover:before,
#main .list .contextual a[href="/issues"]:hover:before,
#main .list .contextual a[href="/time_entries"]:hover:before,
#main .list .contextual a[href="/activity"]:hover:before,
#main .list .toggle-multiselect:hover:before,
#main .list .avatar.extended .delete:hover:before,
#main .list a[href*="questions_sections/new"]:hover:before,
#main .list .hold-control .controls .btn:hover:before,
#main .list #checklist_form_items .new span.icon:hover:before,
#main .list .fa-pencil:hover:before,
#main .list #content #comments .contextual a[href*="order_comments"]:hover:before,
#main .list div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover:before,
#main .list .query-columns .buttons span:hover:before,
#main .list #sidebar .contextual a:hover:before,
#main .list a.open-filter:hover:before,
#main .list a.html:hover:before,
#main .list a.txt:hover:before,
#main .list a.odt:hover:before,
#main .list a.icon:not(.add-checklist-item):hover:before,
#main .list span.icon-only:hover:before,
#main .list a.atom:hover:before,
#main .list a.csv:hover:before,
#main .list a.pdf:hover:before,
#main .list .sort-handle:hover:before,
#main .list a.icon-settings:hover:before,
#main .list a.icon-close:hover:before,
#main .list a.icon-only:hover:before,
#main .list a.png:hover:before,
#main .list a.vcf:hover:before,
#main .list a.xls:hover:before,
#main .list a.project:hover:before,
#main .list #operation_contact_id_add_link:hover:before,
#main .list #deal_contact_id_add_link:hover:before,
#main .list #expense_contact_id_add_link:hover:before,
#main .list #invoice_contact_id_add_link:hover:before,
#main .list #order_contact_id_add_link:hover:before,
#main .list #company_profile_edit a:hover:before,
#main .list .icon-not-ok:hover:before {
  background: var(--icon_bg_hover-list);
}
@media screen and (max-width: 1024px) {
  #main .list .icon-fancybox:hover,
  #main .list a.current-from-address:hover,
  #main .list .repeat-value:hover,
  #main .list .contextual:not(.next-prev-links) a:not(#show_note_form_extras):hover,
  #main .list .contextual a[href="/issues"]:hover,
  #main .list .contextual a[href="/time_entries"]:hover,
  #main .list .contextual a[href="/activity"]:hover,
  #main .list .toggle-multiselect:hover,
  #main .list .avatar.extended .delete:hover,
  #main .list a[href*="questions_sections/new"]:hover,
  #main .list .hold-control .controls .btn:hover,
  #main .list #checklist_form_items .new span.icon:hover,
  #main .list .fa-pencil:hover,
  #main .list #content #comments .contextual a[href*="order_comments"]:hover,
  #main .list div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover,
  #main .list .query-columns .buttons span:hover,
  #main .list #sidebar .contextual a:hover,
  #main .list a.open-filter:hover,
  #main .list a.html:hover,
  #main .list a.txt:hover,
  #main .list a.odt:hover,
  #main .list a.icon:not(.add-checklist-item):hover,
  #main .list span.icon-only:hover,
  #main .list a.atom:hover,
  #main .list a.csv:hover,
  #main .list a.pdf:hover,
  #main .list .sort-handle:hover,
  #main .list a.icon-settings:hover,
  #main .list a.icon-close:hover,
  #main .list a.icon-only:hover,
  #main .list a.png:hover,
  #main .list a.vcf:hover,
  #main .list a.xls:hover,
  #main .list a.project:hover,
  #main .list #operation_contact_id_add_link:hover,
  #main .list #deal_contact_id_add_link:hover,
  #main .list #expense_contact_id_add_link:hover,
  #main .list #invoice_contact_id_add_link:hover,
  #main .list #order_contact_id_add_link:hover,
  #main .list #company_profile_edit a:hover,
  #main .list .icon-not-ok:hover {
    color: var(--icon-color-list);
  }
  #main .list .icon-fancybox:hover:after,
  #main .list a.current-from-address:hover:after,
  #main .list .repeat-value:hover:after,
  #main .list .contextual:not(.next-prev-links) a:not(#show_note_form_extras):hover:after,
  #main .list .contextual a[href="/issues"]:hover:after,
  #main .list .contextual a[href="/time_entries"]:hover:after,
  #main .list .contextual a[href="/activity"]:hover:after,
  #main .list .toggle-multiselect:hover:after,
  #main .list .avatar.extended .delete:hover:after,
  #main .list a[href*="questions_sections/new"]:hover:after,
  #main .list .hold-control .controls .btn:hover:after,
  #main .list #checklist_form_items .new span.icon:hover:after,
  #main .list .fa-pencil:hover:after,
  #main .list #content #comments .contextual a[href*="order_comments"]:hover:after,
  #main .list div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover:after,
  #main .list .query-columns .buttons span:hover:after,
  #main .list #sidebar .contextual a:hover:after,
  #main .list a.open-filter:hover:after,
  #main .list a.html:hover:after,
  #main .list a.txt:hover:after,
  #main .list a.odt:hover:after,
  #main .list a.icon:not(.add-checklist-item):hover:after,
  #main .list span.icon-only:hover:after,
  #main .list a.atom:hover:after,
  #main .list a.csv:hover:after,
  #main .list a.pdf:hover:after,
  #main .list .sort-handle:hover:after,
  #main .list a.icon-settings:hover:after,
  #main .list a.icon-close:hover:after,
  #main .list a.icon-only:hover:after,
  #main .list a.png:hover:after,
  #main .list a.vcf:hover:after,
  #main .list a.xls:hover:after,
  #main .list a.project:hover:after,
  #main .list #operation_contact_id_add_link:hover:after,
  #main .list #deal_contact_id_add_link:hover:after,
  #main .list #expense_contact_id_add_link:hover:after,
  #main .list #invoice_contact_id_add_link:hover:after,
  #main .list #order_contact_id_add_link:hover:after,
  #main .list #company_profile_edit a:hover:after,
  #main .list .icon-not-ok:hover:after {
    color: var(--icon-color-list);
  }
}
#main .admin-filter .toggle-multiselect:before {
  background-color: var(--icon_bg-bg);
}
#main .icon-fancybox {
  position: relative;
  min-width: var(--icon-width);
  min-height: var(--icon-width);
  cursor: pointer;
  margin: 0 15px 0 0;
}
#main .icon-fancybox:after {
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#main .icon-fancybox .block-info {
  position: absolute;
  top: -99999px;
  left: -99999px;
}
#main .repeat-value {
  margin-top: 5px;
}
#main .toggle-multiselect {
  margin: 0 0 0 10px;
}
#main .toggle-multiselect.icon-toggle-minus {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#main .repeat-value:after {
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}
#main #content .right-questions a:not(#show_note_form_extras),
#main #content .other-formats a:not(#show_note_form_extras),
#main #content > .contextual:not(.next-prev-links) a:not(#show_note_form_extras),
#main #content .right-questions .icon-only,
#main #content .other-formats .icon-only,
#main #content > .contextual:not(.next-prev-links) .icon-only {
  height: var(--icon-width);
  width: var(--icon-width);
  min-width: var(--icon-width);
}
#main #content .right-questions a:not(#show_note_form_extras):after,
#main #content .other-formats a:not(#show_note_form_extras):after,
#main #content > .contextual:not(.next-prev-links) a:not(#show_note_form_extras):after,
#main #content .right-questions .icon-only:after,
#main #content .other-formats .icon-only:after,
#main #content > .contextual:not(.next-prev-links) .icon-only:after {
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#main table.list .context-menu-selection .icon-only {
  color: var(--icon-color-hover) !important;
}
#main table.list .context-menu-selection > td {
  background-color: var(--bg-box);
}
#main .other-formats a {
  color: var(--icon-color-bg);
}
#main .other-formats a:after {
  color: var(--icon-color-bg);
}
#main .other-formats a:before {
  background: var(--icon_bg-bg) !important;
}
#main .other-formats a:hover {
  color: var(--icon-color-hover-bg);
}
#main .other-formats a:hover:after {
  color: var(--icon-color-hover-bg);
}
#main .filters .toggle-multiselect,
#main .filters span.toggle-multiselect.icon-only {
  color: var(--icon-color-bg);
}
#main .filters .toggle-multiselect:after,
#main .filters span.toggle-multiselect.icon-only:after {
  color: var(--icon-color-bg);
}
#main .filters .toggle-multiselect:before,
#main .filters span.toggle-multiselect.icon-only:before {
  background: var(--icon_bg-bg) !important;
}
#main .filters .toggle-multiselect:hover,
#main .filters span.toggle-multiselect.icon-only:hover {
  color: var(--icon-color-hover-bg);
}
#main .filters .toggle-multiselect:hover:after,
#main .filters span.toggle-multiselect.icon-only:hover:after {
  color: var(--icon-color-hover-bg);
}
#main .filters a.current-from-address,
#main .list th a.current-from-address,
#main .box a.current-from-address,
#main .tabular a.current-from-address,
#main .mypage-box a.current-from-address,
#main .filters a[href*="questions_sections/new"],
#main .list th a[href*="questions_sections/new"],
#main .box a[href*="questions_sections/new"],
#main .tabular a[href*="questions_sections/new"],
#main .mypage-box a[href*="questions_sections/new"],
#main .filters .hold-control .controls .btn,
#main .list th .hold-control .controls .btn,
#main .box .hold-control .controls .btn,
#main .tabular .hold-control .controls .btn,
#main .mypage-box .hold-control .controls .btn,
#main .filters #checklist_form_items .new span.icon,
#main .list th #checklist_form_items .new span.icon,
#main .box #checklist_form_items .new span.icon,
#main .tabular #checklist_form_items .new span.icon,
#main .mypage-box #checklist_form_items .new span.icon,
#main .filters .fa-pencil,
#main .list th .fa-pencil,
#main .box .fa-pencil,
#main .tabular .fa-pencil,
#main .mypage-box .fa-pencil,
#main .filters #content #comments .contextual a[href*="order_comments"],
#main .list th #content #comments .contextual a[href*="order_comments"],
#main .box #content #comments .contextual a[href*="order_comments"],
#main .tabular #content #comments .contextual a[href*="order_comments"],
#main .mypage-box #content #comments .contextual a[href*="order_comments"],
#main .filters div.issue.order.details #invoices .icon-invoice + a[href*="invoices"],
#main .list th div.issue.order.details #invoices .icon-invoice + a[href*="invoices"],
#main .box div.issue.order.details #invoices .icon-invoice + a[href*="invoices"],
#main .tabular div.issue.order.details #invoices .icon-invoice + a[href*="invoices"],
#main .mypage-box div.issue.order.details #invoices .icon-invoice + a[href*="invoices"],
#main .filters .query-columns .buttons span,
#main .list th .query-columns .buttons span,
#main .box .query-columns .buttons span,
#main .tabular .query-columns .buttons span,
#main .mypage-box .query-columns .buttons span,
#main .filters #sidebar .contextual a,
#main .list th #sidebar .contextual a,
#main .box #sidebar .contextual a,
#main .tabular #sidebar .contextual a,
#main .mypage-box #sidebar .contextual a,
#main .filters a.open-filter,
#main .list th a.open-filter,
#main .box a.open-filter,
#main .tabular a.open-filter,
#main .mypage-box a.open-filter,
#main .filters a.html,
#main .list th a.html,
#main .box a.html,
#main .tabular a.html,
#main .mypage-box a.html,
#main .filters a.txt,
#main .list th a.txt,
#main .box a.txt,
#main .tabular a.txt,
#main .mypage-box a.txt,
#main .filters a.odt,
#main .list th a.odt,
#main .box a.odt,
#main .tabular a.odt,
#main .mypage-box a.odt,
#main .filters a.icon:not(.add-checklist-item),
#main .list th a.icon:not(.add-checklist-item),
#main .box a.icon:not(.add-checklist-item),
#main .tabular a.icon:not(.add-checklist-item),
#main .mypage-box a.icon:not(.add-checklist-item),
#main .filters span.icon-only,
#main .list th span.icon-only,
#main .box span.icon-only,
#main .tabular span.icon-only,
#main .mypage-box span.icon-only,
#main .filters a.atom,
#main .list th a.atom,
#main .box a.atom,
#main .tabular a.atom,
#main .mypage-box a.atom,
#main .filters a.csv,
#main .list th a.csv,
#main .box a.csv,
#main .tabular a.csv,
#main .mypage-box a.csv,
#main .filters a.pdf,
#main .list th a.pdf,
#main .box a.pdf,
#main .tabular a.pdf,
#main .mypage-box a.pdf,
#main .filters .sort-handle,
#main .list th .sort-handle,
#main .box .sort-handle,
#main .tabular .sort-handle,
#main .mypage-box .sort-handle,
#main .filters a.icon-settings,
#main .list th a.icon-settings,
#main .box a.icon-settings,
#main .tabular a.icon-settings,
#main .mypage-box a.icon-settings,
#main .filters a.icon-close,
#main .list th a.icon-close,
#main .box a.icon-close,
#main .tabular a.icon-close,
#main .mypage-box a.icon-close,
#main .filters a.icon-only,
#main .list th a.icon-only,
#main .box a.icon-only,
#main .tabular a.icon-only,
#main .mypage-box a.icon-only,
#main .filters a.png,
#main .list th a.png,
#main .box a.png,
#main .tabular a.png,
#main .mypage-box a.png,
#main .filters a.vcf,
#main .list th a.vcf,
#main .box a.vcf,
#main .tabular a.vcf,
#main .mypage-box a.vcf,
#main .filters a.xls,
#main .list th a.xls,
#main .box a.xls,
#main .tabular a.xls,
#main .mypage-box a.xls,
#main .filters a.project,
#main .list th a.project,
#main .box a.project,
#main .tabular a.project,
#main .mypage-box a.project,
#main .filters #deal_contact_id_add_link,
#main .list th #deal_contact_id_add_link,
#main .box #deal_contact_id_add_link,
#main .tabular #deal_contact_id_add_link,
#main .mypage-box #deal_contact_id_add_link,
#main .filters #expense_contact_id_add_link,
#main .list th #expense_contact_id_add_link,
#main .box #expense_contact_id_add_link,
#main .tabular #expense_contact_id_add_link,
#main .mypage-box #expense_contact_id_add_link,
#main .filters #invoice_contact_id_add_link,
#main .list th #invoice_contact_id_add_link,
#main .box #invoice_contact_id_add_link,
#main .tabular #invoice_contact_id_add_link,
#main .mypage-box #invoice_contact_id_add_link,
#main .filters #operation_contact_id_add_link,
#main .list th #operation_contact_id_add_link,
#main .box #operation_contact_id_add_link,
#main .tabular #operation_contact_id_add_link,
#main .mypage-box #operation_contact_id_add_link,
#main .filters #order_contact_id_add_link,
#main .list th #order_contact_id_add_link,
#main .box #order_contact_id_add_link,
#main .tabular #order_contact_id_add_link,
#main .mypage-box #order_contact_id_add_link,
#main .filters #company_profile_edit a,
#main .list th #company_profile_edit a,
#main .box #company_profile_edit a,
#main .tabular #company_profile_edit a,
#main .mypage-box #company_profile_edit a,
#main .filters .icon-not-ok,
#main .list th .icon-not-ok,
#main .box .icon-not-ok,
#main .tabular .icon-not-ok,
#main .mypage-box .icon-not-ok {
  color: var(--icon-color-bg);
}
#main .filters a.current-from-address:after,
#main .list th a.current-from-address:after,
#main .box a.current-from-address:after,
#main .tabular a.current-from-address:after,
#main .mypage-box a.current-from-address:after,
#main .filters a[href*="questions_sections/new"]:after,
#main .list th a[href*="questions_sections/new"]:after,
#main .box a[href*="questions_sections/new"]:after,
#main .tabular a[href*="questions_sections/new"]:after,
#main .mypage-box a[href*="questions_sections/new"]:after,
#main .filters .hold-control .controls .btn:after,
#main .list th .hold-control .controls .btn:after,
#main .box .hold-control .controls .btn:after,
#main .tabular .hold-control .controls .btn:after,
#main .mypage-box .hold-control .controls .btn:after,
#main .filters #checklist_form_items .new span.icon:after,
#main .list th #checklist_form_items .new span.icon:after,
#main .box #checklist_form_items .new span.icon:after,
#main .tabular #checklist_form_items .new span.icon:after,
#main .mypage-box #checklist_form_items .new span.icon:after,
#main .filters .fa-pencil:after,
#main .list th .fa-pencil:after,
#main .box .fa-pencil:after,
#main .tabular .fa-pencil:after,
#main .mypage-box .fa-pencil:after,
#main .filters #content #comments .contextual a[href*="order_comments"]:after,
#main .list th #content #comments .contextual a[href*="order_comments"]:after,
#main .box #content #comments .contextual a[href*="order_comments"]:after,
#main .tabular #content #comments .contextual a[href*="order_comments"]:after,
#main .mypage-box #content #comments .contextual a[href*="order_comments"]:after,
#main .filters div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:after,
#main .list th div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:after,
#main .box div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:after,
#main .tabular div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:after,
#main .mypage-box div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:after,
#main .filters .query-columns .buttons span:after,
#main .list th .query-columns .buttons span:after,
#main .box .query-columns .buttons span:after,
#main .tabular .query-columns .buttons span:after,
#main .mypage-box .query-columns .buttons span:after,
#main .filters #sidebar .contextual a:after,
#main .list th #sidebar .contextual a:after,
#main .box #sidebar .contextual a:after,
#main .tabular #sidebar .contextual a:after,
#main .mypage-box #sidebar .contextual a:after,
#main .filters a.open-filter:after,
#main .list th a.open-filter:after,
#main .box a.open-filter:after,
#main .tabular a.open-filter:after,
#main .mypage-box a.open-filter:after,
#main .filters a.html:after,
#main .list th a.html:after,
#main .box a.html:after,
#main .tabular a.html:after,
#main .mypage-box a.html:after,
#main .filters a.txt:after,
#main .list th a.txt:after,
#main .box a.txt:after,
#main .tabular a.txt:after,
#main .mypage-box a.txt:after,
#main .filters a.odt:after,
#main .list th a.odt:after,
#main .box a.odt:after,
#main .tabular a.odt:after,
#main .mypage-box a.odt:after,
#main .filters a.icon:not(.add-checklist-item):after,
#main .list th a.icon:not(.add-checklist-item):after,
#main .box a.icon:not(.add-checklist-item):after,
#main .tabular a.icon:not(.add-checklist-item):after,
#main .mypage-box a.icon:not(.add-checklist-item):after,
#main .filters span.icon-only:after,
#main .list th span.icon-only:after,
#main .box span.icon-only:after,
#main .tabular span.icon-only:after,
#main .mypage-box span.icon-only:after,
#main .filters a.atom:after,
#main .list th a.atom:after,
#main .box a.atom:after,
#main .tabular a.atom:after,
#main .mypage-box a.atom:after,
#main .filters a.csv:after,
#main .list th a.csv:after,
#main .box a.csv:after,
#main .tabular a.csv:after,
#main .mypage-box a.csv:after,
#main .filters a.pdf:after,
#main .list th a.pdf:after,
#main .box a.pdf:after,
#main .tabular a.pdf:after,
#main .mypage-box a.pdf:after,
#main .filters .sort-handle:after,
#main .list th .sort-handle:after,
#main .box .sort-handle:after,
#main .tabular .sort-handle:after,
#main .mypage-box .sort-handle:after,
#main .filters a.icon-settings:after,
#main .list th a.icon-settings:after,
#main .box a.icon-settings:after,
#main .tabular a.icon-settings:after,
#main .mypage-box a.icon-settings:after,
#main .filters a.icon-close:after,
#main .list th a.icon-close:after,
#main .box a.icon-close:after,
#main .tabular a.icon-close:after,
#main .mypage-box a.icon-close:after,
#main .filters a.icon-only:after,
#main .list th a.icon-only:after,
#main .box a.icon-only:after,
#main .tabular a.icon-only:after,
#main .mypage-box a.icon-only:after,
#main .filters a.png:after,
#main .list th a.png:after,
#main .box a.png:after,
#main .tabular a.png:after,
#main .mypage-box a.png:after,
#main .filters a.vcf:after,
#main .list th a.vcf:after,
#main .box a.vcf:after,
#main .tabular a.vcf:after,
#main .mypage-box a.vcf:after,
#main .filters a.xls:after,
#main .list th a.xls:after,
#main .box a.xls:after,
#main .tabular a.xls:after,
#main .mypage-box a.xls:after,
#main .filters a.project:after,
#main .list th a.project:after,
#main .box a.project:after,
#main .tabular a.project:after,
#main .mypage-box a.project:after,
#main .filters #deal_contact_id_add_link:after,
#main .list th #deal_contact_id_add_link:after,
#main .box #deal_contact_id_add_link:after,
#main .tabular #deal_contact_id_add_link:after,
#main .mypage-box #deal_contact_id_add_link:after,
#main .filters #expense_contact_id_add_link:after,
#main .list th #expense_contact_id_add_link:after,
#main .box #expense_contact_id_add_link:after,
#main .tabular #expense_contact_id_add_link:after,
#main .mypage-box #expense_contact_id_add_link:after,
#main .filters #invoice_contact_id_add_link:after,
#main .list th #invoice_contact_id_add_link:after,
#main .box #invoice_contact_id_add_link:after,
#main .tabular #invoice_contact_id_add_link:after,
#main .mypage-box #invoice_contact_id_add_link:after,
#main .filters #operation_contact_id_add_link:after,
#main .list th #operation_contact_id_add_link:after,
#main .box #operation_contact_id_add_link:after,
#main .tabular #operation_contact_id_add_link:after,
#main .mypage-box #operation_contact_id_add_link:after,
#main .filters #order_contact_id_add_link:after,
#main .list th #order_contact_id_add_link:after,
#main .box #order_contact_id_add_link:after,
#main .tabular #order_contact_id_add_link:after,
#main .mypage-box #order_contact_id_add_link:after,
#main .filters #company_profile_edit a:after,
#main .list th #company_profile_edit a:after,
#main .box #company_profile_edit a:after,
#main .tabular #company_profile_edit a:after,
#main .mypage-box #company_profile_edit a:after,
#main .filters .icon-not-ok:after,
#main .list th .icon-not-ok:after,
#main .box .icon-not-ok:after,
#main .tabular .icon-not-ok:after,
#main .mypage-box .icon-not-ok:after {
  color: var(--icon-color-bg);
}
#main .filters a.current-from-address:before,
#main .list th a.current-from-address:before,
#main .box a.current-from-address:before,
#main .tabular a.current-from-address:before,
#main .mypage-box a.current-from-address:before,
#main .filters a[href*="questions_sections/new"]:before,
#main .list th a[href*="questions_sections/new"]:before,
#main .box a[href*="questions_sections/new"]:before,
#main .tabular a[href*="questions_sections/new"]:before,
#main .mypage-box a[href*="questions_sections/new"]:before,
#main .filters .hold-control .controls .btn:before,
#main .list th .hold-control .controls .btn:before,
#main .box .hold-control .controls .btn:before,
#main .tabular .hold-control .controls .btn:before,
#main .mypage-box .hold-control .controls .btn:before,
#main .filters #checklist_form_items .new span.icon:before,
#main .list th #checklist_form_items .new span.icon:before,
#main .box #checklist_form_items .new span.icon:before,
#main .tabular #checklist_form_items .new span.icon:before,
#main .mypage-box #checklist_form_items .new span.icon:before,
#main .filters .fa-pencil:before,
#main .list th .fa-pencil:before,
#main .box .fa-pencil:before,
#main .tabular .fa-pencil:before,
#main .mypage-box .fa-pencil:before,
#main .filters #content #comments .contextual a[href*="order_comments"]:before,
#main .list th #content #comments .contextual a[href*="order_comments"]:before,
#main .box #content #comments .contextual a[href*="order_comments"]:before,
#main .tabular #content #comments .contextual a[href*="order_comments"]:before,
#main .mypage-box #content #comments .contextual a[href*="order_comments"]:before,
#main .filters div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:before,
#main .list th div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:before,
#main .box div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:before,
#main .tabular div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:before,
#main .mypage-box div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:before,
#main .filters .query-columns .buttons span:before,
#main .list th .query-columns .buttons span:before,
#main .box .query-columns .buttons span:before,
#main .tabular .query-columns .buttons span:before,
#main .mypage-box .query-columns .buttons span:before,
#main .filters #sidebar .contextual a:before,
#main .list th #sidebar .contextual a:before,
#main .box #sidebar .contextual a:before,
#main .tabular #sidebar .contextual a:before,
#main .mypage-box #sidebar .contextual a:before,
#main .filters a.open-filter:before,
#main .list th a.open-filter:before,
#main .box a.open-filter:before,
#main .tabular a.open-filter:before,
#main .mypage-box a.open-filter:before,
#main .filters a.html:before,
#main .list th a.html:before,
#main .box a.html:before,
#main .tabular a.html:before,
#main .mypage-box a.html:before,
#main .filters a.txt:before,
#main .list th a.txt:before,
#main .box a.txt:before,
#main .tabular a.txt:before,
#main .mypage-box a.txt:before,
#main .filters a.odt:before,
#main .list th a.odt:before,
#main .box a.odt:before,
#main .tabular a.odt:before,
#main .mypage-box a.odt:before,
#main .filters a.icon:not(.add-checklist-item):before,
#main .list th a.icon:not(.add-checklist-item):before,
#main .box a.icon:not(.add-checklist-item):before,
#main .tabular a.icon:not(.add-checklist-item):before,
#main .mypage-box a.icon:not(.add-checklist-item):before,
#main .filters span.icon-only:before,
#main .list th span.icon-only:before,
#main .box span.icon-only:before,
#main .tabular span.icon-only:before,
#main .mypage-box span.icon-only:before,
#main .filters a.atom:before,
#main .list th a.atom:before,
#main .box a.atom:before,
#main .tabular a.atom:before,
#main .mypage-box a.atom:before,
#main .filters a.csv:before,
#main .list th a.csv:before,
#main .box a.csv:before,
#main .tabular a.csv:before,
#main .mypage-box a.csv:before,
#main .filters a.pdf:before,
#main .list th a.pdf:before,
#main .box a.pdf:before,
#main .tabular a.pdf:before,
#main .mypage-box a.pdf:before,
#main .filters .sort-handle:before,
#main .list th .sort-handle:before,
#main .box .sort-handle:before,
#main .tabular .sort-handle:before,
#main .mypage-box .sort-handle:before,
#main .filters a.icon-settings:before,
#main .list th a.icon-settings:before,
#main .box a.icon-settings:before,
#main .tabular a.icon-settings:before,
#main .mypage-box a.icon-settings:before,
#main .filters a.icon-close:before,
#main .list th a.icon-close:before,
#main .box a.icon-close:before,
#main .tabular a.icon-close:before,
#main .mypage-box a.icon-close:before,
#main .filters a.icon-only:before,
#main .list th a.icon-only:before,
#main .box a.icon-only:before,
#main .tabular a.icon-only:before,
#main .mypage-box a.icon-only:before,
#main .filters a.png:before,
#main .list th a.png:before,
#main .box a.png:before,
#main .tabular a.png:before,
#main .mypage-box a.png:before,
#main .filters a.vcf:before,
#main .list th a.vcf:before,
#main .box a.vcf:before,
#main .tabular a.vcf:before,
#main .mypage-box a.vcf:before,
#main .filters a.xls:before,
#main .list th a.xls:before,
#main .box a.xls:before,
#main .tabular a.xls:before,
#main .mypage-box a.xls:before,
#main .filters a.project:before,
#main .list th a.project:before,
#main .box a.project:before,
#main .tabular a.project:before,
#main .mypage-box a.project:before,
#main .filters #deal_contact_id_add_link:before,
#main .list th #deal_contact_id_add_link:before,
#main .box #deal_contact_id_add_link:before,
#main .tabular #deal_contact_id_add_link:before,
#main .mypage-box #deal_contact_id_add_link:before,
#main .filters #expense_contact_id_add_link:before,
#main .list th #expense_contact_id_add_link:before,
#main .box #expense_contact_id_add_link:before,
#main .tabular #expense_contact_id_add_link:before,
#main .mypage-box #expense_contact_id_add_link:before,
#main .filters #invoice_contact_id_add_link:before,
#main .list th #invoice_contact_id_add_link:before,
#main .box #invoice_contact_id_add_link:before,
#main .tabular #invoice_contact_id_add_link:before,
#main .mypage-box #invoice_contact_id_add_link:before,
#main .filters #operation_contact_id_add_link:before,
#main .list th #operation_contact_id_add_link:before,
#main .box #operation_contact_id_add_link:before,
#main .tabular #operation_contact_id_add_link:before,
#main .mypage-box #operation_contact_id_add_link:before,
#main .filters #order_contact_id_add_link:before,
#main .list th #order_contact_id_add_link:before,
#main .box #order_contact_id_add_link:before,
#main .tabular #order_contact_id_add_link:before,
#main .mypage-box #order_contact_id_add_link:before,
#main .filters #company_profile_edit a:before,
#main .list th #company_profile_edit a:before,
#main .box #company_profile_edit a:before,
#main .tabular #company_profile_edit a:before,
#main .mypage-box #company_profile_edit a:before,
#main .filters .icon-not-ok:before,
#main .list th .icon-not-ok:before,
#main .box .icon-not-ok:before,
#main .tabular .icon-not-ok:before,
#main .mypage-box .icon-not-ok:before {
  background: var(--icon_bg-bg);
}
#main .filters a.current-from-address:hover,
#main .list th a.current-from-address:hover,
#main .box a.current-from-address:hover,
#main .tabular a.current-from-address:hover,
#main .mypage-box a.current-from-address:hover,
#main .filters a[href*="questions_sections/new"]:hover,
#main .list th a[href*="questions_sections/new"]:hover,
#main .box a[href*="questions_sections/new"]:hover,
#main .tabular a[href*="questions_sections/new"]:hover,
#main .mypage-box a[href*="questions_sections/new"]:hover,
#main .filters .hold-control .controls .btn:hover,
#main .list th .hold-control .controls .btn:hover,
#main .box .hold-control .controls .btn:hover,
#main .tabular .hold-control .controls .btn:hover,
#main .mypage-box .hold-control .controls .btn:hover,
#main .filters #checklist_form_items .new span.icon:hover,
#main .list th #checklist_form_items .new span.icon:hover,
#main .box #checklist_form_items .new span.icon:hover,
#main .tabular #checklist_form_items .new span.icon:hover,
#main .mypage-box #checklist_form_items .new span.icon:hover,
#main .filters .fa-pencil:hover,
#main .list th .fa-pencil:hover,
#main .box .fa-pencil:hover,
#main .tabular .fa-pencil:hover,
#main .mypage-box .fa-pencil:hover,
#main .filters #content #comments .contextual a[href*="order_comments"]:hover,
#main .list th #content #comments .contextual a[href*="order_comments"]:hover,
#main .box #content #comments .contextual a[href*="order_comments"]:hover,
#main .tabular #content #comments .contextual a[href*="order_comments"]:hover,
#main .mypage-box #content #comments .contextual a[href*="order_comments"]:hover,
#main .filters div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover,
#main .list th div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover,
#main .box div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover,
#main .tabular div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover,
#main .mypage-box div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover,
#main .filters .query-columns .buttons span:hover,
#main .list th .query-columns .buttons span:hover,
#main .box .query-columns .buttons span:hover,
#main .tabular .query-columns .buttons span:hover,
#main .mypage-box .query-columns .buttons span:hover,
#main .filters #sidebar .contextual a:hover,
#main .list th #sidebar .contextual a:hover,
#main .box #sidebar .contextual a:hover,
#main .tabular #sidebar .contextual a:hover,
#main .mypage-box #sidebar .contextual a:hover,
#main .filters a.open-filter:hover,
#main .list th a.open-filter:hover,
#main .box a.open-filter:hover,
#main .tabular a.open-filter:hover,
#main .mypage-box a.open-filter:hover,
#main .filters a.html:hover,
#main .list th a.html:hover,
#main .box a.html:hover,
#main .tabular a.html:hover,
#main .mypage-box a.html:hover,
#main .filters a.txt:hover,
#main .list th a.txt:hover,
#main .box a.txt:hover,
#main .tabular a.txt:hover,
#main .mypage-box a.txt:hover,
#main .filters a.odt:hover,
#main .list th a.odt:hover,
#main .box a.odt:hover,
#main .tabular a.odt:hover,
#main .mypage-box a.odt:hover,
#main .filters a.icon:not(.add-checklist-item):hover,
#main .list th a.icon:not(.add-checklist-item):hover,
#main .box a.icon:not(.add-checklist-item):hover,
#main .tabular a.icon:not(.add-checklist-item):hover,
#main .mypage-box a.icon:not(.add-checklist-item):hover,
#main .filters span.icon-only:hover,
#main .list th span.icon-only:hover,
#main .box span.icon-only:hover,
#main .tabular span.icon-only:hover,
#main .mypage-box span.icon-only:hover,
#main .filters a.atom:hover,
#main .list th a.atom:hover,
#main .box a.atom:hover,
#main .tabular a.atom:hover,
#main .mypage-box a.atom:hover,
#main .filters a.csv:hover,
#main .list th a.csv:hover,
#main .box a.csv:hover,
#main .tabular a.csv:hover,
#main .mypage-box a.csv:hover,
#main .filters a.pdf:hover,
#main .list th a.pdf:hover,
#main .box a.pdf:hover,
#main .tabular a.pdf:hover,
#main .mypage-box a.pdf:hover,
#main .filters .sort-handle:hover,
#main .list th .sort-handle:hover,
#main .box .sort-handle:hover,
#main .tabular .sort-handle:hover,
#main .mypage-box .sort-handle:hover,
#main .filters a.icon-settings:hover,
#main .list th a.icon-settings:hover,
#main .box a.icon-settings:hover,
#main .tabular a.icon-settings:hover,
#main .mypage-box a.icon-settings:hover,
#main .filters a.icon-close:hover,
#main .list th a.icon-close:hover,
#main .box a.icon-close:hover,
#main .tabular a.icon-close:hover,
#main .mypage-box a.icon-close:hover,
#main .filters a.icon-only:hover,
#main .list th a.icon-only:hover,
#main .box a.icon-only:hover,
#main .tabular a.icon-only:hover,
#main .mypage-box a.icon-only:hover,
#main .filters a.png:hover,
#main .list th a.png:hover,
#main .box a.png:hover,
#main .tabular a.png:hover,
#main .mypage-box a.png:hover,
#main .filters a.vcf:hover,
#main .list th a.vcf:hover,
#main .box a.vcf:hover,
#main .tabular a.vcf:hover,
#main .mypage-box a.vcf:hover,
#main .filters a.xls:hover,
#main .list th a.xls:hover,
#main .box a.xls:hover,
#main .tabular a.xls:hover,
#main .mypage-box a.xls:hover,
#main .filters a.project:hover,
#main .list th a.project:hover,
#main .box a.project:hover,
#main .tabular a.project:hover,
#main .mypage-box a.project:hover,
#main .filters #deal_contact_id_add_link:hover,
#main .list th #deal_contact_id_add_link:hover,
#main .box #deal_contact_id_add_link:hover,
#main .tabular #deal_contact_id_add_link:hover,
#main .mypage-box #deal_contact_id_add_link:hover,
#main .filters #expense_contact_id_add_link:hover,
#main .list th #expense_contact_id_add_link:hover,
#main .box #expense_contact_id_add_link:hover,
#main .tabular #expense_contact_id_add_link:hover,
#main .mypage-box #expense_contact_id_add_link:hover,
#main .filters #invoice_contact_id_add_link:hover,
#main .list th #invoice_contact_id_add_link:hover,
#main .box #invoice_contact_id_add_link:hover,
#main .tabular #invoice_contact_id_add_link:hover,
#main .mypage-box #invoice_contact_id_add_link:hover,
#main .filters #operation_contact_id_add_link:hover,
#main .list th #operation_contact_id_add_link:hover,
#main .box #operation_contact_id_add_link:hover,
#main .tabular #operation_contact_id_add_link:hover,
#main .mypage-box #operation_contact_id_add_link:hover,
#main .filters #order_contact_id_add_link:hover,
#main .list th #order_contact_id_add_link:hover,
#main .box #order_contact_id_add_link:hover,
#main .tabular #order_contact_id_add_link:hover,
#main .mypage-box #order_contact_id_add_link:hover,
#main .filters #company_profile_edit a:hover,
#main .list th #company_profile_edit a:hover,
#main .box #company_profile_edit a:hover,
#main .tabular #company_profile_edit a:hover,
#main .mypage-box #company_profile_edit a:hover,
#main .filters .icon-not-ok:hover,
#main .list th .icon-not-ok:hover,
#main .box .icon-not-ok:hover,
#main .tabular .icon-not-ok:hover,
#main .mypage-box .icon-not-ok:hover {
  color: var(--icon-color-hover-bg);
}
#main .filters a.current-from-address:hover:after,
#main .list th a.current-from-address:hover:after,
#main .box a.current-from-address:hover:after,
#main .tabular a.current-from-address:hover:after,
#main .mypage-box a.current-from-address:hover:after,
#main .filters a[href*="questions_sections/new"]:hover:after,
#main .list th a[href*="questions_sections/new"]:hover:after,
#main .box a[href*="questions_sections/new"]:hover:after,
#main .tabular a[href*="questions_sections/new"]:hover:after,
#main .mypage-box a[href*="questions_sections/new"]:hover:after,
#main .filters .hold-control .controls .btn:hover:after,
#main .list th .hold-control .controls .btn:hover:after,
#main .box .hold-control .controls .btn:hover:after,
#main .tabular .hold-control .controls .btn:hover:after,
#main .mypage-box .hold-control .controls .btn:hover:after,
#main .filters #checklist_form_items .new span.icon:hover:after,
#main .list th #checklist_form_items .new span.icon:hover:after,
#main .box #checklist_form_items .new span.icon:hover:after,
#main .tabular #checklist_form_items .new span.icon:hover:after,
#main .mypage-box #checklist_form_items .new span.icon:hover:after,
#main .filters .fa-pencil:hover:after,
#main .list th .fa-pencil:hover:after,
#main .box .fa-pencil:hover:after,
#main .tabular .fa-pencil:hover:after,
#main .mypage-box .fa-pencil:hover:after,
#main .filters #content #comments .contextual a[href*="order_comments"]:hover:after,
#main .list th #content #comments .contextual a[href*="order_comments"]:hover:after,
#main .box #content #comments .contextual a[href*="order_comments"]:hover:after,
#main .tabular #content #comments .contextual a[href*="order_comments"]:hover:after,
#main .mypage-box #content #comments .contextual a[href*="order_comments"]:hover:after,
#main .filters div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover:after,
#main .list th div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover:after,
#main .box div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover:after,
#main .tabular div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover:after,
#main .mypage-box div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:hover:after,
#main .filters .query-columns .buttons span:hover:after,
#main .list th .query-columns .buttons span:hover:after,
#main .box .query-columns .buttons span:hover:after,
#main .tabular .query-columns .buttons span:hover:after,
#main .mypage-box .query-columns .buttons span:hover:after,
#main .filters #sidebar .contextual a:hover:after,
#main .list th #sidebar .contextual a:hover:after,
#main .box #sidebar .contextual a:hover:after,
#main .tabular #sidebar .contextual a:hover:after,
#main .mypage-box #sidebar .contextual a:hover:after,
#main .filters a.open-filter:hover:after,
#main .list th a.open-filter:hover:after,
#main .box a.open-filter:hover:after,
#main .tabular a.open-filter:hover:after,
#main .mypage-box a.open-filter:hover:after,
#main .filters a.html:hover:after,
#main .list th a.html:hover:after,
#main .box a.html:hover:after,
#main .tabular a.html:hover:after,
#main .mypage-box a.html:hover:after,
#main .filters a.txt:hover:after,
#main .list th a.txt:hover:after,
#main .box a.txt:hover:after,
#main .tabular a.txt:hover:after,
#main .mypage-box a.txt:hover:after,
#main .filters a.odt:hover:after,
#main .list th a.odt:hover:after,
#main .box a.odt:hover:after,
#main .tabular a.odt:hover:after,
#main .mypage-box a.odt:hover:after,
#main .filters a.icon:not(.add-checklist-item):hover:after,
#main .list th a.icon:not(.add-checklist-item):hover:after,
#main .box a.icon:not(.add-checklist-item):hover:after,
#main .tabular a.icon:not(.add-checklist-item):hover:after,
#main .mypage-box a.icon:not(.add-checklist-item):hover:after,
#main .filters span.icon-only:hover:after,
#main .list th span.icon-only:hover:after,
#main .box span.icon-only:hover:after,
#main .tabular span.icon-only:hover:after,
#main .mypage-box span.icon-only:hover:after,
#main .filters a.atom:hover:after,
#main .list th a.atom:hover:after,
#main .box a.atom:hover:after,
#main .tabular a.atom:hover:after,
#main .mypage-box a.atom:hover:after,
#main .filters a.csv:hover:after,
#main .list th a.csv:hover:after,
#main .box a.csv:hover:after,
#main .tabular a.csv:hover:after,
#main .mypage-box a.csv:hover:after,
#main .filters a.pdf:hover:after,
#main .list th a.pdf:hover:after,
#main .box a.pdf:hover:after,
#main .tabular a.pdf:hover:after,
#main .mypage-box a.pdf:hover:after,
#main .filters .sort-handle:hover:after,
#main .list th .sort-handle:hover:after,
#main .box .sort-handle:hover:after,
#main .tabular .sort-handle:hover:after,
#main .mypage-box .sort-handle:hover:after,
#main .filters a.icon-settings:hover:after,
#main .list th a.icon-settings:hover:after,
#main .box a.icon-settings:hover:after,
#main .tabular a.icon-settings:hover:after,
#main .mypage-box a.icon-settings:hover:after,
#main .filters a.icon-close:hover:after,
#main .list th a.icon-close:hover:after,
#main .box a.icon-close:hover:after,
#main .tabular a.icon-close:hover:after,
#main .mypage-box a.icon-close:hover:after,
#main .filters a.icon-only:hover:after,
#main .list th a.icon-only:hover:after,
#main .box a.icon-only:hover:after,
#main .tabular a.icon-only:hover:after,
#main .mypage-box a.icon-only:hover:after,
#main .filters a.png:hover:after,
#main .list th a.png:hover:after,
#main .box a.png:hover:after,
#main .tabular a.png:hover:after,
#main .mypage-box a.png:hover:after,
#main .filters a.vcf:hover:after,
#main .list th a.vcf:hover:after,
#main .box a.vcf:hover:after,
#main .tabular a.vcf:hover:after,
#main .mypage-box a.vcf:hover:after,
#main .filters a.xls:hover:after,
#main .list th a.xls:hover:after,
#main .box a.xls:hover:after,
#main .tabular a.xls:hover:after,
#main .mypage-box a.xls:hover:after,
#main .filters a.project:hover:after,
#main .list th a.project:hover:after,
#main .box a.project:hover:after,
#main .tabular a.project:hover:after,
#main .mypage-box a.project:hover:after,
#main .filters #deal_contact_id_add_link:hover:after,
#main .list th #deal_contact_id_add_link:hover:after,
#main .box #deal_contact_id_add_link:hover:after,
#main .tabular #deal_contact_id_add_link:hover:after,
#main .mypage-box #deal_contact_id_add_link:hover:after,
#main .filters #expense_contact_id_add_link:hover:after,
#main .list th #expense_contact_id_add_link:hover:after,
#main .box #expense_contact_id_add_link:hover:after,
#main .tabular #expense_contact_id_add_link:hover:after,
#main .mypage-box #expense_contact_id_add_link:hover:after,
#main .filters #invoice_contact_id_add_link:hover:after,
#main .list th #invoice_contact_id_add_link:hover:after,
#main .box #invoice_contact_id_add_link:hover:after,
#main .tabular #invoice_contact_id_add_link:hover:after,
#main .mypage-box #invoice_contact_id_add_link:hover:after,
#main .filters #operation_contact_id_add_link:hover:after,
#main .list th #operation_contact_id_add_link:hover:after,
#main .box #operation_contact_id_add_link:hover:after,
#main .tabular #operation_contact_id_add_link:hover:after,
#main .mypage-box #operation_contact_id_add_link:hover:after,
#main .filters #order_contact_id_add_link:hover:after,
#main .list th #order_contact_id_add_link:hover:after,
#main .box #order_contact_id_add_link:hover:after,
#main .tabular #order_contact_id_add_link:hover:after,
#main .mypage-box #order_contact_id_add_link:hover:after,
#main .filters #company_profile_edit a:hover:after,
#main .list th #company_profile_edit a:hover:after,
#main .box #company_profile_edit a:hover:after,
#main .tabular #company_profile_edit a:hover:after,
#main .mypage-box #company_profile_edit a:hover:after,
#main .filters .icon-not-ok:hover:after,
#main .list th .icon-not-ok:hover:after,
#main .box .icon-not-ok:hover:after,
#main .tabular .icon-not-ok:hover:after,
#main .mypage-box .icon-not-ok:hover:after {
  color: var(--icon-color-hover-bg);
}
#main .box .list span.icon:hover:after,
#main .tabular .list span.icon:hover:after,
#main .mypage-box .list span.icon:hover:after,
#main .list span.icon:hover:after,
#main .table-list span.icon:hover:after,
#main .box .list span.icon-only:hover:after,
#main .tabular .list span.icon-only:hover:after,
#main .mypage-box .list span.icon-only:hover:after,
#main .list span.icon-only:hover:after,
#main .table-list span.icon-only:hover:after,
#main .box .list a.icon:hover:after,
#main .tabular .list a.icon:hover:after,
#main .mypage-box .list a.icon:hover:after,
#main .list a.icon:hover:after,
#main .table-list a.icon:hover:after,
#main .box .list a.icon-only:hover:after,
#main .tabular .list a.icon-only:hover:after,
#main .mypage-box .list a.icon-only:hover:after,
#main .list a.icon-only:hover:after,
#main .table-list a.icon-only:hover:after {
  color: var(--color-main-color-text);
}
#main .box .list span.icon:hover:before,
#main .tabular .list span.icon:hover:before,
#main .mypage-box .list span.icon:hover:before,
#main .list span.icon:hover:before,
#main .table-list span.icon:hover:before,
#main .box .list span.icon-only:hover:before,
#main .tabular .list span.icon-only:hover:before,
#main .mypage-box .list span.icon-only:hover:before,
#main .list span.icon-only:hover:before,
#main .table-list span.icon-only:hover:before,
#main .box .list a.icon:hover:before,
#main .tabular .list a.icon:hover:before,
#main .mypage-box .list a.icon:hover:before,
#main .list a.icon:hover:before,
#main .table-list a.icon:hover:before,
#main .box .list a.icon-only:hover:before,
#main .tabular .list a.icon-only:hover:before,
#main .mypage-box .list a.icon-only:hover:before,
#main .list a.icon-only:hover:before,
#main .table-list a.icon-only:hover:before {
  background: var(--color-main-color);
}
#main .box .list span.icon.icon-checked,
#main .tabular .list span.icon.icon-checked,
#main .mypage-box .list span.icon.icon-checked,
#main .list span.icon.icon-checked,
#main .table-list span.icon.icon-checked,
#main .box .list span.icon-only.icon-checked,
#main .tabular .list span.icon-only.icon-checked,
#main .mypage-box .list span.icon-only.icon-checked,
#main .list span.icon-only.icon-checked,
#main .table-list span.icon-only.icon-checked {
  color: var(--icon-color-bg);
}
#main .box .list span.icon.icon-checked:after,
#main .tabular .list span.icon.icon-checked:after,
#main .mypage-box .list span.icon.icon-checked:after,
#main .list span.icon.icon-checked:after,
#main .table-list span.icon.icon-checked:after,
#main .box .list span.icon-only.icon-checked:after,
#main .tabular .list span.icon-only.icon-checked:after,
#main .mypage-box .list span.icon-only.icon-checked:after,
#main .list span.icon-only.icon-checked:after,
#main .table-list span.icon-only.icon-checked:after {
  color: var(--icon-color-bg);
}
#main .box .list span.icon.icon-checked:before,
#main .tabular .list span.icon.icon-checked:before,
#main .mypage-box .list span.icon.icon-checked:before,
#main .list span.icon.icon-checked:before,
#main .table-list span.icon.icon-checked:before,
#main .box .list span.icon-only.icon-checked:before,
#main .tabular .list span.icon-only.icon-checked:before,
#main .mypage-box .list span.icon-only.icon-checked:before,
#main .list span.icon-only.icon-checked:before,
#main .table-list span.icon-only.icon-checked:before {
  display: none;
}
#main .box .list span.icon.icon-checked:hover,
#main .tabular .list span.icon.icon-checked:hover,
#main .mypage-box .list span.icon.icon-checked:hover,
#main .list span.icon.icon-checked:hover,
#main .table-list span.icon.icon-checked:hover,
#main .box .list span.icon-only.icon-checked:hover,
#main .tabular .list span.icon-only.icon-checked:hover,
#main .mypage-box .list span.icon-only.icon-checked:hover,
#main .list span.icon-only.icon-checked:hover,
#main .table-list span.icon-only.icon-checked:hover {
  color: var(--icon-color-bg);
}
#main .box .list span.icon.icon-checked:hover:after,
#main .tabular .list span.icon.icon-checked:hover:after,
#main .mypage-box .list span.icon.icon-checked:hover:after,
#main .list span.icon.icon-checked:hover:after,
#main .table-list span.icon.icon-checked:hover:after,
#main .box .list span.icon-only.icon-checked:hover:after,
#main .tabular .list span.icon-only.icon-checked:hover:after,
#main .mypage-box .list span.icon-only.icon-checked:hover:after,
#main .list span.icon-only.icon-checked:hover:after,
#main .table-list span.icon-only.icon-checked:hover:after {
  color: var(--icon-color-bg);
}
#main table th .sort:not(.add-checklist-item) {
  font-size: 1rem;
  line-height: 1.4;
  padding: 0 25px 0 0;
  color: var(--color-main-color) !important;
  width: auto;
  height: auto;
  min-height: 1px;
  overflow: visible;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#main table th .sort:not(.add-checklist-item):after {
  display: block;
  clear: both;
  top: 50%;
  left: auto;
  right: 0;
  margin: -10px 0 0;
  height: 20px;
  width: 20px;
  font-size: 20px;
  line-height: 20px;
  background: var(--color-main-color) !important;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
}
#main table th .sort:not(.add-checklist-item):after {
  color: var(--color-main-color-text) !important;
}
#main table th .sort:not(.add-checklist-item):before {
  display: none;
}
#main ul.subprojects li {
  position: relative;
  padding: 0 5px 0 0;
  margin: 0 5px 5px 0;
  display: flex;
  align-items: center;
}
#main ul.subprojects li:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 12px;
  margin: -6px 0 0;
  background: var(--text-color-main);
}
#main ul.subprojects li:last-child {
  padding: 0;
  margin: 0 0 5px 0;
}
#main ul.subprojects li:last-child:after {
  display: none;
}
#main ul.subprojects a.project {
  color: var(--color-main-color) !important;
  line-height: 1.5em;
  height: auto;
  min-width: 1px;
  min-height: 1px;
  width: auto;
  font-size: 1rem;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  font-weight: bold;
}
#main ul.subprojects a.project:after,
#main ul.subprojects a.project:before {
  display: none;
  width: 0;
  height: 0;
}
#main #company_profile_edit a {
  width: 22px;
  height: 22px;
}
#main #company_profile_edit a img[src*='edit.png'] {
  display: none !important;
}
#main #company_profile_edit a:after {
  font-size: 22px;
}
#main .checkbox a {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  color: var(--icon-color-list);
}
#main .checkbox a img[src*='toggle_check.png'] {
  display: none !important;
}
#main .checkbox a:after {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
  color: var(--icon-color-list);
}
#main .checkbox a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-list);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#main .checkbox a:hover {
  color: var(--icon-color-hover-list);
}
#main .checkbox a:hover:after {
  color: var(--icon-color-hover-list);
}
#main .checkbox a:hover:before {
  background: var(--icon_bg_hover-list);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main a[href*="questions_sections/new"] img[src*='add.png'] {
  display: none !important;
}
#main li.icon,
#main #all_attributes span.icon,
#main fieldset.collapsible.collapsed > legend,
#main fieldset.collapsible > legend,
#main tr.project.idnt td.name span {
  position: relative;
  background-image: none !important;
}
#main li.icon img[src*='add.png'],
#main #all_attributes span.icon img[src*='add.png'],
#main fieldset.collapsible.collapsed > legend img[src*='add.png'],
#main fieldset.collapsible > legend img[src*='add.png'],
#main tr.project.idnt td.name span img[src*='add.png'] {
  display: none !important;
}
#main li.icon:after,
#main #all_attributes span.icon:after,
#main fieldset.collapsible.collapsed > legend:after,
#main fieldset.collapsible > legend:after,
#main tr.project.idnt td.name span:after {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 22px;
  line-height: var(--icon-width);
}
#main label[for="issue_author_id"] + a .icon,
#main #all_attributes label[for="issue_description"] + a .icon {
  position: relative;
  color: var(--icon-color-bg);
}
#main label[for="issue_author_id"] + a .icon:after,
#main #all_attributes label[for="issue_description"] + a .icon:after {
  width: 20px;
  height: 20px;
  top: 50%;
  margin: -10px 0 0;
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  color: var(--icon-color-bg);
}
#main label[for="issue_author_id"] + a .icon:before,
#main #all_attributes label[for="issue_description"] + a .icon:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  margin: -10px 0 0;
  left: 0px;
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 0;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main label[for="issue_author_id"] + a:hover .icon,
#main #all_attributes label[for="issue_description"] + a:hover .icon {
  color: var(--icon-color-hover-bg);
}
#main label[for="issue_author_id"] + a:hover .icon:after,
#main #all_attributes label[for="issue_description"] + a:hover .icon:after {
  color: var(--icon-color-hover-bg);
}
#main label[for="issue_author_id"] + a:hover .icon:before,
#main #all_attributes label[for="issue_description"] + a:hover .icon:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main a[href*="questions_sections/new"]:hover:after,
#main li.icon:after {
  color: var(--icon-color-hover-bg);
}
#main tr.project.idnt td.name span {
  display: inline-block;
  position: relative;
  padding: 0 0 0 25px;
}
#main tr.project.idnt td.name span:after {
  position: absolute;
  top: 50%;
  margin: -10px 0 0;
  left: 0;
  display: block;
  clear: both;
  height: var(--icon-width-small);
  width: var(--icon-width-small);
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  color: var(--text-color-main);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main fieldset.collapsible.collapsed > legend:after,
#main fieldset.collapsible > legend:after {
  font-size: 15px;
}
#main .fa-pencil,
#main #sidebar .contextual a,
#main #sidebar a.icon-only,
#main #sidebar a.icon {
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
}
#main .fa-pencil:before,
#main #sidebar .contextual a:before,
#main #sidebar a.icon-only:before,
#main #sidebar a.icon:before {
  background: var(--icon_bg);
}
#main #history a.html,
#main #history a.icon,
#main #history a.atom,
#main #history a.csv,
#main #history a.pdf,
#main #history .sort-handle,
#main #history a.icon-settings,
#main #history a.icon-close,
#main #history a.icon-only,
#main #history a.png,
#main #history a.vcf,
#main #history a.xls,
#main #history .icon-not-ok {
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
}
#main #history a.html:before,
#main #history a.icon:before,
#main #history a.atom:before,
#main #history a.csv:before,
#main #history a.pdf:before,
#main #history .sort-handle:before,
#main #history a.icon-settings:before,
#main #history a.icon-close:before,
#main #history a.icon-only:before,
#main #history a.png:before,
#main #history a.vcf:before,
#main #history a.xls:before,
#main #history .icon-not-ok:before {
  background: var(--icon_bg);
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
}
#main #history a.html:after,
#main #history a.icon:after,
#main #history a.atom:after,
#main #history a.csv:after,
#main #history a.pdf:after,
#main #history .sort-handle:after,
#main #history a.icon-settings:after,
#main #history a.icon-close:after,
#main #history a.icon-only:after,
#main #history a.png:after,
#main #history a.vcf:after,
#main #history a.xls:after,
#main #history .icon-not-ok:after {
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
}
#main .description .icon {
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
}
#main .description .icon:before {
  background: var(--icon_bg);
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
}
#main .description .icon:after {
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
}
#main .hold-control .controls .btn:before {
  background: var(--icon_bg);
}
#main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:before,
#main #content #comments .contextual a[href*="order_comments"]:before {
  background: var(--icon_bg);
}
#main .issue .icon:before,
#main .issue .icon-only:before {
  background: var(--icon_bg);
}
#main tr.issue .icon:before,
#main tr.issue .icon-only:before {
  background: var(--icon_bg-bg);
}
#main #content p.other-formats {
  margin: 0;
  position: absolute;
  bottom: 0;
  right: 0;
  font-size: 0.85714286rem;
  color: var(--icon-color);
  width: 50%;
}
#main #content p.other-formats a {
  color: var(--icon-color-bg);
}
#main #content p.other-formats a:hover:after {
  color: var(--icon-color-hover-bg);
}
#main #content .tab-content p.other-formats {
  position: static;
  margin: 0;
}
#main #content .tab-content #notes {
  float: left;
  overflow: hidden;
  width: 100%;
}
#main #content .tab-content #notes .pagination {
  position: static;
}
#main p.other-formats {
  font-size: 0.857rem;
  line-height: 2.143rem;
  margin: 0;
  float: right;
  width: 49%;
}
#main p.other-formats:after {
  content: '';
  display: block;
  clear: both;
  width: 100%;
  height: 1px;
  overflow: hidden;
}
#main p.other-formats span {
  display: inline-block;
  vertical-align: top;
}
#main p.other-formats span:before {
  display: none;
}
#main p.other-formats span a {
  display: block;
}
#main .agile-board .user:after {
  content: '';
}
#main .agile-board .icon-comment {
  background-image: none !important;
  position: relative;
}
#main .agile-board .icon-comment:before {
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 14px;
  height: 14px;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 14px;
  line-height: 1;
}
#main .agile-board .icon-comment:after {
  display: none;
}
#notes table.note_data {
  table-layout: fixed;
}
#notes .attachments {
  padding-top: 20px;
}
#notes .redmine-evolution-attachments {
  margin-left: 0;
  margin-right: 0;
  padding: 5px 10px;
  border: 0;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  width: 100%;
  margin-top: 20px;
  margin-bottom: 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
/* END MAIN */
/* --------------------- https://redmine-evolution.com/ -- */
/* DELL FOOTER */
#footer {
  background: var(--bg);
  color: var(--text-color-main);
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  border-color: var(--border-color);
  border-bottom: 1px solid var(--border-color);
  font-size: 0.7857rem;
  line-height: 0.7857rem;
  padding: 5px;
  -webkit-transition: padding-right var(--time-main) ease-in-out;
  -moz-transition: padding-right var(--time-main) ease-in-out;
  -ms-transition: padding-right var(--time-main) ease-in-out;
  -o-transition: padding-right var(--time-main) ease-in-out;
  transition: padding-right var(--time-main) ease-in-out;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#footer > a {
  display: none;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START INFO BOX */
div.flash.error,
#errorExplanation {
  background-color: var(--notice-error-bg);
  border-color: var(--notice-error-main);
  color: var(--notice-error-main-text);
}
#wrapper #errorExplanation,
#wrapper #flash_error {
  background: none;
  background-color: var(--notice-error-main);
  border-color: var(--red_border_error);
  color: var(--red_error_text);
  font-size: 1rem;
  font-weight: 500;
  -webkit-border-radius: var(--border-radius-midle);
  -moz-border-radius: var(--border-radius-midle);
  border-radius: var(--border-radius-midle);
  padding: 14px;
}
#wrapper #errorExplanation ul,
#wrapper #flash_error ul {
  font-size: 1rem;
  font-weight: 500;
  margin: 0;
  padding: 0;
  list-style: none;
}
#wrapper #errorExplanation ul li,
#wrapper #flash_error ul li {
  padding: 0 0 0 20px;
  position: relative;
}
#wrapper #errorExplanation ul li:after,
#wrapper #flash_error ul li:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0.5rem;
  left: 0px;
  width: 6px;
  height: 6px;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  background: var(--color-fff);
}
/* END INFO BOX */
/* --------------------- https://redmine-evolution.com/ -- */
img.gravatar {
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
  background: var(--bg-fff);
  display: inline-block;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START MAY PAGE  */
.contextual form {
  display: flex;
  font-size: 0.85714286rem;
  line-height: 32px;
  color: var(--text-color-main);
  align-items: center;
  justify-content: center;
}
.contextual form select {
  margin: 0;
}
.contextual form .jcf-select {
  min-width: 200px;
  margin: 0 0 0 10px;
}
/* END MAY PAGE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START FILTER */
.query-columns,
#vault_whitelist {
  display: block;
}
.query-columns .buttons,
#vault_whitelist .buttons {
  margin: 0;
}
.query-columns .buttons span,
#vault_whitelist .buttons span {
  display: block;
}
.query-columns .buttons input[type="button"],
#vault_whitelist .buttons input[type="button"] {
  display: block;
  outline: 0 none;
  margin: 5px 10px;
  width: var(--icon-width);
  height: var(--icon-width);
  font-size: 17px;
  line-height: var(--icon-width);
  background: none;
  border: none;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  background-color: var(--button-bg-bg);
  color: var(--button-color-bg);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.query-columns .buttons input[type="button"]:hover,
#vault_whitelist .buttons input[type="button"]:hover {
  background-color: var(--button-bg-hover-bg);
  color: var(--button-color-hover-bg);
}
.query-columns label,
#vault_whitelist label {
  font-weight: 600;
  display: block;
  margin: 0 0 10px !important;
}
.add-filter {
  width: auto;
  margin: 0 0 10px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.add-filter .jcf-select {
  min-width: 200px;
}
.add-filter label {
  margin: 0 10px 0 0;
}
fieldset#filters table {
  table-layout: fixed;
}
fieldset#filters table td {
  padding: 0 20px 10px 0;
}
fieldset#filters table td:last-child {
  padding-right: 0;
}
fieldset#filters table td.field {
  width: 275px;
  font-weight: bold;
}
fieldset#filters table td.operator {
  width: 150px;
}
fieldset#filters table td.values > span:nth-child(2) {
  margin-top: 10px;
}
fieldset#filters .add-filter label {
  font-weight: bold;
}
#query_form.open-filters .holder-filters,
#eq-filter-controls.open-filters .holder-filters {
  max-height: 2000px;
}
#query_form .holder-filters,
#eq-filter-controls .holder-filters {
  overflow: hidden;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  max-height: 0;
  -webkit-transition: max-height var(--time-main) ease-in-out;
  -moz-transition: max-height var(--time-main) ease-in-out;
  -ms-transition: max-height var(--time-main) ease-in-out;
  -o-transition: max-height var(--time-main) ease-in-out;
  transition: max-height var(--time-main) ease-in-out;
}
#query_form .holder-filters .in-filter,
#eq-filter-controls .holder-filters .in-filter {
  border-bottom: 1px solid var(--border-color);
  padding: 0 0 10px;
  margin-bottom: 20px;
}
#query_form .holder-filters .admin-filter > div,
#eq-filter-controls .holder-filters .admin-filter > div {
  display: flex !important;
  width: 100%;
  justify-content: space-between;
  align-items: flex-end;
  align-content: flex-end;
  position: static;
}
#query_form .holder-filters .filters-table,
#eq-filter-controls .holder-filters .filters-table {
  flex: 1 0 auto;
}
#query_form .holder-filters .add-filter,
#eq-filter-controls .holder-filters .add-filter {
  width: auto;
  margin: 0 0 10px;
  flex: 1 0 auto;
  padding-left: 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#query_form .holder-filters .add-filter .jcf-select,
#eq-filter-controls .holder-filters .add-filter .jcf-select {
  min-width: 200px;
}
#query_form .holder-filters table,
#eq-filter-controls .holder-filters table {
  border-spacing: 0;
}
#query_form .holder-filters table td,
#eq-filter-controls .holder-filters table td {
  padding: 0 20px 10px 0;
}
#query_form .holder-filters table td#chart-unit-row,
#eq-filter-controls .holder-filters table td#chart-unit-row {
  white-space: nowrap;
  align-items: center;
  vertical-align: center;
}
#query_form .holder-filters table td#chart-unit-row label,
#eq-filter-controls .holder-filters table td#chart-unit-row label {
  padding-top: 7px;
  display: inline-block;
}
#query_form .holder-filters table .inline,
#eq-filter-controls .holder-filters table .inline {
  margin: 0 10px 0 0;
}
#query_form .holder-filters .jcf-select,
#eq-filter-controls .holder-filters .jcf-select {
  margin: 0;
}
#query_form .buttons {
  margin: 0;
}
#query_form_with_buttons,
#query_form_content,
#eq-filter-controls {
  display: block;
  overflow: hidden;
  width: 100%;
  font-size: 1rem;
  line-height: 1.4;
}
#query_form_with_buttons .buttons,
#query_form_content .buttons,
#eq-filter-controls .buttons {
  margin: 0;
  align-items: center;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
}
#query_form_with_buttons fieldset,
#query_form_content fieldset,
#eq-filter-controls fieldset {
  position: relative;
  padding: 25px 32px 15px;
  margin: 0 0 15px;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  background: var(--bg-box);
  border: none;
}
#query_form_with_buttons fieldset legend,
#query_form_content fieldset legend,
#eq-filter-controls fieldset legend {
  position: absolute;
  width: 100%;
  padding: 0 20px 0 50px;
  display: flex;
  align-items: center;
  height: 40px;
  top: 0;
  left: 0;
  color: var(--text-color-main);
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.4;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
}
#query_form_with_buttons fieldset legend.open-in-box .icon-down,
#query_form_content fieldset legend.open-in-box .icon-down,
#eq-filter-controls fieldset legend.open-in-box .icon-down {
  color: var(--icon-color-hover-bg);
}
#query_form_with_buttons fieldset legend.open-in-box .icon-down:after,
#query_form_content fieldset legend.open-in-box .icon-down:after,
#eq-filter-controls fieldset legend.open-in-box .icon-down:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#query_form_with_buttons fieldset legend .icon-down,
#query_form_content fieldset legend .icon-down,
#eq-filter-controls fieldset legend .icon-down {
  position: absolute;
  top: 5px;
  left: 10px;
  width: var(--icon-width);
  height: var(--icon-width);
  background-size: var(--icon-width) var(--icon-width);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
  color: var(--icon-color-bg);
}
#query_form_with_buttons fieldset legend .icon-down:after,
#query_form_content fieldset legend .icon-down:after,
#eq-filter-controls fieldset legend .icon-down:after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  z-index: 1;
  opacity: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: 1;
}
#query_form_with_buttons fieldset legend .icon-down:before,
#query_form_content fieldset legend .icon-down:before,
#eq-filter-controls fieldset legend .icon-down:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  height: var(--icon-width);
  width: var(--icon-width);
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 0;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#query_form_with_buttons fieldset legend:hover .icon-down,
#query_form_content fieldset legend:hover .icon-down,
#eq-filter-controls fieldset legend:hover .icon-down {
  color: var(--icon-color-hover-bg);
}
#query_form_with_buttons fieldset legend:hover .icon-down:before,
#query_form_content fieldset legend:hover .icon-down:before,
#eq-filter-controls fieldset legend:hover .icon-down:before {
  background-color: var(--icon_bg_hover-bg);
  webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#query_form_with_buttons fieldset legend.selected .icon-down,
#query_form_content fieldset legend.selected .icon-down,
#eq-filter-controls fieldset legend.selected .icon-down {
  color: var(--icon_color_active-bg);
}
#query_form_with_buttons fieldset legend.selected .icon-down:before,
#query_form_content fieldset legend.selected .icon-down:before,
#eq-filter-controls fieldset legend.selected .icon-down:before {
  background-color: var(--icon_bg_active-bg);
  webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#query_form_with_buttons .open-in-box ~ .open-box,
#query_form_content .open-in-box ~ .open-box,
#eq-filter-controls .open-in-box ~ .open-box {
  max-height: 1000px;
}
#query_form_with_buttons .open-box,
#query_form_content .open-box,
#eq-filter-controls .open-box {
  display: block !important;
  overflow: hidden;
  width: 100%;
  max-height: 0;
  -webkit-transition: max-height var(--time-main) ease-in-out;
  -moz-transition: max-height var(--time-main) ease-in-out;
  -ms-transition: max-height var(--time-main) ease-in-out;
  -o-transition: max-height var(--time-main) ease-in-out;
  transition: max-height var(--time-main) ease-in-out;
}
#query_form_with_buttons .open-box > div,
#query_form_content .open-box > div,
#eq-filter-controls .open-box > div {
  display: block !important;
  overflow: hidden;
  padding: 20px 0 0;
}
#query_form_with_buttons .add-filter,
#query_form_content .add-filter,
#eq-filter-controls .add-filter {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
#query_form_with_buttons .add-filter label,
#query_form_content .add-filter label,
#eq-filter-controls .add-filter label {
  margin: 0 10px 0 0;
}
#query_form .add-filter {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
#query_form .add-filter label {
  margin: 0 10px 0 0;
}
/* END FILTER */
/* --------------------- https://redmine-evolution.com/ -- */
/* START FORM */
#content form .select2 {
  width: 100% !important;
}
#content form .select2,
#content form select {
  width: 100%;
  flex: 1 0 0;
}
#content form select ~ .icon-only,
#content form select ~ .icon,
#content form input ~ .icon-only,
#content form input ~ .icon,
#content form textarea ~ .icon-only,
#content form textarea ~ .icon,
#content form button ~ .icon-only,
#content form button ~ .icon {
  margin: 0 0 0 10px !important;
}
#content form input[type="submit"] ~ .icon.icon-reload {
  margin-top: 5px !important;
  margin-bottom: 5px !important;
}
#content form p input[type="submit"] ~ .icon.icon-reload {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
#content form .buttons input ~ .icon {
  margin: 0 !important;
}
#content form .box p {
  padding: 0 0 0 295px;
}
#content form .box p:empty {
  display: none;
  height: 0;
  overflow: hidden;
}
#content form .box p > label {
  margin: 0 10px 0 0 !important;
  flex: 0 1 auto;
  text-align: left;
  color: var(--text-color-main);
  font-size: 1rem;
  line-height: 1.4;
}
#content form .box p > label:first-child {
  font-weight: 600;
  margin: 0 0 0 -295px !important;
  width: 295px;
  padding: 0 10px 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#content form .box p > label.inline {
  margin-bottom: 5px !important;
}
#content form .box p > label[for="invoice_description"] ~ div {
  margin-bottom: 10px !important;
}
#content form .box p#issue_is_private_wrap label.inline {
  margin-bottom: 0 !important;
}
#content form[action="/custom_fields/new"] .box p label {
  margin: 5px 0 0 !important;
}
#content form[action="/custom_fields/new"] .box p label:first-child {
  margin: 0 !important;
}
#content form .tabular p {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 0 10px;
  color: var(--text-color-main);
  font-size: 0.85714286rem;
  line-height: 1rem;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
#content form .tabular p em.info {
  color: var(--color-dark-grey);
  font-size: 0.85714286rem;
  line-height: 1rem;
}
#content form .tabular p.nodata {
  justify-content: center;
  padding: 0 20px;
}
#content form .tabular p p:empty {
  display: none;
}
#content form .tabular p br {
  display: block;
  width: 100%;
  height: 0;
  padding: 0 1000000px;
  margin: 0 0 5px;
  content: "";
}
#content form #issue_description_and_toolbar {
  flex: 1 0 0;
  width: 100%;
}
#content form input[type="url"],
#content form input[type="email"],
#content form input[type="password"],
#content form input[type="text"],
#content form input[type="number"],
#content form input[type="date"],
#content form textarea:not(.select2-search__field) {
  height: 30px;
  box-sizing: border-box;
  border: 1px solid var(--border-color-content);
  padding: 6px 12px;
  font-size: 0.85714286rem;
  line-height: 1.28571429rem;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  color: var(--text-color-main);
  margin: 0;
  min-width: 190px;
  outline: 0 none;
  width: 100%;
  max-width: 100%;
  flex: 1;
  background: var(--bg-fff);
  min-height: 30px;
  -webkit-appearance: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
#content form input[type="url"].autocomplete,
#content form input[type="email"].autocomplete,
#content form input[type="password"].autocomplete,
#content form input[type="text"].autocomplete,
#content form input[type="number"].autocomplete,
#content form input[type="date"].autocomplete,
#content form textarea:not(.select2-search__field).autocomplete {
  background-image: url(../images/icon/search.svg);
  background-repeat: no-repeat;
  background-position: 100% 50%;
  background-size: 26px 26px;
  line-height: 18px;
  padding: 8px 38px 8px 8px !important;
}
#content form #issue_agile_data_attributes_story_points {
  margin-left: -15px;
}
#content form input[type="date"],
#content form .hasDatepicker,
#content form .hasDatepicke[type="text"] {
  background-image: url(../images/icon/calendar.svg) !important;
  background-position: 100% 50% !important;
  background-repeat: no-repeat !important;
  background-size: 26px 26px !important;
  padding-right: 30px !important;
}
#content form input[type="date"]::-webkit-calendar-picker-indicator,
#content form .hasDatepicker::-webkit-calendar-picker-indicator,
#content form .hasDatepicke[type="text"]::-webkit-calendar-picker-indicator {
  color: rgba(0, 0, 0, 0);
  opacity: 1;
  font-size: 0px;
  line-height: 0px;
}
#content form .hasDatepicker + img {
  display: none;
}
#content form input[type="text"] + input[type="text"] {
  min-width: auto;
}
#content form input[type="submit"],
#content form input[type="button"] {
  -webkit-appearance: none;
}
#content form textarea:not(.select2-search__field) {
  min-height: 190px;
  width: 100% !important;
  position: relative;
}
#content form .item textarea {
  min-height: 30px;
}
#content form input#issue_subject,
#content form input#document_title,
#content form input#time_entry_comments {
  width: 100%;
}
#content form input[type="submit"] {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: 0 !important;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 10px 0 0;
  width: auto;
  height: auto;
  outline: 0 none;
}
#content form input[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#content form input[type="submit"]:disabled {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
  cursor: default;
}
#content form input[type="submit"]:disabled:hover {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
}
#content form input[type="submit"] + a,
#content form input[type="submit"] + input[type="button"] {
  display: inline-block;
  border: none;
  padding: 8px 15px;
  width: auto;
  height: 30px;
  font-size: 1rem;
  line-height: 1rem;
  font-weight: var(--button-font-weight);
  color: var(--button-color);
  background: var(--button-bg);
  text-decoration: none;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#content form input[type="submit"] + a:after,
#content form input[type="submit"] + input[type="button"]:after,
#content form input[type="submit"] + a:before,
#content form input[type="submit"] + input[type="button"]:before {
  display: none;
}
#content form input[type="submit"] + a.icon-reload,
#content form input[type="submit"] + input[type="button"].icon-reload {
  color: var(--icon-color-bg);
  background: var(--icon_bg-bg);
}
#content form input[type="submit"] + a.icon-reload:hover,
#content form input[type="submit"] + input[type="button"].icon-reload:hover {
  color: var(--icon-color-hover-bg);
  background: var(--icon_bg_hover-bg);
}
#content form input[type="submit"] + a:hover,
#content form input[type="submit"] + input[type="button"]:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#content form .admin-filter input[type="submit"] + a,
#content form .admin-filter input[type="submit"] + input[type="button"] {
  color: var(--button-color);
  background: var(--button-bg);
}
#content form .admin-filter input[type="submit"] + a:hover,
#content form .admin-filter input[type="submit"] + input[type="button"]:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#content form .admin-filter input[type="submit"] + a.icon-reload,
#content form .admin-filter input[type="submit"] + input[type="button"].icon-reload {
  color: var(--icon-color-bg);
  background: var(--icon_bg-bg);
}
#content form .admin-filter input[type="submit"] + a.icon-reload:hover,
#content form .admin-filter input[type="submit"] + input[type="button"].icon-reload:hover {
  color: var(--icon-color-hover-bg);
  background: var(--icon_bg_hover-bg);
}
#content form .box input[type="submit"] + a,
#content form .box input[type="submit"] + input[type="button"] {
  color: var(--button-color);
  background: var(--button-bg);
}
#content form .box input[type="submit"] + a:hover,
#content form .box input[type="submit"] + input[type="button"]:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#content form .box input[type="submit"] + a.icon-reload,
#content form .box input[type="submit"] + input[type="button"].icon-reload {
  color: var(--icon-color-bg);
  background: var(--icon_bg-bg);
}
#content form .box input[type="submit"] + a.icon-reload:hover,
#content form .box input[type="submit"] + input[type="button"].icon-reload:hover {
  color: var(--icon-color-hover-bg);
  background: var(--icon_bg_hover-bg);
}
#content form #issue_estimated_hours,
#content form #time_entry_hours {
  margin: 0 10px 0 0;
}
#content form#new_time_entry #time_entry_hours {
  margin: 0;
}
#content form#new_time_entry #time_entry_issue_id {
  min-width: 100%;
}
#content form #time_entry_issue > a {
  margin: 0 0 0 10px;
}
#content form em.info {
  margin: 5px 0 5px 10px;
}
#content form em.info input[type="submit"] {
  margin: 0 0 0 -10px;
}
#content form p + em.info {
  margin: 0;
}
#content form.edit_time_entry #time_entry_hours {
  margin: 0;
}
#new_time_entry #issue_parent_issue_id,
#new_time_entry #issue_due_date,
#new_time_entry #issue_start_date,
#new_time_entry #issue_estimated_hours,
#new_time_entry #time_entry_hours {
  margin: 0;
}
/* END FORM */
/* --------------------- https://redmine-evolution.com/ -- */
.autoscroll {
  margin: 0;
  /*padding: 1px;*/
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START NOTICE */
/* START SUCCESSFUL NOTICE POSITION FIXED */
div.flash.notice {
  width: auto !important;
  position: fixed;
  top: 41px;
  right: 0;
  margin: 0;
  border: 0;
  padding: 14px 55px 14px 10px !important;
  border-left: 4px solid var(--notice-successfu-main);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  background-color: var(--notice-successfu-bg);
  color: var(--notice-successfu-main);
  font-size: 1rem;
  line-height: 1.28571429rem;
  font-weight: 600;
  background-image: none;
  z-index: 50 !important;
  cursor: pointer;
}
div.flash.notice:after {
  text-align: center;
  position: absolute;
  top: 50%;
  right: 10px;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: -15px 0 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-width);
  color: var(--red_border_error);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
div.flash.notice:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  right: 10px;
  width: var(--icon-width);
  height: var(--icon-width);
  margin: -15px 0 0;
  background: var(--notice-error-main);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
div.flash.notice:hover:before {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
div.flash.notice:hover:after {
  color: var(--red_error_text);
}
div.flash.notice h2 {
  font-size: 1.1428rem;
  line-height: 1.28571429rem;
  padding: 0 !important;
  margin: 0 0 10px !important;
}
div.flash.notice p {
  margin: 10px 0 !important;
}
div.flash.notice.error {
  border-left: 4px solid var(--notice-error-main);
  background-color: var(--notice-error-bg);
  color: var(--notice-error-main-text);
}
div.flash.notice.error:after {
  color: var(--notice-error-main-text);
}
div.flash.notice.error:before {
  background: var(--notice-error-main);
}
div.flash.notice.error:hover:after {
  color: var(--red_error_text);
}
/* END SUCCESSFUL NOTICE POSITION FIXED */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ERROR NOTICE POSITION FIXED */
.open-sidebar #wrapper form > #errorExplanation {
  right: 256px;
}
#wrapper form > #errorExplanation {
  position: fixed;
  top: 41px;
  right: 0;
  margin: 0;
  border: 0;
  padding: 14px 55px 14px 10px !important;
  border-left: 4px solid var(--notice-error-main);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  background-color: var(--notice-error-bg);
  color: var(--notice-error-main-text);
  font-size: 1.1428rem;
  line-height: 1.28571429rem;
  font-weight: bold;
  background-image: none;
  z-index: 1000 !important;
  cursor: pointer;
}
#wrapper form > #errorExplanation:after {
  text-align: center;
  position: absolute;
  top: 50%;
  right: 10px;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: -15px 0 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-width);
  color: var(--notice-error-main-text);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#wrapper form > #errorExplanation:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  right: 10px;
  width: var(--icon-width);
  height: var(--icon-width);
  margin: -15px 0 0;
  background: var(--red_border_error);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#wrapper form > #errorExplanation:hover:before {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#wrapper form > #errorExplanation:hover:after {
  color: var(--red_error_text);
}
#wrapper form > #errorExplanation ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
#wrapper form > #errorExplanation ul li {
  padding: 0 0 0 16px;
  position: relative;
}
#wrapper form > #errorExplanation ul li:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 5px;
  left: 0;
  width: 6px;
  height: 6px;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  background-color: var(--red_border_error);
}
.tabular input,
.tabular select {
  width: 100%;
  max-width: 100%;
}
.nodata,
.warning {
  text-align: center;
  background-color: var(--notice-worning-bg);
  border-color: var(--notice-worning-main);
  color: var(--notice-worning-color);
}
.nodata p,
.warning p {
  margin: 10px 0;
}
.nodata p:first-child,
.warning p:first-child {
  margin: 0;
}
.nodata,
div.flash.warning,
.conflict {
  background-color: var(--notice-worning-bg);
  border-color: var(--notice-worning-main);
  color: var(--notice-worning-color);
  background-image: none;
  position: relative;
  text-align: left;
}
.nodata:after,
div.flash.warning:after,
.conflict:after {
  content: "\E19F";
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  left: 5px;
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  margin: -10px 0 0;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  color: var(--notice-worning-main);
}
.nodata br,
div.flash.warning br,
.conflict br {
  content: '';
  display: block;
  clear: both;
  width: 100%;
  height: 5px;
}
.nodata > strong,
div.flash.warning > strong,
.conflict > strong {
  font-size: 1rem;
  line-height: 1.4;
}
.nodata .conflict-details,
div.flash.warning .conflict-details,
.conflict .conflict-details {
  font-size: 0.85714286rem;
  line-height: 1.4;
}
.nodata .conflict-details li,
div.flash.warning .conflict-details li,
.conflict .conflict-details li {
  margin: 5px 0 0;
}
.nodata .conflict-details li:first-child,
div.flash.warning .conflict-details li:first-child,
.conflict .conflict-details li:first-child {
  margin: 0;
}
/* END ERROR NOTICE POSITION FIXED */
/* END NOTICE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START BREADCRUMB */
#main .breadcrumb {
  font-size: 0.85714286rem;
  line-height: 1rem;
  font-weight: 600;
  margin: 0;
  position: absolute;
  top: -20px;
  left: 0;
}
.controller-additionals_macros.action-show .info {
  margin-bottom: 20px;
}
@media screen and (max-width: 1024px) {
  body #main > #content .breadcrumb ~ .contextual {
    top: 49px;
  }
}
@media screen and (max-width: 650px) {
  body #main > #content .breadcrumb ~ .contextual {
    top: 44px;
  }
  .controller-additionals_macros.action-show .info {
    margin-bottom: 10px;
  }
  .controller-additionals_macros.action-show div.macro-title {
    padding-bottom: 5px;
    margin-bottom: 5px;
    border-bottom: 1px solid var(--border-color);
  }
}
/* END BREADCRUMB */
/* --------------------- https://redmine-evolution.com/ -- */
/*  START ADD FILE */
#account_form fieldset {
  padding: 52px 20px 35px;
  position: relative;
  color: var(--text-color-main);
  overflow: hidden;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 20px 0 0;
  border: none;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#account_form fieldset legend {
  position: absolute;
  top: 17px;
  left: 20px;
  font-weight: 600;
  color: var(--color-main-color);
  margin: 0;
}
#account_form fieldset > p {
  margin: 0;
}
.attributes:empty {
  display: none;
}
/*  END ADD FILE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 768px) {
  #main {
    padding: 0 20px;
  }
}
/* END COMMON */
#new_user #password_fields {
  padding: 10px 0 0;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START JSTTABS */
body .jstEditor {
  width: 100%;
}
#content form .jstEditor.zen.dark-theme textarea:hover,
#content form .jstEditor.zen.dark-theme textarea:active,
#content form .jstEditor.zen.dark-theme textarea:focus {
  color: #dbe0e0;
}
#content form .jstEditor.zen.dark-theme textarea {
  color: #a4b1b1;
}
#content form .jstEditor input[type="text"] {
  min-height: 100px;
  height: auto;
}
body .jstEditor textarea + div {
  margin: 0 !important;
}
.zen #top-menu,
.zen #header,
.zen #sidebar,
.zen .open-sidebar-link {
  display: none;
}
.zen .jstEditor.zen {
  padding: 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.jstBlock {
  flex: 1 0 auto;
  position: relative;
}
.jstBlock .icon-user {
  background-image: url(../../../images/user.png);
}
.jstBlock textarea,
.jstBlock .wiki-preview {
  border: 1px solid var(--border-color-content);
  padding: 6px 12px;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  color: var(--text-color-main);
  margin: 0 !important;
  min-width: 190px;
  outline: 0 none;
  max-width: 100%;
  width: 100% !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 0.85714286rem;
  line-height: 1rem;
}
.jstBlock textarea P,
.jstBlock .wiki-preview P {
  padding: 0 !important;
}
.jstTabs {
  width: 100% !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.jstTabs ul {
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
}
.jstTabs ul li a {
  color: var(--text-color-main);
}
.jstTabs ul li a.selected {
  color: var(--color-main-color);
}
/* END JSTTABS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START FILE PAGE */
#main #content .list .icon-package {
  width: auto;
  height: var(--icon-smaller-width);
  font-size: 1rem;
  line-height: var(--icon-smaller-width);
  position: relative;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  color: var(--color-main-color);
  padding: 0 0 0 36px;
  text-decoration: none;
}
#main #content .list .icon-package:after,
#main #content .list .icon-package:before {
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  top: 50%;
  margin: -13px 0 0;
  left: 0;
}
.controller-files.action-index .autoscroll {
  margin: 0;
}
/* START FILE PAGE */
#content .filecontent-container {
  min-height: auto;
}
#content table.filecontent {
  width: 100%;
}
tr.group a.toggle-all {
  color: var(--text-color-main);
}
tr.group a.toggle-all:hover {
  color: var(--color-main-color);
}
/* START INPUT TYPE FILE */
body #new-attachments input[type="text"] ~ * {
  margin: 0 0 0 10px !important;
}
#main .contextual:not(.next-prev-links) a[onclick*="$('#existing-attachments')"]:not(#show_note_form_extras) {
  color: var(--icon-color-bg);
}
#main .contextual:not(.next-prev-links) a[onclick*="$('#existing-attachments')"]:not(#show_note_form_extras):before {
  background: var(--icon_bg-bg);
}
#main .contextual:not(.next-prev-links) a[onclick*="$('#existing-attachments')"]:not(#show_note_form_extras):hover {
  color: var(--icon_color_active-bg);
}
#main .contextual:not(.next-prev-links) a[onclick*="$('#existing-attachments')"]:not(#show_note_form_extras):hover:before {
  background: var(--icon_bg_hover-bg);
}
#main #new-attachments {
  display: block !important;
  overflow: hidden;
}
#main .avatar.extended .delete {
  color: var(--icon-color-bg);
  opacity: 1;
}
#main .avatar.extended .delete:before {
  background: var(--icon_bg_hover-bg);
}
#main .avatar.extended .delete img {
  display: none;
}
#main .avatar.extended .delete:hover {
  color: var(--icon-color-hover-bg);
}
#main .attachments_form {
  flex: 1 0 auto;
  width: 100%;
}
#main .attachments_form .attachments_fields > span {
  margin: 0 0 10px;
}
#main .attachments_form .attachments_fields > span a {
  margin: 0 0 0 10px;
}
#main .attachments_form .attachments_fields > span a:before {
  background: var(--icon_bg_hover-bg) !important;
}
#main .attachments_form .icon-attachment {
  background-image: none !important;
}
#main .extended {
  flex-wrap: nowrap;
}
#main .extended .add_attachment {
  flex: 1 0 auto;
  width: auto;
}
#main #attachments_fields {
  position: absolute;
  top: -9999999px;
  left: -9999999px;
}
#main .add_attachment {
  border: 1px solid var(--border-color-content);
  padding: 6px 12px 6px 35px;
  font-size: 14px;
  line-height: 18px;
  height: var(--icon-width);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  color: var(--text-color-main);
  margin: 0;
  min-width: 190px;
  outline: 0 none;
  background: var(--bg-fff);
  position: relative;
  flex: 1 0 auto;
  display: block;
  cursor: pointer;
  font-weight: normal;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 100%;
}
#main .add_attachment:before,
#main .add_attachment:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 30px;
  cursor: pointer;
}
#main .add_attachment:before {
  content: '';
}
#main .add_attachment:after {
  opacity: 1;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 30px;
  line-height: 1;
  color: var(--color-dark-grey);
}
#main .add_attachment:hover:after {
  color: var(--color-main-color);
}
#main .add_attachment input[type="file"] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 2;
  cursor: pointer;
}
body #time_entry_issue:empty {
  display: none;
}
body input[type="text"] ~ #time_entry_issue {
  margin: 0 !important;
}
div.issue img.gravatar {
  margin-bottom: 0;
}
/* END INPUT TYPE FILE*/
.controller-imports.action-new #content form .box p {
  padding: 0;
}
/* START USRER PAGE */
.controller-users.action-show #main > #content:after {
  top: 0;
  height: calc(100% - 56px);
}
.controller-users.action-show #main > #content h2 {
  padding: 15px 45px 15px 20px;
  border-top: 0;
  margin-bottom: 30px;
}
.controller-users.action-show #main > #content .contextual {
  right: 20px;
}
.controller-users.action-show #main > #content .contextual .icon {
  color: var(--icon-color);
}
.controller-users.action-show #main > #content .contextual .icon:before {
  background: var(--icon_bg);
}
.controller-users.action-show #main > #content .contextual .icon:hover {
  color: var(--icon-color-hover);
}
.controller-users.action-show #main > #content .contextual .icon:hover:before {
  background: var(--icon_bg_hover);
}
.controller-users.action-show #main > #content h3 {
  margin: 20px 0;
}
.controller-users.action-show .splitcontentleft,
.controller-users.action-show .splitcontentright {
  margin: 0 0 30px;
}
table form .block {
  margin: 0 0 10px;
}
#user_group_ids br {
  display: none;
}
#user_group_ids label {
  display: block;
  margin: 0 0 10px;
}
.objects-selection > div,
#user_group_ids {
  column-count: 1;
  column-width: 0;
  -webkit-column-count: 1;
  -webkit-column-width: 0;
  -webkit-column-gap: 0;
  -webkit-column-rule: 0;
  -moz-column-count: 1;
  -moz-column-width: 0;
  -moz-column-gap: 0;
  -moz-column-rule: 0;
  display: block;
}
/* END USRER PAGE */
.text-diff {
  background: var(--bg-box);
  border-color: var(--border-color);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
body #issue_badge > li > div a,
body a:link,
body a:visited {
  font-weight: inherit;
}
body #sort .select2 {
  max-width: 70px;
  margin: 5px 0 5px 10px !important;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START MRDIA */
@media screen and (max-width: 1350px) {
  #query_form .holder-filters .admin-filter > div {
    flex-wrap: wrap;
  }
  fieldset#filters {
    float: none;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  fieldset#filters table {
    width: 100%;
    display: block;
  }
  fieldset#filters table td.operator {
    width: auto;
  }
  fieldset#filters .add-filter {
    width: 100% !important;
    float: none !important;
    padding-left: 0 !important;
  }
  fieldset#filters .add-filter label {
    width: 295px;
    padding: 0 10px 0 0;
    margin: 0 !important;
    text-align: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 1250px) {
  #content form input[type="email"],
  #content form input[type="password"],
  #content form input[type="text"],
  #content form input[type="number"],
  #content form input[type="date"],
  #content form textarea {
    min-width: 70px;
  }
}
@media screen and (max-width: 1100px) {
  #query_form .holder-filters .admin-filter > div {
    flex-wrap: wrap;
  }
  #query_form .holder-filters .admin-filter #filters-table {
    width: 100%;
  }
  #query_form .holder-filters .admin-filter .add-filter {
    width: 100%;
    border-top: 1px solid var(--border-color);
    padding-top: 10px;
  }
}
@media screen and (max-width: 1024px) {
  body .tooltip {
    display: none !important;
  }
  #wrapper tr.group a.toggle-all {
    visibility: visible;
  }
  fieldset#filters table {
    width: 100%;
  }
  fieldset#filters table td {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  fieldset#filters table td.field {
    width: 295px;
  }
  body #sort .jcf-select {
    margin: 5px 0 !important;
  }
  body #sort .jcf-select ~ .jcf-select {
    margin: 5px 0 !important;
  }
  #main {
    padding: 50px 0 0 !important;
    margin-right: 0 !important;
  }
  #wrapper #wrapper2 {
    min-height: 100vh;
  }
}
@media screen and (max-width: 1024px) {
  #main .list th .sort:after {
    color: var(--color-main-color) !important;
    background: none !important;
  }
  .controller-users.action-show #main > #content .contextual {
    right: 10px;
  }
  .controller-users.action-show #main > #content h2 {
    padding: 15px 75px 15px 10px;
  }
  #main a[href*="dmsf/webdav"]:before,
  #main a.current-from-address:before,
  #main .repeat-value:before,
  #main .contextual:not(.next-prev-links) a:before,
  #main .contextual a[href="/issues"]:before,
  #main .contextual a[href="/time_entries"]:before,
  #main .contextual a[href="/activity"]:before,
  #main .toggle-multiselect:before,
  #main .avatar.extended .delete:before,
  #main a[href*="questions_sections/new"]:before,
  #main .hold-control .controls .btn:before,
  #main #checklist_form_items .new span.icon:before,
  #main .fa-pencil:before,
  #main #content #comments .contextual a[href*="order_comments"]:before,
  #main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:before,
  #main .query-columns .buttons span:before,
  #main #sidebar .contextual a:before,
  #main a.open-filter:before,
  #main a.html:before,
  #main a.txt:before,
  #main a.icon:before,
  #main span.icon-only:before,
  #main a.atom:before,
  #main a.csv:before,
  #main a.pdf:before,
  #main .sort-handle:before,
  #main a.icon-settings:before,
  #main a.icon-close:before,
  #main a.icon-only:before,
  #main a.png:before,
  #main a.vcf:before,
  #main a.xls:before,
  #main a.project:before,
  #main #operation_contact_id_add_link:before,
  #main #deal_contact_id_add_link:before,
  #main #expense_contact_id_add_link:before,
  #main #invoice_contact_id_add_link:before,
  #main #order_contact_id_add_link:before,
  #main #company_profile_edit a:before,
  #main .icon-not-ok:before {
    display: none !important;
  }
  a.wiki-anchor {
    opacity: 1 !important;
  }
  a.wiki-anchor:before {
    display: none;
  }
  /* START SUCCESSFUL NOTICE POSITION FIXED */
  div.flash.notice {
    top: 51px;
  }
  /* END SUCCESSFUL NOTICE POSITION FIXED */
  body .select2 ~ .icon,
  body .select2 ~ .icon-only,
  body #sidebar .select2 ~ .icon,
  body #sidebar .select2 ~ .icon-only,
  body input[type="text"] ~ .icon,
  body input[type="text"] ~ .icon-only,
  body #sidebar input[type="text"] ~ .icon,
  body #sidebar input[type="text"] ~ .icon-only,
  body .jcf-select ~ .icon,
  body .jcf-select ~ .icon-only,
  body #sidebar .jcf-select ~ .icon,
  body #sidebar .jcf-select ~ .icon-only,
  body textarea ~ .icon,
  body textarea .icon-only,
  body #sidebar textarea ~ .icon body #sidebar textarea ~ .icon-only {
    margin-left: 10px !important;
    margin-top: 0 !important;
  }
  #wrapper form > #errorExplanation {
    top: 51px;
  }
  #footer {
    background: var(--bg-box);
    color: var(--color-dark-grey);
  }
  body .jstEditor.zen,
  .jstElements.zen {
    margin: 0;
  }
  #main p.other-formats {
    padding: 0 10px 20px 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main table.list,
  #main .table-list {
    width: auto;
    min-width: 100%;
  }
  #main .other-formats a.atom,
  #main .other-formats a.csv,
  #main .other-formats a.pdf {
    color: var(--icon-color-bg);
  }
  #main .other-formats a.atom:after,
  #main .other-formats a.csv:after,
  #main .other-formats a.pdf:after {
    color: var(--icon-color-bg);
  }
  #main .other-formats a.atom:before,
  #main .other-formats a.csv:before,
  #main .other-formats a.pdf:before {
    display: none;
  }
  #main .other-formats a.atom:hover,
  #main .other-formats a.csv:hover,
  #main .other-formats a.pdf:hover {
    color: var(--icon-color-hover-bg);
  }
  #main .other-formats a.atom:hover:after,
  #main .other-formats a.csv:hover:after,
  #main .other-formats a.pdf:hover:after {
    color: var(--icon_bg_hover-bg);
  }
  #main .toggle-multiselect {
    display: none;
  }
  #main .breadcrumb {
    position: static;
    margin: 10px 0;
  }
  #main tr .icon:before,
  #main tr .icon-only:before {
    display: none;
  }
  #main a[href*="dmsf/webdav"],
  body a.wiki-anchor,
  #main .contextual:not(.next-prev-links) a,
  #main a.current-from-address,
  #main .repeat-value,
  #main .contextual a[href="/issues"],
  #main .contextual a[href="/time_entries"],
  #main .contextual a[href="/activity"],
  #main .toggle-multiselect,
  #main .avatar.extended .delete,
  #main a[href*="questions_sections/new"],
  #main .hold-control .controls .btn,
  #main #checklist_form_items .new span.icon,
  #main .fa-pencil,
  #main #content #comments .contextual a[href*="order_comments"],
  #main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"],
  #main .query-columns .buttons span,
  #main #sidebar .contextual a,
  #main a.open-filter,
  #main a.html,
  #main a.txt,
  #main a.icon,
  #main span.icon-only,
  #main a.atom,
  #main a.csv,
  #main a.pdf,
  #main .sort-handle,
  #main a.icon-settings,
  #main a.icon-close,
  #main a.icon-only,
  #main a.png,
  #main a.vcf,
  #main a.xls,
  #main a.project,
  #main #operation_contact_id_add_link,
  #main #deal_contact_id_add_link,
  #main #expense_contact_id_add_link,
  #main #invoice_contact_id_add_link,
  #main #order_contact_id_add_link,
  #main #company_profile_edit a,
  #main .icon-not-ok {
    color: var(--icon-color-bg) !important;
  }
  #main a[href*="dmsf/webdav"]:before,
  body a.wiki-anchor:before,
  #main .contextual:not(.next-prev-links) a:before,
  #main a.current-from-address:before,
  #main .repeat-value:before,
  #main .contextual a[href="/issues"]:before,
  #main .contextual a[href="/time_entries"]:before,
  #main .contextual a[href="/activity"]:before,
  #main .toggle-multiselect:before,
  #main .avatar.extended .delete:before,
  #main a[href*="questions_sections/new"]:before,
  #main .hold-control .controls .btn:before,
  #main #checklist_form_items .new span.icon:before,
  #main .fa-pencil:before,
  #main #content #comments .contextual a[href*="order_comments"]:before,
  #main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:before,
  #main .query-columns .buttons span:before,
  #main #sidebar .contextual a:before,
  #main a.open-filter:before,
  #main a.html:before,
  #main a.txt:before,
  #main a.icon:before,
  #main span.icon-only:before,
  #main a.atom:before,
  #main a.csv:before,
  #main a.pdf:before,
  #main .sort-handle:before,
  #main a.icon-settings:before,
  #main a.icon-close:before,
  #main a.icon-only:before,
  #main a.png:before,
  #main a.vcf:before,
  #main a.xls:before,
  #main a.project:before,
  #main #operation_contact_id_add_link:before,
  #main #deal_contact_id_add_link:before,
  #main #expense_contact_id_add_link:before,
  #main #invoice_contact_id_add_link:before,
  #main #order_contact_id_add_link:before,
  #main #company_profile_edit a:before,
  #main .icon-not-ok:before {
    display: none;
  }
  #query_form .holder-filters .in-filter,
  #query_form_content .holder-filters .in-filter {
    padding: 0 0 10px;
  }
  #query_form .holder-filters #options table,
  #query_form_content .holder-filters #options table {
    display: block;
    width: 100%;
    overflow: hidden;
  }
  #query_form .holder-filters #options table tbody,
  #query_form_content .holder-filters #options table tbody {
    display: block;
    width: 100%;
    overflow: hidden;
  }
  #query_form .holder-filters #options table tr,
  #query_form_content .holder-filters #options table tr {
    display: block;
    width: 100%;
    overflow: hidden;
  }
  #query_form .holder-filters #options table tr td,
  #query_form_content .holder-filters #options table tr td {
    display: block;
    width: 100%;
    overflow: hidden;
    padding: 0 0 10px;
  }
  #query_form .holder-filters #options .query-columns span:first-child .jcf-list-box,
  #query_form_content .holder-filters #options .query-columns span:first-child .jcf-list-box {
    margin: 0 0 10px;
  }
  #query_form .holder-filters .admin-filter > div,
  #query_form_content .holder-filters .admin-filter > div {
    flex-wrap: wrap;
  }
  #query_form .holder-filters .admin-filter table,
  #query_form_content .holder-filters .admin-filter table {
    width: 100%;
    display: block;
    overflow: hidden;
  }
  #query_form .holder-filters .admin-filter table tbody,
  #query_form_content .holder-filters .admin-filter table tbody {
    width: 100%;
    display: block;
    overflow: hidden;
  }
  #query_form .holder-filters .admin-filter table tr,
  #query_form_content .holder-filters .admin-filter table tr {
    display: block;
    overflow: hidden;
  }
  #query_form .holder-filters .admin-filter table tr.filter,
  #query_form_content .holder-filters .admin-filter table tr.filter {
    height: auto;
  }
  #query_form .holder-filters .admin-filter table tr td,
  #query_form_content .holder-filters .admin-filter table tr td {
    display: block;
    width: 100% !important;
    padding: 0 0 10px !important;
    overflow: hidden;
  }
  #query_form .holder-filters .admin-filter table tr td.field,
  #query_form_content .holder-filters .admin-filter table tr td.field {
    padding-bottom: 10px !important;
  }
  #query_form .holder-filters .admin-filter table tr td select,
  #query_form_content .holder-filters .admin-filter table tr td select {
    max-width: 100% !important;
    z-index: 3;
  }
  #query_form .holder-filters .admin-filter table tr td.values,
  #query_form_content .holder-filters .admin-filter table tr td.values {
    padding: 0 !important;
  }
  #query_form .holder-filters .admin-filter table tr td.values span,
  #query_form_content .holder-filters .admin-filter table tr td.values span {
    margin-bottom: 10px;
  }
  #query_form .holder-filters .admin-filter .add-filter,
  #query_form_content .holder-filters .admin-filter .add-filter {
    width: 100%;
    display: block;
    border-top: 1px solid var(--border-color);
    padding-top: 10px;
    margin-top: 10px;
  }
  #query_form .holder-filters .admin-filter .add-filter label[for="add_filter_select"],
  #query_form_content .holder-filters .admin-filter .add-filter label[for="add_filter_select"] {
    display: block;
    width: 100%;
    margin: 0 0 5px;
  }
  #query_form .holder-filters .admin-filter #options table tr,
  #query_form_content .holder-filters .admin-filter #options table tr {
    display: block;
  }
  #query_form .holder-filters .admin-filter #options table tr td,
  #query_form_content .holder-filters .admin-filter #options table tr td {
    display: block;
    padding: 0 0 10px;
  }
  #query_form .holder-filters .admin-filter #options .query-columns span:first-child .jcf-list-box,
  #query_form_content .holder-filters .admin-filter #options .query-columns span:first-child .jcf-list-box {
    margin: 0 0 10px;
  }
  #content form .tabular p em.info {
    width: 100%;
    margin: 5px 0 0 !important;
  }
  #content .contextual .drdn .drdn-content {
    left: auto;
    right: 0;
  }
  #main #content p.other-formats {
    width: 100%;
    position: static;
    padding-bottom: 10px;
  }
}
@media screen and (max-width: 768px) {
  fieldset#filters table {
    display: block;
    width: 100%;
    overflow: hidden;
  }
  fieldset#filters table tbody,
  fieldset#filters table tr {
    display: block;
    width: 100%;
    overflow: hidden;
    height: auto !important;
  }
  fieldset#filters table td {
    display: block;
    overflow: hidden;
    width: 100%;
    padding: 5px 0;
  }
  fieldset#filters table td.field {
    width: 100%;
  }
}
@media screen and (max-width: 650px) {
  #notes .redmine-evolution-attachments .holder-gal ul li {
    width: 220px;
  }
  #notes .redmine-evolution-attachments .holder-gal ul li .in {
    min-width: 210px;
    width: 210px;
  }
  .controller-resource_bookings a[accesskey="p"],
  .controller-resource_bookings a[accesskey="n"] {
    padding: 8px 10px;
  }
  fieldset#filters table td {
    padding: 0 0 5px;
  }
  fieldset#filters .add-filter {
    flex-wrap: wrap;
    display: block;
    border-top: 1px solid var(--border-color);
    padding-top: 10px;
    margin-top: 10px;
  }
  fieldset#filters .add-filter label {
    display: block;
    width: 100%;
    margin: 0 0 5px !important;
  }
  body #wrapper3 {
    padding: 0 0 32px;
  }
  #main #content form input[type="submit"] {
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin: 10px 0 0;
  }
  #main #content form input[type="submit"] + a {
    text-align: center;
    width: 100%;
    display: block;
    margin: 10px 0 0;
    padding: 8px 30px;
    font-size: 1rem;
    line-height: 1rem;
  }
  #main #content form input[type="submit"] + a:after {
    display: none;
  }
  #main #content form em.info,
  #main #content form #time_entry_issue > a {
    margin-left: 0;
  }
  #main #content form .tabular p em.info {
    display: block;
    width: 100%;
    padding: 0;
    margin: 5px 0 0 !important;
  }
  #main #content form .box p label.inline {
    display: block;
    margin-left: 0 !important;
  }
  #main #content form #issue_due_date,
  #main #content form #issue_start_date {
    min-width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }
  #main #content form input[type="submit"] {
    margin: 10px 0 0;
  }
  #main #content form input[type="submit"] + a,
  #main #content form input[type="submit"] + input[type="button"] {
    margin: 10px 0 0 !important;
  }
  #main #content form em.info input[type="submit"] {
    margin: 0;
  }
  #main > #content p.other-formats {
    position: static;
    width: 100%;
    padding: 0;
  }
  #main div.issue .contextual {
    top: 10px !important;
  }
  #main div.issue .contextual.next-prev-links {
    top: 0 !important;
  }
  #main div.issue .contextual .journal-link {
    display: none;
  }
  #main div.issue .attachments {
    padding-top: 30px;
  }
  #main div.issue .attachments .contextual {
    top: 0 !important;
  }
  #main .attachments {
    padding: 0;
    margin: 0;
    position: relative;
  }
  #main .attachments .contextual {
    position: absolute;
    top: -30px !important;
    right: 0;
    margin-right: 0 !important;
  }
  #main .attachments table {
    padding: 30px 0 0;
    border-collapse: collapse;
    margin: 0 0 10px;
  }
  #main .attachments table tr[id*="attachment-"] td {
    line-height: 1.1428rem;
    padding: 0 0 10px;
    border-bottom: 1px solid var(--border-color);
  }
  #main .attachments table tr[id*="attachment-"] td:first-child {
    padding-right: 5px;
  }
  #main .attachments table tr[id*="attachment-"] td:last-child {
    padding-left: 5px;
  }
  #main .attachments table tr:last-child td:last-child {
    padding: 0;
    border-bottom: 0;
  }
  #main .attachments {
    padding: 0;
  }
  #main .attachments table {
    padding: 30px 0 0;
    margin: 0 0 10px;
    overflow: hidden;
  }
  #main .attachments table tr {
    display: block;
    width: 100%;
    overflow: hidden;
  }
  #main .attachments table tr td {
    display: block;
    width: 100%;
    text-align: left !important;
    overflow: hidden;
  }
  #main .attachments table tr td:last-child {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid var(--border-color);
  }
  #main .attachments table tr:last-child td {
    padding: 0;
    margin: 0;
    border-bottom: 0;
  }
  #main .attachments table .delete {
    float: right;
  }
  .new_relation p {
    flex-wrap: wrap;
  }
  .controller-resource_bookings.action-index .resource-planning-chart {
    table-layout: fixed;
  }
  #main .box.attachments table tr[id*="attachment-"] {
    display: block;
  }
  #main .box.attachments table tr[id*="attachment-"] td {
    display: block;
    width: 100%;
  }
  #main .box.attachments table tr[id*="attachment-"] td:first-child {
    padding-right: 0;
    padding-bottom: 10px;
    border-bottom: 0;
  }
  #main .box.attachments table tr[id*="attachment-"] td:last-child {
    padding-left: 0;
  }
}
.jstBlock .jstEditor > div .cke_chrome {
  padding: 0 !important;
  margin-top: 0 !important;
  -webkit-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  -moz-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}
/* START BOOTSTRAP DROPDOWN MENU */
#wrapper .dropdown-menu {
  border-color: var(--drop-border-color);
  background: var(--drop-bg);
  -webkit-box-shadow: var(--box-shadow-null);
  -moz-box-shadow: var(--box-shadow-null);
  box-shadow: var(--box-shadow-null);
}
#wrapper #top-menu .dropdown-menu:after,
#wrapper #cm_contextual_menu .dropdown-menu:after {
  display: none;
}
#wrapper #main > #content > .contextual .dropdown .dropdown-menu:before {
  display: none;
}
#wrapper #main > #content > .contextual .dropdown .dropdown-toggle:after {
  content: "\E11A";
}
#wrapper #main > #content > .contextual .dropdown #dd-ul {
  border-color: var(--drop-border-color);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
#wrapper #main > #content > .contextual .dropdown #dd-ul a {
  background-image: none;
  background-color: var(--drop-bg);
  display: block;
  position: relative;
  font-size: 0.85714286rem;
  line-height: 1.4;
  height: auto;
  min-height: auto;
  width: 100%;
  color: var(--drop-text-color);
  padding: 4px 5px 4px 30px;
  background-image: none !important;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  z-index: 2;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#wrapper #main > #content > .contextual .dropdown #dd-ul a:after {
  position: absolute;
  top: 0;
  left: 5px;
  color: var(--drop-icon-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  width: var(--icon-width-small);
  font-size: var(--icon-font-size-small);
  display: flex;
  align-items: center;
}
#wrapper #main > #content > .contextual .dropdown #dd-ul a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  width: 0;
  height: 100%;
  background: var(--drop-bg-hover);
  z-index: -1;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-transition: width var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out;
  margin: 0 !important;
}
#wrapper #main > #content > .contextual .dropdown #dd-ul a:hover {
  text-decoration: none;
  color: var(--drop-icon-color-hover);
  border: 0;
}
#wrapper #main > #content > .contextual .dropdown #dd-ul a:hover:after {
  color: var(--drop-icon-color-hover);
}
#wrapper #main > #content > .contextual .dropdown #dd-ul a:hover:before {
  width: 100%;
  background: var(--drop-bg-hover);
}
.controller-repositories #main .list.entries {
  margin: 0 0 20px;
}
.controller-repositories #main .list.entries td {
  padding-left: 14px !important;
  text-align: center;
}
.controller-repositories #main .list.entries td.size,
.controller-repositories #main .list.entries td.age,
.controller-repositories #main .list.entries td.autho {
  text-align: center;
}
.controller-repositories #main .list.entries .icon-file,
.controller-repositories #main .list.entries .icon-folder {
  width: auto;
  border-radius: 0;
  padding: 0 0 0 30px;
  font-size: 1rem;
  line-height: 26px;
}
.controller-repositories #main .list.entries .icon-file:after,
.controller-repositories #main .list.entries .icon-folder:after,
.controller-repositories #main .list.entries .icon-file:before,
.controller-repositories #main .list.entries .icon-folder:before {
  width: 26px;
  height: 26px;
  position: absolute;
  top: 0;
  left: 0;
}
.controller-repositories #main .list.entries .icon-file:after {
  content: "\E110";
}
.controller-repositories #main .list.entries .icon-folder:after {
  content: "\E13C";
}
.controller-repositories #main .list.entries.filename {
  min-height: 22px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.controller-repositories #main tr.entry td.filename {
  width: auto !important;
}
.controller-repositories #main #content h2 {
  padding-right: 85px;
}
.controller-repositories #main form[action*="diff"] + p {
  margin-bottom: 20px;
}
.controller-repositories #main .autoscroll {
  overflow-y: hidden;
}
.controller-repositories #content h2 {
  margin-bottom: 103px;
  padding-right: 85px;
}
.controller-repositories #content #revision_selector {
  position: absolute;
  top: 100%;
  right: 30px;
  margin: 64px 0 0;
  padding: 0;
  width: 500px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.controller-repositories #content #revision_selector .select2 {
  margin-right: 10px;
  margin-left: 10px;
}
.controller-repositories #content #revision_selector .select2,
.controller-repositories #content #revision_selector input[type="text"] {
  max-width: 120px;
  min-width: 120px;
}
.controller-repositories #content #revision_selector .select2 ~ input[type="text"] {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.controller-repositories.action-diff #main > #content h2,
.controller-repositories.action-revision #main > #content h2,
.controller-repositories.action-revisions #main > #content h2 {
  margin-bottom: 70px;
}
.controller-repositories.action-diff #main > #content > .contextual:not(.next-prev-links),
.controller-repositories.action-revision #main > #content > .contextual:not(.next-prev-links),
.controller-repositories.action-revisions #main > #content > .contextual:not(.next-prev-links) {
  position: static;
  min-width: 100%;
  width: 100%;
  color: var(--text-color-main);
  margin: 0 0 20px;
}
.controller-repositories.action-diff #main > #content > .contextual:not(.next-prev-links) form[action*="repository"],
.controller-repositories.action-revision #main > #content > .contextual:not(.next-prev-links) form[action*="repository"],
.controller-repositories.action-revisions #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] {
  display: flex;
  padding: 0 0 0 10px;
}
.controller-repositories.action-diff #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] #rev,
.controller-repositories.action-revision #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] #rev,
.controller-repositories.action-revisions #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] #rev,
.controller-repositories.action-diff #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] input[type="submit"],
.controller-repositories.action-revision #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] input[type="submit"],
.controller-repositories.action-revisions #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] input[type="submit"] {
  margin: 0 0 0 10px !important;
}
.controller-repositories.action-diff #main table.filecontent,
.controller-repositories.action-revision #main table.filecontent,
.controller-repositories.action-revisions #main table.filecontent,
.controller-repositories.action-diff #main table.changesets,
.controller-repositories.action-revision #main table.changesets,
.controller-repositories.action-revisions #main table.changesets {
  margin: 0 0 20px;
}
.controller-repositories form[action*="repository"] + p {
  color: var(--bg-fff);
}
.controller-repositories form[action*="repository"] + p a[href*="repository"] {
  text-decoration: none !important;
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: 0 !important;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 10px 0 0;
  width: auto;
  height: auto;
  outline: 0 none;
}
.controller-repositories form[action*="repository"] + p a[href*="repository"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
.controller-repositories .other-formats a {
  opacity: 1 !important;
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  vertical-align: middle;
  min-width: var(--icon-width);
  min-height: var(--icon-width);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  cursor: pointer;
}
.controller-repositories .other-formats a:after {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.controller-repositories .other-formats a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
.controller-repositories .other-formats a:hover {
  color: var(--icon-color-hover-bg);
  background-image: none !important;
}
.controller-repositories .other-formats a:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
@media screen and (max-width: 1024px) {
  .controller-repositories #main #content h2 {
    margin-bottom: 70px;
  }
  .controller-repositories #content #revision_selector {
    margin: 29px 0 0;
    right: 10px;
  }
}
@media screen and (max-width: 768px) {
  .controller-repositories #main #content h2 {
    margin-bottom: 20px;
  }
  .controller-repositories #main > #content > .contextual:not(.next-prev-links) {
    position: static;
    display: flex;
    min-width: 100%;
    width: 100%;
    margin: 0 0 10px;
  }
  .controller-repositories #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] {
    position: static;
    margin: 0 0 10px;
    max-width: 100%;
    width: 100%;
    display: flex;
    padding: 0;
  }
  .controller-repositories #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] input[type="submit"] {
    margin: 10px 0 !important;
  }
  .controller-repositories.action-diff #main > #content h2,
  .controller-repositories.action-revision #main > #content h2,
  .controller-repositories.action-revisions #main > #content h2 {
    margin: 0 0 20px;
  }
  .controller-repositories.action-diff #main > #content > .contextual:not(.next-prev-links),
  .controller-repositories.action-revision #main > #content > .contextual:not(.next-prev-links),
  .controller-repositories.action-revisions #main > #content > .contextual:not(.next-prev-links) {
    display: block;
  }
  .controller-repositories.action-diff #main > #content > .contextual:not(.next-prev-links) form[action*="repository"],
  .controller-repositories.action-revision #main > #content > .contextual:not(.next-prev-links) form[action*="repository"],
  .controller-repositories.action-revisions #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] {
    padding: 0;
  }
  .controller-repositories.action-diff #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] #rev,
  .controller-repositories.action-revision #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] #rev,
  .controller-repositories.action-revisions #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] #rev,
  .controller-repositories.action-diff #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] input[type="submit"],
  .controller-repositories.action-revision #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] input[type="submit"],
  .controller-repositories.action-revisions #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] input[type="submit"] {
    margin: 0 0 0 10px !important;
  }
}
@media screen and (max-width: 650px) {
  .controller-repositories #main > #content > .contextual:not(.next-prev-links) {
    display: block;
  }
  .controller-repositories #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] {
    display: block;
  }
  .controller-repositories #content #revision_selector {
    width: calc(100vw - 20px);
  }
  .controller-repositories #content #revision_selector .select2 {
    margin: 0 0 5px;
  }
  .controller-repositories #content #revision_selector .select2,
  .controller-repositories #content #revision_selector input[type="text"] {
    max-width: calc(100vw - 20px);
    min-width: calc(100vw - 20px);
  }
  .controller-repositories #content #revision_selector input[type="text"] {
    margin-left: 0 !important;
  }
  .controller-repositories.action-diff #main > #content > .contextual:not(.next-prev-links),
  .controller-repositories.action-revision #main > #content > .contextual:not(.next-prev-links),
  .controller-repositories.action-revisions #main > #content > .contextual:not(.next-prev-links) {
    display: block;
  }
  .controller-repositories.action-diff #main > #content > .contextual:not(.next-prev-links) form[action*="repository"],
  .controller-repositories.action-revision #main > #content > .contextual:not(.next-prev-links) form[action*="repository"],
  .controller-repositories.action-revisions #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] {
    padding: 0;
    display: block;
  }
  .controller-repositories.action-diff #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] #rev,
  .controller-repositories.action-revision #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] #rev,
  .controller-repositories.action-revisions #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] #rev {
    margin: 0 !important;
  }
  .controller-repositories.action-diff #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] input[type="submit"],
  .controller-repositories.action-revision #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] input[type="submit"],
  .controller-repositories.action-revisions #main > #content > .contextual:not(.next-prev-links) form[action*="repository"] input[type="submit"] {
    margin: 10px 0 !important;
  }
  .controller-repositories form[action*="repository"] + p a[href*="repository"] {
    display: block;
    width: 100%;
    margin: 0;
    text-align: center;
  }
  .controller-repositories.action-edit #main > #content > .contextual:not(.next-prev-links) {
    display: flex;
  }
}
@media screen and (max-width: 480px) {
  body #sort .select2 {
    max-width: 100%;
    margin: 5px 0 !important;
  }
}
/* Start two-factor authentication */
.controller-twofa.action-activate_confirm #main > #content .splitcontentleft {
  width: 100%;
  padding: 0;
  max-width: 100%;
}
/* End two-factor authentication */
input[type="date"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-outer-spin-button,
input[type="date"]::-webkit-calendar-picker-indicator {
  display: none;
  -webkit-appearance: none;
  margin: 0;
  opacity: 0;
}
#dashboard-form .box .splitcontent {
  margin-top: 10px;
}
#existing-attachments {
  overflow: hidden;
}
#existing-attachments .existing-attachment {
  margin: 0 0 10px;
}
#main .tabular input.filename {
  max-width: 100% !important;
}
body #main-menu .tabs-buttons {
  top: -999999px;
  left: -999999px;
}
@media screen and (min-width: 1000px) {
  .big-menu #content form .box p,
  .open-sidebar #content form .box p {
    padding: 0 0 0 200px;
  }
  .big-menu #content form .box p > label:first-child,
  .open-sidebar #content form .box p > label:first-child {
    width: 200px;
    margin: 0 0 0 -200px !important;
  }
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START CONTENT */
/* --------------------- https://redmine-evolution.com/ -- */
/* START NO BG ON CONTENT  */
.controller-admin.action-index #main #content:after,
.controller-news.action-index #main #content:after,
.action-index.controller-projects #main #content:after,
.controller-activities #main #content:after {
  display: none !important;
}
/* END NO BG ON CONTENT  */
.simplecolorpicker {
  margin: 0 0 0 10px !important;
}
.has-footer #main > #content {
  padding-bottom: 56px;
}
.has-footer #main > #content:after {
  height: calc(100% - 120px);
}
/* START CONTENT MENU */
#content #context-menu {
  display: block !important;
  min-height: 1px;
  min-width: 1px;
}
body #context-menu {
  font-size: 0.85714286rem;
  line-height: 1.4;
  width: auto;
  z-index: 100;
  padding: 0;
  left: -999999px;
  top: -999999px;
}
body #context-menu ul {
  padding: 0;
  margin: 0;
}
body #context-menu ul li {
  padding: 0;
  border: 0;
}
body #context-menu ul li:hover {
  border: 0;
  background: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
body #context-menu a {
  background-image: none;
  background-color: var(--bg-fff);
  display: block;
  position: relative;
  font-size: 0.85714286rem;
  line-height: 1.4;
  height: auto;
  min-height: auto;
  width: 100%;
  color: var(--drop-text-color);
  padding: 4px 5px 4px 30px;
  background-image: none !important;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  z-index: 2;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body #context-menu a:after {
  position: absolute;
  top: 50%;
  margin: -10px 0 0;
  left: 5px;
  display: block;
  clear: both;
  height: var(--icon-width-small);
  width: var(--icon-width-small);
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  color: var(--drop-text-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body #context-menu a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  width: 0;
  height: 100%;
  background: var(--drop-bg);
  z-index: -1;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-transition: width var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out;
  margin: 0 !important;
}
body #context-menu a:hover {
  text-decoration: none;
  color: var(--drop-text-color-hover);
  border: 0;
}
body #context-menu a:hover:after {
  color: var(--drop-text-color-hover);
}
body #context-menu a:hover:before {
  width: 100%;
  background: var(--drop-bg-hover);
}
body #context-menu a.disabled {
  color: var(--color-main-color);
  border: 0;
}
body #context-menu a.disabled:after {
  color: var(--color-main-color);
}
body #context-menu a.disabled {
  color: var(--notice-error-main-text);
  background: var(--notice-error-bg);
}
body #context-menu a.disabled:after {
  color: var(--notice-error-main-text);
}
body #context-menu a.disabled:before {
  width: 100%;
  background: var(--notice-error-bg);
}
body #context-menu a.disabled:hover {
  color: var(--notice-error-main-text);
  background: var(--notice-error-bg);
}
body #context-menu li:hover > a {
  text-decoration: none;
  color: var(--drop-text-color-hover);
  border: 0;
}
body #context-menu li:hover > a:after {
  color: var(--drop-text-color-hover);
}
body #context-menu li:hover > a:before {
  width: 100%;
  background: var(--drop-bg-hover);
}
body #context-menu li:hover > a.disabled {
  color: var(--notice-error-main-text);
  background: var(--notice-error-bg);
}
body #context-menu li:hover > a.disabled:after {
  color: var(--notice-error-main-text);
}
body #context-menu li:hover > a.disabled:before {
  width: 100%;
  background: var(--notice-error-bg);
}
body #context-menu li:hover > a.disabled:hover {
  color: var(--notice-error-main-text);
  background: var(--notice-error-bg);
}
body #context-menu ul > li:hover > ul {
  display: flex;
  flex-flow: column;
}
body #context-menu ul > li > ul li {
  order: 3;
}
body #context-menu ul .icon-checked {
  background: var(--bg-fff);
  background-size: 12px auto;
  background-position: 2px 50%;
  background-repeat: no-repeat;
}
body #context-menu ul .search-element {
  order: 2;
}
body #context-menu ul .search-element a {
  background: var(--color-yellow-light);
}
body #context-menu ul .revolution-autocomplete {
  order: 1;
  padding: 4px 5px !important;
  background: var(--bg-box) !important;
  border-bottom: 1px solid var(--border-color) !important;
}
body #context-menu ul .revolution-autocomplete .revolution-search {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid var(--border-color);
}
/* END CONTENT MENU */
.controller-welcome.action-index #main > #content:after {
  content: '';
  display: block;
  clear: both;
  width: 100%;
}
.controller-welcome.action-index #main > #content .wiki h2 img {
  display: none;
}
.redmine-evolution-go-to-top {
  position: fixed;
  bottom: -26px;
  right: 30px;
  width: 30px;
  height: 25px;
  border-radius: var(--border-radius-small) var(--border-radius-small) 0 0;
  border: 1px solid var(--color-main-color);
  border-bottom: none;
  z-index: 1000;
  background: var(--color-main-color-text);
  color: var(--color-main-color);
  -webkit-transition: background var(--time-hover) ease-in-out, bottom var(--time-hover) ease-in-out;
  -moz-transition: background var(--time-hover) ease-in-out, bottom var(--time-hover) ease-in-out;
  -ms-transition: background var(--time-hover) ease-in-out, bottom var(--time-hover) ease-in-out;
  -o-transition: background var(--time-hover) ease-in-out, bottom var(--time-hover) ease-in-out;
  transition: background var(--time-hover) ease-in-out, bottom var(--time-hover) ease-in-out;
}
.redmine-evolution-go-to-top:hover {
  background: var(--color-main-color);
}
.redmine-evolution-go-to-top:hover:after {
  color: var(--color-main-color-text);
}
.redmine-evolution-go-to-top:after {
  content: "\E0E0";
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 24px;
  line-height: 30px;
  position: absolute;
  top: 50%;
  left: 50%;
  color: var(--color-main-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.redmine-evolution-go-to-top.visible {
  bottom: 0;
}
#main > #content > * {
  z-index: 3;
  order: 2;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#main > #content .contextual:not(.next-prev-links) .drdn-items {
  min-width: 10px;
  display: block;
}
#main > #content .contextual:not(.next-prev-links) .drdn-items a.icon {
  background-image: none;
  background-color: var(--bg-fff);
  display: block;
  position: relative;
  font-size: 0.85714286rem;
  line-height: 1.4;
  height: auto !important;
  min-height: auto;
  width: 100% !important;
  color: var(--drop-text-color);
  padding: 4px 5px 4px 30px;
  background-image: none !important;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  z-index: 2;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main > #content .contextual:not(.next-prev-links) .drdn-items a.icon:after {
  position: absolute;
  top: 0;
  left: 5px;
  color: var(--drop-icon-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  width: var(--icon-width-small);
  font-size: var(--icon-font-size-small) !important;
  display: flex;
  align-items: center;
}
#main > #content .contextual:not(.next-prev-links) .drdn-items a.icon:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  width: 0;
  height: 100%;
  background: var(--drop-bg-hover);
  z-index: -1;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-transition: width var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out;
  margin: 0 !important;
}
#main > #content .contextual:not(.next-prev-links) .drdn-items a.icon:hover {
  text-decoration: none;
  color: var(--icon-color-hover-bg);
  border: 0;
}
#main > #content .contextual:not(.next-prev-links) .drdn-items a.icon:hover:after {
  color: var(--icon-color-hover-bg);
}
#main > #content .contextual:not(.next-prev-links) .drdn-items a.icon:hover:before {
  width: 100%;
  background: var(--icon_bg_hover-bg);
}
#main > #content .contextual:not(.next-prev-links) .drdn-content {
  top: 100%;
  min-width: 10px;
}
#main > #content {
  border: none;
  background: none;
  width: 100%;
  order: 1;
  flex: 1 0;
  padding: 0 30px 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-flow: wrap;
  position: relative;
  overflow: visible;
  /* START COLOR */
  /* END COLOR */
  /* --------------------- https://redmine-evolution.com/ -- */
}
#main > #content:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 74px;
  left: 0px;
  width: 100%;
  height: calc(100% - 74px);
  background: var(--bg-fff);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  z-index: -1;
}
#main > #content h2 {
  order: 1;
}
#main > #content > * {
  order: 2;
  z-index: 2;
}
#main > #content > *form {
  z-index: 10;
}
#main > #content h1,
#main > #content h2,
#main > #content h3,
#main > #content h4 {
  color: var(--text-color-main);
  border: 0;
  margin: 0 0 20px;
}
#main > #content h3,
#main > #content .wiki h2,
#main > #content .tab-content h2 {
  font-size: 1.1428rem;
  margin: 0 0 20px;
  padding: 0;
}
#main > #content h3 a.icon-only,
#main > #content .wiki h2 a.icon-only,
#main > #content .tab-content h2 a.icon-only {
  float: right;
}
#main > #content span.pagination,
#main > #content p.other-formats {
  color: #818E94;
}
#main > #content p:empty {
  display: none;
}
#main > #content #content {
  width: 100%;
  background: none;
  border: 0;
  padding: 0;
  margin: 0;
}
#main > #content .splitcontentright,
#main > #content #list-right,
#main > #content .splitcontentleft,
#main > #content #list-left {
  width: 50%;
  max-width: 50%;
  padding: 0 15px 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-left: 0;
  margin-right: 0;
  float: left;
}
#main > #content .splitcontentright,
#main > #content #list-right {
  padding: 0 0 0 15px;
}
#main > #content > h2,
#main > #content #content > h2,
#main > #content #query_form > h2,
#main > #content .top-question h2 {
  position: relative;
  font-size: 1.4285rem;
  line-height: 1.4;
  padding: 15px 45px;
  width: calc(100% + 60px);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 -30px 20px;
  border-bottom: 1px solid var(--border-color);
  background-size: 30px 30px;
  background-position: 0 50%;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
#main > #content > h2 .gravatar,
#main > #content #content > h2 .gravatar,
#main > #content #query_form > h2 .gravatar,
#main > #content .top-question h2 .gravatar {
  display: block;
  width: 30px;
  height: 30px;
}
#main > #content > h2 .live_search,
#main > #content #content > h2 .live_search,
#main > #content #query_form > h2 .live_search,
#main > #content .top-question h2 .live_search {
  float: right;
  max-width: 188px;
  width: 188px;
  position: absolute;
  top: 50%;
  right: 265px;
  margin: -15px 0 0;
}
#main > #content > h2 .live_search input[type="text"],
#main > #content #content > h2 .live_search input[type="text"],
#main > #content #query_form > h2 .live_search input[type="text"],
#main > #content .top-question h2 .live_search input[type="text"] {
  height: 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid var(--border-color-content);
  padding: 6px 12px;
  font-size: 14px;
  line-height: 18px;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  color: var(--text-color-main);
  margin: 0 10px 0 0;
  min-width: 188px;
  outline: 0 none;
  width: 100%;
  max-width: 100%;
  flex: 1 0 0;
}
#main > #content .sort-handle {
  vertical-align: top;
}
#main > #content h3.icon {
  display: block;
  width: 100%;
  background-size: 22px 22px;
  background-repeat: no-repeat;
  background-position: 0 50%;
  padding: 0 0 0 25px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#main > #content h3.icon:after {
  position: absolute;
  top: 3px;
  left: 0;
  width: 22px;
  height: 22px;
  font-size: 22px;
}
#main > #content h3.icon a {
  float: right;
}
#main > #content span.pagination {
  margin: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 49%;
  overflow: hidden;
  font-size: 0.857rem;
  line-height: 2.143rem;
}
#main > #content #projects-index {
  width: 100%;
  margin: 0;
  padding: 0;
}
#main > #content div.projects {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#main > #content div.projects a {
  width: auto;
  font-size: 1rem;
  line-height: 1.143rem;
  margin: 0;
  height: auto;
  min-height: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#main > #content .next-prev-links,
#main > #content > .contextual {
  margin: 0;
  align-items: center;
  display: flex;
  font-size: 0.85714286rem;
  line-height: 1.4;
  color: var(--bg-fff);
}
#main > #content .next-prev-links .icon,
#main > #content > .contextual .icon,
#main > #content .next-prev-links .open-filter,
#main > #content > .contextual .open-filter {
  margin: 0 3px;
  width: var(--icon-width);
  height: var(--icon-width);
  padding: 0;
}
#main > #content .next-prev-links .icon:after,
#main > #content > .contextual .icon:after,
#main > #content .next-prev-links .open-filter:after,
#main > #content > .contextual .open-filter:after {
  width: var(--icon-width);
  height: var(--icon-width);
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#main > #content > .contextual:not(.next-prev-links),
#main > #content #content > .contextual:not(.next-prev-links) {
  margin: 0;
  position: absolute;
  top: 15px;
  right: 0;
  z-index: 4;
  color: var(--bg-box);
  width: auto;
}
#main > #content > .contextual:not(.next-prev-links) label[for="closed"],
#main > #content #content > .contextual:not(.next-prev-links) label[for="closed"] {
  margin-right: 10px;
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"],
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"],
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"],
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"],
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"],
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"],
#main > #content > .contextual:not(.next-prev-links) .icon,
#main > #content #content > .contextual:not(.next-prev-links) .icon,
#main > #content > .contextual:not(.next-prev-links) .open-filter,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only {
  color: var(--icon-color-bg);
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me:before,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me:before,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox:before,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"]:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"]:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"]:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"]:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"]:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"]:before,
#main > #content > .contextual:not(.next-prev-links) .icon:before,
#main > #content #content > .contextual:not(.next-prev-links) .icon:before,
#main > #content > .contextual:not(.next-prev-links) .open-filter:before,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter:before,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only:before,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only:before {
  background: var(--icon_bg_hover-bg);
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me:hover,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me:hover,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox:hover,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox:hover,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"]:hover,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"]:hover,
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"]:hover,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"]:hover,
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"]:hover,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"]:hover,
#main > #content > .contextual:not(.next-prev-links) .icon:hover,
#main > #content #content > .contextual:not(.next-prev-links) .icon:hover,
#main > #content > .contextual:not(.next-prev-links) .open-filter:hover,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter:hover,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only:hover,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only:hover {
  color: var(--icon-color-hover-bg);
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-save,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-save,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-save,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-save,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-save,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-save,
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-save,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-save,
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-save,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-save,
#main > #content > .contextual:not(.next-prev-links) .icon.new-icon-save,
#main > #content #content > .contextual:not(.next-prev-links) .icon.new-icon-save,
#main > #content > .contextual:not(.next-prev-links) .open-filter.new-icon-save,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter.new-icon-save,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-save,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-save {
  color: var(--icon-save-color);
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-save:after,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-save:after,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-save:after,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-save:after,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-save:after,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-save:after,
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-save:after,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-save:after,
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-save:after,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-save:after,
#main > #content > .contextual:not(.next-prev-links) .icon.new-icon-save:after,
#main > #content #content > .contextual:not(.next-prev-links) .icon.new-icon-save:after,
#main > #content > .contextual:not(.next-prev-links) .open-filter.new-icon-save:after,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter.new-icon-save:after,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-save:after,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-save:after {
  color: var(--icon-save-color);
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-save:before,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-save:before,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-save:before,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-save:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-save:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-save:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-save:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-save:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-save:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-save:before,
#main > #content > .contextual:not(.next-prev-links) .icon.new-icon-save:before,
#main > #content #content > .contextual:not(.next-prev-links) .icon.new-icon-save:before,
#main > #content > .contextual:not(.next-prev-links) .open-filter.new-icon-save:before,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter.new-icon-save:before,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-save:before,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-save:before {
  background: var(--icon-save-bg);
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-save:hover,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-save:hover,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-save:hover,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-save:hover,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-save:hover,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-save:hover,
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-save:hover,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-save:hover,
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-save:hover,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-save:hover,
#main > #content > .contextual:not(.next-prev-links) .icon.new-icon-save:hover,
#main > #content #content > .contextual:not(.next-prev-links) .icon.new-icon-save:hover,
#main > #content > .contextual:not(.next-prev-links) .open-filter.new-icon-save:hover,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter.new-icon-save:hover,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-save:hover,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-save:hover {
  color: var(--icon-save-color-hover);
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-save:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-save:hover:after,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-save:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-save:hover:after,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-save:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-save:hover:after,
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-save:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-save:hover:after,
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-save:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-save:hover:after,
#main > #content > .contextual:not(.next-prev-links) .icon.new-icon-save:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) .icon.new-icon-save:hover:after,
#main > #content > .contextual:not(.next-prev-links) .open-filter.new-icon-save:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter.new-icon-save:hover:after,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-save:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-save:hover:after {
  color: var(--icon-save-color-hover);
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-save:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-save:hover:before,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-save:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-save:hover:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-save:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-save:hover:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-save:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-save:hover:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-save:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-save:hover:before,
#main > #content > .contextual:not(.next-prev-links) .icon.new-icon-save:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) .icon.new-icon-save:hover:before,
#main > #content > .contextual:not(.next-prev-links) .open-filter.new-icon-save:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter.new-icon-save:hover:before,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-save:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-save:hover:before {
  background: var(--icon-save-bg-hover);
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-close,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-close,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-close,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-close,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-close,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-close,
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-close,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-close,
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-close,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-close,
#main > #content > .contextual:not(.next-prev-links) .icon.new-icon-close,
#main > #content #content > .contextual:not(.next-prev-links) .icon.new-icon-close,
#main > #content > .contextual:not(.next-prev-links) .open-filter.new-icon-close,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter.new-icon-close,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-close,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-close {
  color: var(--icon-close-color);
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-close:before,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-close:before,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-close:before,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-close:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-close:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-close:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-close:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-close:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-close:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-close:before,
#main > #content > .contextual:not(.next-prev-links) .icon.new-icon-close:before,
#main > #content #content > .contextual:not(.next-prev-links) .icon.new-icon-close:before,
#main > #content > .contextual:not(.next-prev-links) .open-filter.new-icon-close:before,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter.new-icon-close:before,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-close:before,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-close:before {
  background: var(--icon-close-bg);
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-close:after,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-close:after,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-close:after,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-close:after,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-close:after,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-close:after,
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-close:after,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-close:after,
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-close:after,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-close:after,
#main > #content > .contextual:not(.next-prev-links) .icon.new-icon-close:after,
#main > #content #content > .contextual:not(.next-prev-links) .icon.new-icon-close:after,
#main > #content > .contextual:not(.next-prev-links) .open-filter.new-icon-close:after,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter.new-icon-close:after,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-close:after,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-close:after {
  color: var(--icon-close-color);
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-close:hover,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-close:hover,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-close:hover,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-close:hover,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-close:hover,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-close:hover,
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-close:hover,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-close:hover,
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-close:hover,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-close:hover,
#main > #content > .contextual:not(.next-prev-links) .icon.new-icon-close:hover,
#main > #content #content > .contextual:not(.next-prev-links) .icon.new-icon-close:hover,
#main > #content > .contextual:not(.next-prev-links) .open-filter.new-icon-close:hover,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter.new-icon-close:hover,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-close:hover,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-close:hover {
  color: var(--icon-close-color-hover);
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-close:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-close:hover:after,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-close:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-close:hover:after,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-close:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-close:hover:after,
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-close:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-close:hover:after,
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-close:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-close:hover:after,
#main > #content > .contextual:not(.next-prev-links) .icon.new-icon-close:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) .icon.new-icon-close:hover:after,
#main > #content > .contextual:not(.next-prev-links) .open-filter.new-icon-close:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter.new-icon-close:hover:after,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-close:hover:after,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-close:hover:after {
  color: var(--icon-close-color-hover);
}
#main > #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-close:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) a.assign-to-me.new-icon-close:hover:before,
#main > #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-close:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) a.icon-fancybox.new-icon-close:hover:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-close:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/issues"].new-icon-close:hover:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-close:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/time_entries"].new-icon-close:hover:before,
#main > #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-close:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) a[href="/activity"].new-icon-close:hover:before,
#main > #content > .contextual:not(.next-prev-links) .icon.new-icon-close:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) .icon.new-icon-close:hover:before,
#main > #content > .contextual:not(.next-prev-links) .open-filter.new-icon-close:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) .open-filter.new-icon-close:hover:before,
#main > #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-close:hover:before,
#main > #content #content > .contextual:not(.next-prev-links) .drdn .icon-only.new-icon-close:hover:before {
  background: var(--icon-close-bg-hover);
}
#main > #content .context-menu-selection,
#main > #content .context-menu-selection:hover {
  background: var(--select-bg-redmineup) !important;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START OVERLAY  */
#ajax-indicator {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: none;
  border: 0;
  opacity: 1;
}
#ajax-indicator:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--popup-overlay);
  z-index: -1;
}
#ajax-indicator span {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 100px;
  height: 160px;
  padding: 110px 0 0 0;
  margin: -80px 0 0 -50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: none;
  z-index: 2;
  text-indent: -99999999px;
  overflow: hidden;
}
#ajax-indicator span:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  visibility: visible;
  background: url("../images/redmine-evolution.svg") 50% 50% no-repeat;
  background-size: contain;
  width: 100%;
  height: 90px;
  margin: 0;
  -webkit-transition: opacity var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out;
}
#ajax-indicator span:after {
  content: '';
  display: block;
  clear: both;
  visibility: visible;
  background: url("../images/spiner.svg") 50% 50% no-repeat;
  background-size: contain;
  width: 100%;
  height: 50px;
  position: absolute;
  bottom: 10px;
  left: 0;
  margin: 0;
  -webkit-transition: opacity var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out;
}
/* END OVERLAY  */
/* --------------------- https://redmine-evolution.com/ -- */
/* START TABS  */
#main #content .box div[class="tabs"]:after,
#main > #history .box div[class="tabs"]:after {
  background: var(--text-color-main);
}
#main #content .box div[class="tabs"] ul li a,
#main > #history .box div[class="tabs"] ul li a {
  color: var(--text-color-main);
}
#main #content div[class="tabs"],
#main > #history div[class="tabs"],
#main #content div[class="tabs hide-when-print"],
#main > #history div[class="tabs hide-when-print"] {
  padding: 0;
  border: none;
  margin: 0 0 20px;
  position: relative;
  z-index: 2;
  font-size: 1rem;
  line-height: 1.4;
  overflow: hidden;
  height: 50px;
}
#main #content div[class="tabs"]:after,
#main > #history div[class="tabs"]:after,
#main #content div[class="tabs hide-when-print"]:after,
#main > #history div[class="tabs hide-when-print"]:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  bottom: 1px;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--border-color);
  z-index: -1;
}
#main #content div[class="tabs"] > ul,
#main > #history div[class="tabs"] > ul,
#main #content div[class="tabs hide-when-print"] > ul,
#main > #history div[class="tabs hide-when-print"] > ul {
  position: relative;
  padding: 0;
  margin: 0;
  border: none;
  list-style: none;
  white-space: nowrap;
  font-size: 0;
}
#main #content div[class="tabs"] > ul > li,
#main > #history div[class="tabs"] > ul > li,
#main #content div[class="tabs hide-when-print"] > ul > li,
#main > #history div[class="tabs hide-when-print"] > ul > li {
  padding: 0;
  margin: 0;
  overflow: hidden;
  display: inline-block;
  float: none;
  background: none;
}
#main #content div[class="tabs"] > ul > li a,
#main > #history div[class="tabs"] > ul > li a,
#main #content div[class="tabs hide-when-print"] > ul > li a,
#main > #history div[class="tabs hide-when-print"] > ul > li a {
  float: left;
  margin: 0 15px 0 0;
  font-family: sans-serif;
  padding: 15px 0 15px;
  border: none;
  display: block;
  position: relative;
  background: none;
  color: var(--tab-color-text);
  font-size: 1.1428rem;
  font-weight: 600;
  text-decoration: none;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main #content div[class="tabs"] > ul > li a.selected,
#main > #history div[class="tabs"] > ul > li a.selected,
#main #content div[class="tabs hide-when-print"] > ul > li a.selected,
#main > #history div[class="tabs hide-when-print"] > ul > li a.selected {
  color: var(--tab-color-text-seleced);
  border: none;
  background: none;
}
#main #content div[class="tabs"] > ul > li a.selected:after,
#main > #history div[class="tabs"] > ul > li a.selected:after,
#main #content div[class="tabs hide-when-print"] > ul > li a.selected:after,
#main > #history div[class="tabs hide-when-print"] > ul > li a.selected:after {
  width: 100%;
  left: 0;
}
#main #content div[class="tabs"] > ul > li a.selected:hover,
#main > #history div[class="tabs"] > ul > li a.selected:hover,
#main #content div[class="tabs hide-when-print"] > ul > li a.selected:hover,
#main > #history div[class="tabs hide-when-print"] > ul > li a.selected:hover {
  background: none;
}
#main #content div[class="tabs"] > ul > li a:hover,
#main > #history div[class="tabs"] > ul > li a:hover,
#main #content div[class="tabs hide-when-print"] > ul > li a:hover,
#main > #history div[class="tabs hide-when-print"] > ul > li a:hover {
  color: var(--tab-color-text-seleced);
  background: none;
  text-decoration: none;
}
#main #content div[class="tabs"] > ul > li a:hover:after,
#main > #history div[class="tabs"] > ul > li a:hover:after,
#main #content div[class="tabs hide-when-print"] > ul > li a:hover:after,
#main > #history div[class="tabs hide-when-print"] > ul > li a:hover:after {
  width: 100%;
  left: 0;
}
#main #content div[class="tabs"] > ul > li a:after,
#main > #history div[class="tabs"] > ul > li a:after,
#main #content div[class="tabs hide-when-print"] > ul > li a:after,
#main > #history div[class="tabs hide-when-print"] > ul > li a:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  bottom: 0px;
  left: 50%;
  width: 0;
  height: 3px;
  background: var(--tab-color-text-seleced);
  -webkit-transition: width var(--time-hover) ease-in-out, left var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out, left var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out, left var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out, left var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out, left var(--time-hover) ease-in-out;
}
#main #content .tab-content,
#main > #history .tab-content {
  position: relative;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  display: block !important;
}
#main #content .tab-content[style*="none"],
#main > #history .tab-content[style*="none"] {
  position: fixed;
  top: -9999999px;
  left: -9999999px;
}
#main #content .tab-content[style*="none"].active,
#main > #history .tab-content[style*="none"].active {
  position: static;
}
#main #content .tab-content #notified_events p,
#main > #history .tab-content #notified_events p {
  padding: 0;
  margin: 15px 0 0;
}
#main #content .tab-content p,
#main > #history .tab-content p {
  overflow: hidden;
  margin: 0 0 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#main #content .tab-content p a.icon,
#main > #history .tab-content p a.icon {
  float: right;
}
#main #content .tab-content p.nodata,
#main > #history .tab-content p.nodata {
  width: 100%;
}
#main #content .tab-content table p,
#main > #history .tab-content table p {
  margin: 0;
  padding: 0;
  display: block;
  min-height: auto;
}
#main #content .tab-content #activity dl dt,
#main > #history .tab-content #activity dl dt,
#main #content .splitcontentright #activity dl dt,
#main > #history .splitcontentright #activity dl dt,
#main #content .splitcontentleft #activity dl dt,
#main > #history .splitcontentleft #activity dl dt {
  background: var(--bg-box);
  margin: 0 0 25px !important;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#main #content .tab-content #activity dl dt:after,
#main > #history .tab-content #activity dl dt:after,
#main #content .splitcontentright #activity dl dt:after,
#main > #history .splitcontentright #activity dl dt:after,
#main #content .splitcontentleft #activity dl dt:after,
#main > #history .splitcontentleft #activity dl dt:after {
  display: none;
}
#main #content .tab-content #activity dl .project,
#main > #history .tab-content #activity dl .project,
#main #content .splitcontentright #activity dl .project,
#main > #history .splitcontentright #activity dl .project,
#main #content .splitcontentleft #activity dl .project,
#main > #history .splitcontentleft #activity dl .project {
  margin: 0 10px 0 0;
}
#main #content .tab-content #activity dl dd,
#main > #history .tab-content #activity dl dd,
#main #content .splitcontentright #activity dl dd,
#main > #history .splitcontentright #activity dl dd,
#main #content .splitcontentleft #activity dl dd,
#main > #history .splitcontentleft #activity dl dd {
  background: var(--bg-box);
  padding: 0 20px;
  margin: -30px 0 15px;
}
#main #content .tab-content #activity dl .time,
#main > #history .tab-content #activity dl .time,
#main #content .splitcontentright #activity dl .time,
#main > #history .splitcontentright #activity dl .time,
#main #content .splitcontentleft #activity dl .time,
#main > #history .splitcontentleft #activity dl .time {
  background: var(--bg-fff);
}
#main #content .tab-content #activity dl .description,
#main > #history .tab-content #activity dl .description,
#main #content .splitcontentright #activity dl .description,
#main > #history .splitcontentright #activity dl .description,
#main #content .splitcontentleft #activity dl .description,
#main > #history .splitcontentleft #activity dl .description {
  padding: 10px 0;
  margin: 0;
}
#main #content .tab-content #activity dl .description:empty,
#main > #history .tab-content #activity dl .description:empty,
#main #content .splitcontentright #activity dl .description:empty,
#main > #history .splitcontentright #activity dl .description:empty,
#main #content .splitcontentleft #activity dl .description:empty,
#main > #history .splitcontentleft #activity dl .description:empty {
  display: none;
}
#main #content .tab-content #activity dl .author,
#main > #history .tab-content #activity dl .author,
#main #content .splitcontentright #activity dl .author,
#main > #history .splitcontentright #activity dl .author,
#main #content .splitcontentleft #activity dl .author,
#main > #history .splitcontentleft #activity dl .author {
  display: block;
  padding: 10px 0;
}
#main #content .tabs-buttons,
#main > #history .tabs-buttons {
  display: none;
}
/* END TABS  */
/* --------------------- https://redmine-evolution.com/ -- */
/* START INTERNAL PAGES (BOX)  */
.start-notice #content form {
  z-index: 10 !important;
}
#content form {
  display: block;
  width: 100%;
}
#content h2 + form {
  position: relative;
}
#content h2 + form:after {
  content: '';
  display: block;
  clear: both;
}
#content .splitcontentleft .wiki,
#content .tab-content fieldset,
#content #settings .box,
#content .box {
  color: var(--text-color-main);
  overflow: hidden;
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
  margin: 0 0 20px;
  border: none;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#content .splitcontentleft .wiki ul,
#content .tab-content fieldset ul,
#content #settings .box ul,
#content .box ul {
  margin-top: 0;
}
#content .splitcontentleft .wiki[style*="background-color"],
#content .tab-content fieldset[style*="background-color"],
#content #settings .box[style*="background-color"],
#content .box[style*="background-color"] {
  padding: 52px 15px 15px;
}
#content .splitcontentleft .wiki:empty,
#content .tab-content fieldset:empty,
#content #settings .box:empty,
#content .box:empty {
  display: none;
}
#content .splitcontentleft .wiki p,
#content .tab-content fieldset p,
#content #settings .box p,
#content .box p {
  margin: 0 0 10px;
}
#content .splitcontentleft .wiki a.icon,
#content .tab-content fieldset a.icon,
#content #settings .box a.icon,
#content .box a.icon,
#content .splitcontentleft .wiki #deal_contact_id_add_link,
#content .tab-content fieldset #deal_contact_id_add_link,
#content #settings .box #deal_contact_id_add_link,
#content .box #deal_contact_id_add_link {
  color: var(--icon-color-bg);
}
#content .splitcontentleft .wiki a.icon:hover,
#content .tab-content fieldset a.icon:hover,
#content #settings .box a.icon:hover,
#content .box a.icon:hover,
#content .splitcontentleft .wiki #deal_contact_id_add_link:hover,
#content .tab-content fieldset #deal_contact_id_add_link:hover,
#content #settings .box #deal_contact_id_add_link:hover,
#content .box #deal_contact_id_add_link:hover {
  color: var(--icon-color-hover-bg);
}
#content .splitcontentleft .wiki a.icon img[src*='add.png'],
#content .tab-content fieldset a.icon img[src*='add.png'],
#content #settings .box a.icon img[src*='add.png'],
#content .box a.icon img[src*='add.png'],
#content .splitcontentleft .wiki #deal_contact_id_add_link img[src*='add.png'],
#content .tab-content fieldset #deal_contact_id_add_link img[src*='add.png'],
#content #settings .box #deal_contact_id_add_link img[src*='add.png'],
#content .box #deal_contact_id_add_link img[src*='add.png'] {
  display: none;
}
#content .tab-content fieldset {
  padding-top: 52px;
}
#content .tab-content fieldset legend {
  left: 20px;
  position: absolute;
  top: 17px;
  font-weight: 600;
  color: var(--color-main-color);
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
}
#content #tab-content-repositories table th {
  text-align: left;
}
#content #tab-content-repositories .box.enabled_scm p {
  padding: 10px 0 0 !important;
  margin: 0 !important;
}
#content form.tabular {
  padding: 0;
}
#content div.box > .tabular {
  padding: 0;
}
#content div.box > .tabular > fieldset {
  border: 0;
  margin: 0;
  position: relative;
  padding: 52px 0 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#content div.box > .tabular > fieldset legend {
  position: absolute;
  top: 17px;
  left: 0;
  font-weight: 600;
  color: var(--color-main-color);
  margin: 0;
  padding: 10px 0;
  display: flex;
  align-items: center;
}
#content div.box > fieldset,
#content div.box > fieldset.tabular {
  border: 0;
  margin: 0;
  position: relative;
  padding: 52px 0 0;
}
#content div.box > fieldset legend,
#content div.box > fieldset.tabular legend {
  position: absolute;
  top: 17px;
  left: 0;
  font-weight: 600;
  color: var(--color-main-color);
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
}
#content div.box select[name*="query[sort_criteria]"] + .jcf-select {
  width: 40%;
  margin: 0 10px 10px !important;
}
#content div.box .query_sort_criteria_count {
  margin: 0 !important;
}
#content fieldset.box {
  padding: 52px 20px 20px;
}
#content fieldset.box legend {
  left: 20px;
  position: absolute;
  top: 17px;
  font-weight: 600;
  color: var(--color-main-color);
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
}
#content fieldset.box legend .icon-checked {
  margin-left: -4px;
}
#content fieldset.box fieldset {
  border: 0;
  position: relative;
  padding: 40px 0 0;
}
#content fieldset.box fieldset legend {
  left: 0;
  top: 0;
}
.controller-queries.action-new #content .box fieldset {
  border-top: 1px solid var(--border-color);
}
/* END INTERNAL PAGES (BOX) */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA */
/* END CONTENT */
/* --------------------- https://redmine-evolution.com/ -- */
/* START HOME PAGE */
.controller-welcome.action-index #main > #content {
  display: block;
}
/* END HOME PAGE  */
/* --------------------- https://redmine-evolution.com/ -- */
/* START OVERVIEW PAGE */
/* END OVERVIEW PAGE */
.scrollbar {
  margin: 0;
  height: 2px;
  background: var(--scrollbar);
  line-height: 0;
}
.scrollbar .handle {
  width: 100px;
  height: 100%;
  background: var(--scrollbar_handle);
  cursor: pointer;
}
.scrollbar .mousearea {
  position: absolute;
  top: -9px;
  left: 0;
  width: 100%;
  height: 20px;
}
.hold-control {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 10px 0 5px;
}
.hold-control .pages {
  list-style: none;
  margin: 0 10px 0 0;
  padding: 0 10px 0 0;
  text-align: right;
  flex: 1 0 auto;
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  align-content: flex-end;
  border-right: 1px solid var(--border-color);
}
.hold-control .pages li {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 4px;
  text-indent: -999px;
  cursor: pointer;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--color-main-color);
  font-size: 0;
  line-height: 0;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  order-radius: var(--icon-border-radius);
  -webkit-transition: background-color var(--time-hover) ease-in-out;
  -moz-transition: background-color var(--time-hover) ease-in-out;
  -ms-transition: background-color var(--time-hover) ease-in-out;
  -o-transition: background-color var(--time-hover) ease-in-out;
  transition: background-color var(--time-hover) ease-in-out;
}
.hold-control .pages li:hover {
  background: var(--scrollbar);
}
.hold-control .pages li.active {
  background: var(--scrollbar_handle);
}
.hold-control .controls .prevPage:after {
  content: "\E168";
}
.hold-control .controls .nextPage:after {
  content: "\E14F";
}
td.values > span {
  display: flex;
  align-items: center;
}
h2 img.gravatar {
  margin: 0 10px 0 0;
}
h2 span ~ img.gravatar,
h2 a ~ img.gravatar {
  margin-left: 10px;
}
#watchers img.gravatar {
  margin: 0;
  background: var(--bg-fff);
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START USERS */
#content #password_fields {
  padding: 10px 0 0;
}
#content #tab-content-groups .box > p {
  padding: 0;
  color: var(--bg-box);
}
#content #tab-content-groups .box > p a {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-bg);
  border: none;
  color: var(--button-color);
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  margin: 0 10px 0 0;
  display: inline-block;
  text-decoration: none !important;
}
#content #tab-content-groups .box > p a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#content #tab-content-groups .box > p a:disabled {
  background: var(--button-bg-disabled);
  cursor: default;
}
#content #tab-content-groups .box > p a:disabled:hover {
  background: var(--button-bg-disabled);
  color: var(--button-color-disabled);
}
#content #tab-content-groups #user_group_ids {
  margin: 0 0 15px;
}
table.list:not(.odd-even) tbody tr:nth-child(2n),
.even,
#issue-changesets div.changeset:nth-child(2n) {
  background: var(--bg-fff);
}
/* END USERS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START TIME ENTRIES */
form[action*="time_entries/report"] .tabs + p {
  display: flex;
  align-items: center;
  margin: 0 0 20px !important;
  max-width: 700px;
}
form[action*="time_entries/report"] .tabs + p .jcf-select {
  margin: 0 0 0 10px;
}
form[action*="time_entries/report"] + .autoscroll {
  margin: 0 0 30px;
}
form[action*="time_entries"] .autoscroll {
  margin: 0 0 30px;
}
.controller-timelog.action-new form[action*="time_entries"] .autoscroll {
  padding: 0 !important;
  overflow: hidden;
  margin: 0 !important;
}
.controller-timelog.action-new form[action*="time_entries"] .autoscroll .jcf-select {
  min-width: 100px;
}
.controller-timelog.action-new form[action*="time_entries"] .autoscroll table {
  padding-left: 0 !important;
  width: 100%;
  display: flex;
  align-items: center;
  margin: 10px 0;
}
.controller-timelog.action-new form[action*="time_entries"] .autoscroll table tbody {
  width: 100%;
  display: flex;
  align-items: center;
  flex-flow: column;
}
.controller-timelog.action-new form[action*="time_entries"] .autoscroll table tr {
  display: flex;
  align-items: center;
  width: 100%;
}
.controller-timelog.action-new form[action*="time_entries"] .autoscroll table th {
  width: 295px;
  min-width: 295px;
  max-width: 295px;
  padding: 0 10px 0 0;
  color: var(--text-color-main);
  font-size: 1rem;
  line-height: 1.4;
  flex: 1;
  text-align: left !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-timelog.action-new form[action*="time_entries"] .autoscroll table td {
  padding: 0 !important;
  margin: 0;
  flex: 1 0 auto;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
}
.controller-timelog.action-new form[action*="time_entries"] .autoscroll table td .jcf-select-start_time,
.controller-timelog.action-new form[action*="time_entries"] .autoscroll table td .jcf-select-end_time {
  margin: 0 10px 0 0;
}
/* END TIME ENTRIES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START TIME GANT */
#main .gantt_content .contextual > span {
  color: var(--bg-fff);
  margin: 0;
}
#main .gantt_content .contextual > span a {
  width: var(--icon-width);
  height: var(--icon-width);
  color: var(--icon-color);
}
#main .gantt_content .contextual > span a:after {
  color: var(--icon-color);
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#main .gantt_content .autoscroll {
  margin: 0 0 30px;
}
@media screen and (max-width: 1024px) {
  #main .gantt_content .autoscroll {
    margin: 0;
  }
}
#content #query_form[action*="gantt"].open-filters #query_form_with_buttons .holder-filters {
  margin: 0 0 20px;
}
#content #query_form[action*="gantt"] #query_form_with_buttons > .buttons {
  max-width: 700px;
  margin: 0 0 20px;
  display: flex;
  align-items: center;
}
#content #query_form[action*="gantt"] #query_form_with_buttons > .buttons #months {
  flex: 0;
  min-width: 70px;
  width: 70px;
  margin: 0 10px 0 0;
}
#content #query_form[action*="gantt"] #query_form_with_buttons > .buttons .jcf-select {
  margin: 0 0 0 10px !important;
  width: auto;
}
#content #query_form[action*="gantt"] #query_form_with_buttons > .buttons .jcf-select:last-of-type {
  margin: 0 10px !important;
}
#content #query_form[action*="gantt"] #query_form_with_buttons > .buttons a {
  margin: 0 0 0 5px !important;
}
#content #query_form[action*="gantt"] #query_form_with_buttons > .buttons .select2 {
  max-width: 70px;
  margin: 0 0 0 10px !important;
}
#content #query_form[action*="gantt"] #query_form_with_buttons > .buttons .icon-checked {
  margin: 0 0 0 10px !important;
}
#content #query_form[action*="gantt"] > .buttons {
  max-width: 700px;
  margin: 0 0 30px;
  display: flex;
  align-items: center;
}
#content #query_form[action*="gantt"] > .buttons #months {
  flex: 0;
  min-width: 70px;
  width: 70px;
  margin: 0 10px 0 0;
}
#content #query_form[action*="gantt"] > .buttons .jcf-select {
  margin: 0 0 0 10px !important;
  width: auto;
}
#content #query_form[action*="gantt"] > .buttons .jcf-select:last-of-type {
  margin: 0 10px !important;
}
#content #query_form[action*="gantt"] > .buttons a {
  margin: 0 0 0 5px !important;
}
#content #query_form[action*="gantt"] > .buttons .select2 {
  max-width: 70px;
  margin: 0 0 0 10px !important;
}
#content #query_form[action*="gantt"] > .buttons .icon-checked {
  margin: 0 0 0 10px !important;
}
.controller-gantts.action-show #content > table {
  font-size: 0.85714286rem;
}
.controller-gantts.action-show #content > table .icon {
  line-height: 16px;
  padding: 0 0 0 24px;
}
.controller-gantts.action-show .gantt_subjects {
  font-size: 0.85714286rem;
}
.controller-gantts.action-show #main > #content .context-menu-selection {
  background-color: var(--light-bg) !important;
}
.controller-gantts.action-show #main > #content .context-menu-selection .gantt_subjects a.icon:after,
.controller-gantts.action-show #main > #content .context-menu-selection .gantt_subjects span.icon:after {
  color: var(--bg-fff);
}
.controller-gantts.action-show #main .context-menu-selection .gantt_subjects a.icon:after,
.controller-gantts.action-show #main .context-menu-selection .gantt_subjects span.icon:after {
  color: var(--bg-fff);
}
.controller-gantts.action-show .gravatar {
  margin: 0 5px 0 0 !important;
}
.controller-gantts.action-show .gantt_hdr {
  border-top: 1px solid var(--border-color-content);
  border-bottom: 1px solid var(--border-color-content);
  border-right: 1px solid var(--border-color-content);
}
.controller-gantts.action-show .gantt_hdr[style*="background:"] {
  background: var(--bg-box) !important;
}
.controller-gantts.action-show .gantt_hdr.nwday {
  background: var(--bg-box);
}
#main .gantt_subjects,
#main .gantt_selected_column_content.gantt_hdr {
  font-size: 0.7857rem;
  line-height: 1;
}
#main #gantt_area *:after {
  display: none !important;
}
#main .gantt_subjects div {
  line-height: 16px;
}
#main .gantt_subjects div > span.expander {
  max-width: 16px;
  min-width: 16px;
  margin: 0 5px 0 10px !important;
  padding: 0 !important;
  -webkit-transform: rotate(0);
  -moz-transform: rotate(0);
  -ms-transform: rotate(0);
  -o-transform: rotate(0);
  transform: rotate(0);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#main .gantt_subjects div > span.expander:after {
  color: var(--icon-color-bg);
}
#main .gantt_subjects div > span.expander:before {
  background: var(--icon_bg-bg);
}
#main .gantt_subjects div > span.expander:hover:after {
  color: var(--color-main-color-text);
}
#main .gantt_subjects div > span.expander:hover:before {
  background: var(--color-main-color);
}
#main .gantt_subjects div .open span.expander {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#main .gantt_subjects div .open span.expander:after {
  color: var(--icon-color-bg);
}
#main .gantt_subjects div .open span.expander:before {
  background: var(--icon_bg-bg);
}
#main .gantt_subjects a,
#main .gantt_subjects span {
  line-height: 16px;
}
#main .gantt_subjects a.icon,
#main .gantt_subjects span.icon {
  padding: 0 0 0 20px;
  height: 16px;
  min-height: 100%;
  position: relative;
  background-image: none !important;
  line-height: 16px;
}
#main .gantt_subjects a.icon:before,
#main .gantt_subjects span.icon:before {
  display: none;
}
#main .gantt_subjects a.icon:after,
#main .gantt_subjects span.icon:after {
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 16px;
  height: 16px;
  margin: 0;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 14px;
  line-height: 16px;
  color: var(--color-dark-grey);
}
/* END TIME GANT */
/* --------------------- https://redmine-evolution.com/ -- */
/* START SETTINGS PAGE */
.controller-projects.action-settings .tab-content > p:nth-of-type(1) {
  margin: 0 0 15px !important;
}
#content .splitcontent {
  overflow: visible;
}
#content .tab-content#tab-content-versions fieldset {
  padding: 52px 20px 20px;
  display: block;
}
#content .tab-content#tab-content-versions fieldset .jcf-select,
#content .tab-content#tab-content-versions fieldset .select2 {
  width: auto;
}
#content .tab-content#tab-content-versions fieldset legend {
  left: 20px;
}
#content .tab-content#tab-content-versions fieldset label {
  margin: 0 10px 0 0;
  font-weight: bold;
}
#content .tab-content#tab-content-versions fieldset input[type="text"] {
  width: auto;
}
#content .tab-content#tab-content-versions fieldset input[type="submit"] {
  background: var(--button-main-bg);
  color: var(--button-main-color);
}
#content .tab-content#tab-content-versions fieldset input[type="submit"]:hover {
  color: var(--button-main-color-hover);
  background: var(--button-main-bg-hover);
}
#content .tab-content#tab-content-versions fieldset input[type="submit"] + a:not(.icon-reload) {
  background: var(--button-bg);
  color: var(--button-color);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#content .tab-content#tab-content-versions fieldset input[type="submit"] + a:not(.icon-reload):before {
  display: none;
}
#content .tab-content#tab-content-versions fieldset input[type="submit"] + a:not(.icon-reload):hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#content .tab-content#tab-content-versions .contextual {
  padding: 0;
  margin: 0;
}
#content .tab-content#tab-content-versions .contextual + p {
  margin: 0 0 15px;
}
#content .tab-content#tab-content-versions .contextual + p a.icon {
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  line-height: var(--icon-smaller-width);
}
#content .tab-content#tab-content-versions .contextual + p a.icon:after {
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
}
#content .tab-content#tab-content-versions form .select2 {
  width: auto !important;
  margin: 5px 0 ;
}
#content .contextual {
  margin: 0;
}
/* START FORUMS */
#tab-content-boards .table-list {
  border: 1px solid var(--border-color);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  margin: 0;
}
#tab-content-boards .table-list-header {
  font-weight: 700;
  text-align: center;
  color: var(--color-main-color);
  padding: 13px 14px;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius) var(--border-radius) 0 0;
  -moz-border-radius: var(--border-radius) var(--border-radius) 0 0;
  border-radius: var(--border-radius) var(--border-radius) 0 0;
}
#tab-content-boards .table-list-row {
  width: 100%;
  display: table;
}
#tab-content-boards .table-list-row:hover .table-list-cell {
  background: var(--all-hover-bg);
}
#tab-content-boards .table-list-row .table-list-cell {
  color: var(--color-main-color);
  padding: 13px 14px !important;
  background: var(--bg-box);
  font-size: 1rem;
  line-height: 1.4;
  font-weight: bold;
  background: var(--bg-fff);
  text-align: left;
  border-top: 1px solid var(--border-color-content);
  -webkit-transition: background var(--time-hover) ease-in-out;
  -moz-transition: background var(--time-hover) ease-in-out;
  -ms-transition: background var(--time-hover) ease-in-out;
  -o-transition: background var(--time-hover) ease-in-out;
  transition: background var(--time-hover) ease-in-out;
}
#tab-content-boards .table-list-row .table-list-cell.name {
  -webkit-border-radius: 0 0 0 var(--border-radius);
  -moz-border-radius: 0 0 0 var(--border-radius);
  border-radius: 0 0 0 var(--border-radius);
}
#tab-content-boards .table-list-row .table-list-cell.buttons {
  text-align: right;
  -webkit-border-radius: 0 0 var(--border-radius) 0;
  -moz-border-radius: 0 0 var(--border-radius) 0;
  border-radius: 0 0 var(--border-radius) 0;
}
/* END FORUMS */
/* START ACTIVITIES */
#tab-content-activities .tabular {
  padding: 0 !important;
}
#tab-content-activities .contextual {
  margin-bottom: 15px !important;
}
#tab-content-activities .list {
  margin: 0 0 20px;
}
/* END ACTIVITIES */
.admin-filter > div {
  display: flex !important;
  width: 100%;
}
#commit-keywords {
  margin: 0 0 20px;
}
/* END SETTINGS PAGE */
#content form .box p label.block {
  margin-top: 10px !important;
  padding: 0;
  display: block;
  width: 100% !important;
  flex: 1 0 auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#content form .box p label.block ~ .info {
  margin-top: 5px !important;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START MRDIA */
@media screen and (max-width: 1450px) {
  #main > #content .splitcontent {
    flex-wrap: wrap;
  }
  #main > #content .splitcontentright,
  #main > #content .splitcontentleft,
  #main > #content #list-right,
  #main > #content #list-left {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
    padding: 0;
  }
  #main > #content .splitcontentright {
    margin-top: 20px;
  }
}
@media screen and (max-width: 1250px) {
  #main > #content .attributes .splitcontentleft,
  #main > #content .attributes .splitcontentright {
    padding: 0;
    margin: 0;
    width: 100% !important;
  }
  #main > #content .jstBlock {
    flex: 1;
    width: 100%;
  }
  #main > #content .jstBlock .tabs {
    height: auto;
    margin: 0;
    padding: 0;
  }
  #main > #content .jstBlock .tabs ul {
    overflow: hidden;
    position: static;
    width: 100%;
    margin: 0;
    padding: 0;
    background: var(--bg-fff);
    min-width: 280px;
    -webkit-border-radius: var(--border-radius-small);
    -moz-border-radius: var(--border-radius-small);
    border-radius: var(--border-radius-small);
  }
  #main > #content .jstBlock .tabs ul li {
    height: auto;
    white-space: inherit;
  }
  #main > #content .jstBlock .jstElements {
    padding: 0;
    height: auto;
  }
}
@media screen and (max-width: 1024px) {
  form[action*="time_entries"] .autoscroll {
    margin: 0 0 10px;
  }
  .flyout-is-active .loggedas.controller-issues.action-show #main #content > .contextual,
  .flyout-is-active .loggedas.controller-messages.action-show #main #content > .contextual,
  .flyout-is-active .loggedas.controller-versions.action-show #main #content > .contextual,
  .flyout-is-active .loggedas.controller-news.action-show #main #content > .contextual,
  .flyout-is-active .loggedas.controller-documents.action-show #main #content > .contextual {
    left: -250px;
  }
  .flyout-is-active .controller-wiki.action-show #main #content > .contextual,
  .flyout-is-active .controller-wiki.action-annotate #main #content > .contextual {
    left: -250px;
  }
  .flyout-is-active .controller-users.action-edit #main #content > .contextual,
  .flyout-is-active .controller-boards.action-index #main #content > .contextual {
    left: -250px;
  }
  .flyout-is-active .loggedas.controller-workflows.action-permissions #main #content > .contextual,
  .flyout-is-active .loggedas.controller-workflows.action-edit #main #content > .contextual {
    left: -250px;
  }
  .controller-wiki.action-show #wrapper,
  .issues-contextual.action-show #wrapper,
  .controller-wiki.action-annotate #wrapper,
  .issues-contextual.action-annotate #wrapper {
    padding-bottom: 48px;
  }
  .controller-wiki.action-show #wrapper3,
  .issues-contextual.action-show #wrapper3,
  .controller-wiki.action-annotate #wrapper3,
  .issues-contextual.action-annotate #wrapper3 {
    margin: 0;
  }
  .controller-wiki.action-show.has-footer #main #content,
  .issues-contextual.action-show.has-footer #main #content,
  .controller-wiki.action-annotate.has-footer #main #content,
  .issues-contextual.action-annotate.has-footer #main #content {
    padding-bottom: 0;
  }
  .controller-wiki.action-show #main #content > .contextual,
  .issues-contextual.action-show #main #content > .contextual,
  .controller-wiki.action-annotate #main #content > .contextual,
  .issues-contextual.action-annotate #main #content > .contextual {
    position: fixed;
    top: auto;
    margin: 0 !important;
    bottom: 0;
    padding: 0;
    left: 0;
    width: 100%;
    background: var(--bg-box);
    height: 50px;
    border-top: 1px solid var(--border-color);
    flex-direction: row;
    align-items: center;
    justify-content: center;
    -webkit-transition: left var(--time-main) ease-in-out;
    -moz-transition: left var(--time-main) ease-in-out;
    -ms-transition: left var(--time-main) ease-in-out;
    -o-transition: left var(--time-main) ease-in-out;
    transition: left var(--time-main) ease-in-out;
  }
  .controller-wiki.action-show #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .issues-contextual.action-show #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .controller-wiki.action-annotate #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .issues-contextual.action-annotate #main #content > .contextual.hidden-link .icon:not(.new-icon) {
    display: none;
  }
  .controller-wiki.action-show #main #content > .contextual .drdn-content,
  .issues-contextual.action-show #main #content > .contextual .drdn-content,
  .controller-wiki.action-annotate #main #content > .contextual .drdn-content,
  .issues-contextual.action-annotate #main #content > .contextual .drdn-content {
    top: auto;
    bottom: 100%;
  }
  .controller-wiki.action-show.flyout-is-active #main #content > .contextual,
  .issues-contextual.action-show.flyout-is-active #main #content > .contextual,
  .controller-wiki.action-annotate.flyout-is-active #main #content > .contextual,
  .issues-contextual.action-annotate.flyout-is-active #main #content > .contextual {
    left: -250px;
  }
  .loggedas.controller-workflows.action-permissions #wrapper,
  .loggedas.controller-workflows.action-edit #wrapper {
    padding-bottom: 48px;
  }
  .loggedas.controller-workflows.action-permissions #wrapper3,
  .loggedas.controller-workflows.action-edit #wrapper3 {
    margin: 0;
  }
  .loggedas.controller-workflows.action-permissions.has-footer #main #content,
  .loggedas.controller-workflows.action-edit.has-footer #main #content {
    padding-bottom: 0;
  }
  .loggedas.controller-workflows.action-permissions #main #content > .contextual,
  .loggedas.controller-workflows.action-edit #main #content > .contextual {
    position: fixed;
    top: auto;
    margin: 0 !important;
    bottom: 0;
    padding: 0;
    left: 0;
    width: 100%;
    background: var(--bg-box);
    height: 50px;
    border-top: 1px solid var(--border-color);
    flex-direction: row;
    align-items: center;
    justify-content: center;
    -webkit-transition: left var(--time-main) ease-in-out;
    -moz-transition: left var(--time-main) ease-in-out;
    -ms-transition: left var(--time-main) ease-in-out;
    -o-transition: left var(--time-main) ease-in-out;
    transition: left var(--time-main) ease-in-out;
  }
  .loggedas.controller-workflows.action-permissions #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .loggedas.controller-workflows.action-edit #main #content > .contextual.hidden-link .icon:not(.new-icon) {
    display: none;
  }
  .loggedas.controller-workflows.action-permissions #main #content > .contextual .drdn .drdn-trigger,
  .loggedas.controller-workflows.action-edit #main #content > .contextual .drdn .drdn-trigger {
    display: none;
  }
  .loggedas.controller-workflows.action-permissions #main #content > .contextual .drdn .drdn-content,
  .loggedas.controller-workflows.action-edit #main #content > .contextual .drdn .drdn-content {
    position: static;
    border: 0;
    padding: 0;
    background: none;
    display: block;
  }
  .loggedas.controller-workflows.action-permissions #main #content > .contextual .drdn .drdn-content .drdn-items,
  .loggedas.controller-workflows.action-edit #main #content > .contextual .drdn .drdn-content .drdn-items {
    padding: 0;
  }
  .loggedas.controller-workflows.action-permissions.flyout-is-active #main #content > .contextual,
  .loggedas.controller-workflows.action-edit.flyout-is-active #main #content > .contextual {
    left: -250px;
  }
  .loggedas.controller-issues.action-show #wrapper,
  .loggedas.controller-messages.action-show #wrapper,
  .loggedas.controller-versions.action-show #wrapper,
  .loggedas.controller-news.action-show #wrapper,
  .loggedas.controller-documents.action-show #wrapper {
    padding-bottom: 48px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .loggedas.controller-issues.action-show #wrapper3,
  .loggedas.controller-messages.action-show #wrapper3,
  .loggedas.controller-versions.action-show #wrapper3,
  .loggedas.controller-news.action-show #wrapper3,
  .loggedas.controller-documents.action-show #wrapper3 {
    margin: 0;
  }
  .loggedas.controller-issues.action-show.has-footer #main #content,
  .loggedas.controller-messages.action-show.has-footer #main #content,
  .loggedas.controller-versions.action-show.has-footer #main #content,
  .loggedas.controller-news.action-show.has-footer #main #content,
  .loggedas.controller-documents.action-show.has-footer #main #content {
    padding-bottom: 0;
  }
  .loggedas.controller-issues.action-show #main #content > .contextual,
  .loggedas.controller-messages.action-show #main #content > .contextual,
  .loggedas.controller-versions.action-show #main #content > .contextual,
  .loggedas.controller-news.action-show #main #content > .contextual,
  .loggedas.controller-documents.action-show #main #content > .contextual {
    position: fixed;
    top: auto;
    margin: 0 !important;
    bottom: 0;
    padding: 0;
    left: 0;
    width: calc(100% + 10px);
    background: var(--bg-box);
    height: 50px;
    border-top: 1px solid var(--border-color);
    flex-direction: row;
    align-items: center;
    justify-content: center;
    -webkit-transition: left var(--time-main) ease-in-out;
    -moz-transition: left var(--time-main) ease-in-out;
    -ms-transition: left var(--time-main) ease-in-out;
    -o-transition: left var(--time-main) ease-in-out;
    transition: left var(--time-main) ease-in-out;
  }
  .loggedas.controller-issues.action-show #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .loggedas.controller-messages.action-show #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .loggedas.controller-versions.action-show #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .loggedas.controller-news.action-show #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .loggedas.controller-documents.action-show #main #content > .contextual.hidden-link .icon:not(.new-icon) {
    display: none;
  }
  .loggedas.controller-issues.action-show #main #content > .contextual .drdn .drdn-trigger,
  .loggedas.controller-messages.action-show #main #content > .contextual .drdn .drdn-trigger,
  .loggedas.controller-versions.action-show #main #content > .contextual .drdn .drdn-trigger,
  .loggedas.controller-news.action-show #main #content > .contextual .drdn .drdn-trigger,
  .loggedas.controller-documents.action-show #main #content > .contextual .drdn .drdn-trigger {
    display: none;
  }
  .loggedas.controller-issues.action-show #main #content > .contextual .drdn .drdn-content,
  .loggedas.controller-messages.action-show #main #content > .contextual .drdn .drdn-content,
  .loggedas.controller-versions.action-show #main #content > .contextual .drdn .drdn-content,
  .loggedas.controller-news.action-show #main #content > .contextual .drdn .drdn-content,
  .loggedas.controller-documents.action-show #main #content > .contextual .drdn .drdn-content {
    position: static;
    border: 0;
    padding: 0;
    background: none;
    display: block;
  }
  .loggedas.controller-issues.action-show #main #content > .contextual .drdn .drdn-content .drdn-items,
  .loggedas.controller-messages.action-show #main #content > .contextual .drdn .drdn-content .drdn-items,
  .loggedas.controller-versions.action-show #main #content > .contextual .drdn .drdn-content .drdn-items,
  .loggedas.controller-news.action-show #main #content > .contextual .drdn .drdn-content .drdn-items,
  .loggedas.controller-documents.action-show #main #content > .contextual .drdn .drdn-content .drdn-items {
    padding: 0;
  }
  .loggedas.controller-issues.action-show.flyout-is-active #main #content > .contextual,
  .loggedas.controller-messages.action-show.flyout-is-active #main #content > .contextual,
  .loggedas.controller-versions.action-show.flyout-is-active #main #content > .contextual,
  .loggedas.controller-news.action-show.flyout-is-active #main #content > .contextual,
  .loggedas.controller-documents.action-show.flyout-is-active #main #content > .contextual {
    left: -250px;
  }
  .controller-boards.action-index #wrapper,
  .controller-users.action-edit #wrapper {
    padding-bottom: 48px;
  }
  .controller-boards.action-index #wrapper3,
  .controller-users.action-edit #wrapper3 {
    margin: 0;
  }
  .controller-boards.action-index.has-footer #main #content,
  .controller-users.action-edit.has-footer #main #content {
    padding-bottom: 0;
  }
  .controller-boards.action-index #main #content > .contextual,
  .controller-users.action-edit #main #content > .contextual {
    position: fixed;
    top: auto;
    margin: 0 !important;
    bottom: 0;
    padding: 0;
    left: 0;
    width: 100%;
    background: var(--bg-box);
    height: 50px;
    border-top: 1px solid var(--border-color);
    flex-direction: row;
    align-items: center;
    justify-content: center;
    -webkit-transition: left var(--time-main) ease-in-out;
    -moz-transition: left var(--time-main) ease-in-out;
    -ms-transition: left var(--time-main) ease-in-out;
    -o-transition: left var(--time-main) ease-in-out;
    transition: left var(--time-main) ease-in-out;
  }
  .controller-boards.action-index #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .controller-users.action-edit #main #content > .contextual.hidden-link .icon:not(.new-icon) {
    display: none;
  }
  .controller-boards.action-index #main #content > .contextual .drdn .drdn-trigger,
  .controller-users.action-edit #main #content > .contextual .drdn .drdn-trigger {
    display: none;
  }
  .controller-boards.action-index #main #content > .contextual .drdn .drdn-content,
  .controller-users.action-edit #main #content > .contextual .drdn .drdn-content {
    position: static;
    border: 0;
    padding: 0;
    background: none;
    display: block;
  }
  .controller-boards.action-index #main #content > .contextual .drdn .drdn-content .drdn-items,
  .controller-users.action-edit #main #content > .contextual .drdn .drdn-content .drdn-items {
    padding: 0;
  }
  .controller-boards.action-index.flyout-is-active #main #content > .contextual,
  .controller-users.action-edit.flyout-is-active #main #content > .contextual {
    left: -250px;
  }
  #main > #content {
    padding-bottom: 0;
  }
  #main > #content > h2,
  #main > #content #content > h2,
  #main > #content #query_form > h2,
  #main > #content .top-question h2 {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  #main > #content > .contextual,
  #main > #content #content > .contextual {
    right: 30px;
  }
}
@media screen and (max-width: 1024px) {
  #content .tab-content#tab-content-versions form .select2 {
    width: 100% !important;
    margin: 0 0 10px !important;
  }
  #main > #content > .contextual:not(.next-prev-links),
  #main > #content #content > .contextual:not(.next-prev-links) {
    right: 10px;
  }
  .has-footer #main > #content {
    padding-bottom: 0;
  }
  .controller-welcome.action-index #main > #content {
    padding: 0 10px 20px;
  }
  .controller-welcome.action-index #main > #content .box {
    padding: 15px 10px;
  }
  .controller-gantts.action-show #query_form[action*="gantt"] .holder-filters .in-filter {
    margin: 0;
    padding: 0;
  }
  .tabular label,
  .tabular.settings label {
    padding: 0;
    margin: 0 0 5px;
  }
  #wrapper #ajax-indicator {
    width: 100%;
    left: 0;
  }
  input[type='checkbox'] {
    height: 18px !important;
    width: 18px !important;
    margin: 0 5px 0 0 !important;
  }
  #main > #content {
    padding-left: 10px;
    padding-right: 10px;
  }
  #main > #content:after {
    display: none;
  }
  #main > #content span.pagination {
    position: static;
  }
  #main > #content .splitcontentleft,
  #main > #content #list-left {
    margin: 0 0 10px;
  }
  #main > #content .splitcontentright,
  #main > #content #list-right {
    margin: 0;
  }
  #main > #content > .contextual {
    right: 10px;
    display: flex;
    justify-content: flex-end;
  }
  #main > #content > .contextual a {
    border: none;
  }
  #main > #content > .contextual .drdn {
    padding: 0;
    margin: 0 0 0 5px;
    border: 0;
  }
  #main > #content > h2,
  #main > #content #query_form > h2,
  #main > #content #query_form[action*='agile/board'] h2 {
    background-color: var(--bg-box);
    background-position: 10px 50%;
    background-size: 25px 25px;
    margin: 0 -10px 20px;
    padding: 15px 20px 15px 45px;
    width: calc(100% + 20px);
    display: flex;
    align-items: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main > #content .tab-content #activity dl dt {
    padding: 15px 10px 0;
  }
  #main > #content .tab-content #activity dl dd {
    padding: 0 10px;
  }
  #content .splitcontentleft .wiki {
    padding: 20px;
    margin: 0 0 10px;
  }
  #content .box {
    padding: 20px;
    margin: 0 0 20px;
  }
  #content .box.settings .box {
    padding-left: 0;
    padding-right: 0;
  }
  #content .tab-content#tab-content-versions fieldset {
    padding: 52px 20px 20px;
    display: block;
  }
  #content .tab-content#tab-content-versions fieldset .jcf-select,
  #content .tab-content#tab-content-versions fieldset .select2 {
    width: 100%;
    margin: 0 0 10px !important;
  }
  #content .tab-content#tab-content-versions fieldset legend {
    left: 20px;
  }
  #content .tab-content#tab-content-versions fieldset label {
    width: 100%;
    margin: 0 0 5px 0 !important;
    display: block;
  }
  #content .tab-content#tab-content-versions fieldset input[type="submit"] {
    margin-left: 0 !important;
  }
  #content .tab-content#tab-content-versions fieldset input[type="text"] {
    width: 100%;
    margin: 0 0 10px !important;
  }
  #main .tab-content table .icon {
    color: var(--icon-color);
  }
  #main .tab-content table .icon:before {
    display: none;
  }
  #main > #content + #history {
    padding: 10px;
    -webkit-box-shadow: var(--box-shadow-null);
    -moz-box-shadow: var(--box-shadow-null);
    box-shadow: var(--box-shadow-null);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
}
@media screen and (max-width: 700px) {
  #content #query_form[action*="gantt"] > .buttons,
  #content #query_form[action*="gantt"] #query_form_with_buttons > .buttons {
    overflow: hidden;
    width: 100%;
    padding: 10px 0 0;
    margin: 0 0 20px;
    flex-wrap: wrap;
    max-width: 100%;
  }
  #content #query_form[action*="gantt"] > .buttons .jcf-select,
  #content #query_form[action*="gantt"] #query_form_with_buttons > .buttons .jcf-select,
  #content #query_form[action*="gantt"] > .buttons .select2,
  #content #query_form[action*="gantt"] #query_form_with_buttons > .buttons .select2 {
    margin: 10px 0 !important;
    width: 100%;
    flex: 1 0 auto;
    max-width: 100%;
  }
  #content #query_form[action*="gantt"] > .buttons .jcf-select:last-of-type,
  #content #query_form[action*="gantt"] #query_form_with_buttons > .buttons .jcf-select:last-of-type,
  #content #query_form[action*="gantt"] > .buttons .select2:last-of-type,
  #content #query_form[action*="gantt"] #query_form_with_buttons > .buttons .select2:last-of-type {
    margin: 0 0 10px !important;
  }
  #content #query_form[action*="gantt"] > .buttons .icon-checked,
  #content #query_form[action*="gantt"] #query_form_with_buttons > .buttons .icon-checked {
    margin: 0 !important;
  }
  #content #query_form[action*="gantt"] > .buttons #months,
  #content #query_form[action*="gantt"] #query_form_with_buttons > .buttons #months {
    width: 100%;
    flex: 1;
  }
}
@media screen and (max-width: 650px) {
  .controller-timelog.action-new form[action*="time_entries"] .autoscroll table {
    margin: 10px 0 0;
  }
  .controller-timelog.action-new form[action*="time_entries"] .autoscroll table tr {
    flex-flow: column;
  }
  .controller-timelog.action-new form[action*="time_entries"] .autoscroll table th {
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0 0 5px;
  }
  .controller-timelog.action-new form[action*="time_entries"] .autoscroll table td {
    width: 100%;
    margin: 0;
  }
  .controller-timelog.action-new form[action*="time_entries"] .autoscroll table#issuelogtable tr {
    margin: 10px 0 0;
  }
  .controller-timelog.action-new form[action*="time_entries"] .autoscroll table#issuelogtable tr:first-child {
    margin: 0;
  }
  .controller-timelog.action-new form[action*="time_entries"] .jcf-select {
    min-width: 100px;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  #main > #content #content > .contextual:not(.next-prev-links),
  #main > #content > .contextual:not(.next-prev-links) {
    top: 12px;
  }
  .has-footer #main > #content {
    padding-bottom: 20px !important;
  }
  #main > #content {
    padding-bottom: 20px !important;
  }
  #main > #content:after {
    display: none;
  }
  #main > #content h3 {
    margin: 0 0 15px;
  }
  #main > #content > h2,
  #main > #content #query_form > h2,
  #main > #content #query_form[action*='agile/board'] h2 {
    margin: 0 -10px 20px;
    font-size: 1.1428rem;
    line-height: 1.4;
  }
  #main > #content #query_form > h2 .live_search {
    float: none;
    display: block;
    margin: 15px 0 0;
    max-width: inherit;
    position: static;
    overflow: hidden;
    width: 100%;
  }
  #main > #content #query_form > h2 .live_search input[type="text"] {
    margin: 0 !important;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    min-width: 100%;
  }
  #main > #content form .tabular p,
  #main > #content form .box p {
    padding: 0;
  }
  #main > #content form .tabular p label:first-child,
  #main > #content form .box p label:first-child {
    margin: 0 0 5px 0 !important;
    padding: 0;
    width: 100%;
    float: none;
    display: block;
  }
  #main > #content form .tabular p input[type="text"]:not(.hasDatepicker),
  #main > #content form .box p input[type="text"]:not(.hasDatepicker) {
    min-width: 100%;
    margin-left: 0 !important;
  }
  #main > #content form .tabular p input[type="text"]:not(.hasDatepicker) ~ input[type="text"],
  #main > #content form .box p input[type="text"]:not(.hasDatepicker) ~ input[type="text"] {
    margin-top: 10px !important;
  }
  #main > #content form .tabular p input[type="text"]:not(.hasDatepicker) ~ a,
  #main > #content form .box p input[type="text"]:not(.hasDatepicker) ~ a {
    margin-top: 10px !important;
    margin-left: 0 !important;
  }
  #main > #content form .tabular p input[type="text"]:not(.hasDatepicker) ~ .jcf-select,
  #main > #content form .box p input[type="text"]:not(.hasDatepicker) ~ .jcf-select {
    margin: 10px 0 0 !important;
  }
  #main > #content form .tabular p #settings_invoices_paypal_account,
  #main > #content form .box p #settings_invoices_paypal_account {
    margin-top: 10px;
  }
  #main > #content form.tabular {
    padding: 5px 10px !important;
    display: block;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main > #content .box {
    padding: 15px 10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    margin-left: -10px !important;
    margin-right: -10px !important;
  }
  #main > #content .box.tabular .tabular,
  #main > #content .box.tabular fieldset {
    margin-left: -10px;
    margin-right: -10px;
    padding: 15px 10px !important;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #main > #content fieldset.box {
    padding: 15px 10px 15px;
  }
  #main > #content fieldset.box#tracker_project_ids {
    margin: 20px 0 0;
  }
  #main > #content fieldset.box legend {
    position: relative;
    top: 0;
    left: 0;
    padding: 10px;
    display: block;
    background: var(--bg-mobile);
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    height: auto;
  }
  #main > #content fieldset.box .box + .box {
    margin-top: 20px !important;
  }
  #main > #content .contextual,
  #main > #content #content > .contextual {
    top: 11px;
  }
  #main > #content .contextual.next-prev-links,
  #main > #content #content > .contextual.next-prev-links {
    top: -10px;
  }
  #main .attachments_form .attachments_fields > span {
    padding: 0 0 10px;
    border-bottom: 1px solid var(--border-color);
    flex-flow: column;
    align-items: flex-start;
  }
  #main .attachments_form .attachments_fields > span input[type="text"] {
    min-width: 100%;
    margin-left: 0 !important;
  }
  #main .attachments_form .attachments_fields > span input[type="text"] ~ input[type="text"] {
    margin-top: 10px !important;
  }
  #main .attachments_form .attachments_fields > span input[type="text"] ~ a {
    margin-top: 10px !important;
    margin-left: 0 !important;
  }
  #content .splitcontentleft .wiki {
    padding: 15px 10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    margin-left: -10px !important;
    margin-right: -10px !important;
  }
  #content form #issue_estimated_hours,
  #content form #time_entry_hours {
    margin: 0 0 5px;
  }
  #content div.box .query_sort_criteria_count {
    margin: 5px 0 !important;
  }
  #content div.box > fieldset.tabular,
  #content div.box > fieldset,
  #content div.box > .tabular {
    padding-top: 15px;
  }
  #content div.box > fieldset.tabular legend,
  #content div.box > fieldset legend,
  #content div.box > .tabular legend {
    position: relative;
    top: 0 !important;
    left: 0 !important;
    padding: 10px 0;
    display: block;
    width: 100%;
    margin: 0 !important;
    z-index: 2;
  }
  #content div.box > fieldset.tabular legend:before,
  #content div.box > fieldset legend:before,
  #content div.box > .tabular legend:before {
    content: '';
    display: block;
    clear: both;
    position: absolute;
    top: 0;
    left: -10px;
    width: calc(100% + 20px);
    height: 100%;
    background: var(--bg-mobile);
    z-index: -1;
  }
  #content .tab-content fieldset {
    padding: 15px 10px 15px;
  }
  #content .tab-content fieldset:last-child {
    margin-bottom: 0;
  }
  #content .tab-content fieldset legend {
    position: relative;
    top: 0 !important;
    left: 0 !important;
    padding: 10px 0;
    display: block;
    width: 100%;
    z-index: 2;
  }
  #content .tab-content fieldset legend:before {
    content: '';
    display: block;
    clear: both;
    position: absolute;
    top: 0;
    left: -10px;
    width: calc(100% + 20px);
    height: 100%;
    background: var(--bg-mobile);
    z-index: -1;
  }
  #content .tab-content#tab-content-versions fieldset {
    padding: 15px 10px 15px;
  }
  #content form[action*="time_entries/report"] .tabs + p {
    flex-wrap: wrap;
  }
  #content form[action*="time_entries/report"] .tabs + p .jcf-select {
    width: 100%;
    flex: 1 0 auto;
    margin: 5px 0 10px !important;
  }
  #content .tab-content#tab-content-versions fieldset:not(.tol) {
    padding: 20px 10px 15px;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #content .tab-content#tab-content-versions fieldset:not(.tol) legend {
    left: 10px;
    top: 10px;
  }
  #content div.box > .tabular > fieldset {
    padding: 15px 10px !important;
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 0 !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    width: calc(100% + 20px);
  }
  #content div.box > .tabular > fieldset legend {
    display: flex;
    position: relative;
    left: 0 !important;
    top: 0;
    margin: 0 !important;
    width: 100%;
    padding: 10px 0;
    z-index: 2;
  }
  #content div.box > .tabular > fieldset legend:before {
    content: '';
    display: block;
    clear: both;
    position: absolute;
    top: 0;
    left: -10px;
    width: calc(100% + 20px);
    height: 100%;
    background: var(--bg-mobile);
    z-index: -1;
  }
  #content div.box fieldset {
    padding: 15px 10px !important;
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 0 !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    width: calc(100% + 20px);
  }
  #content div.box fieldset legend {
    display: flex;
    position: relative;
    left: 0 !important;
    top: 0;
    margin: 0 !important;
    width: 100%;
    padding: 10px 0;
    z-index: 2;
  }
  #content div.box fieldset legend:before {
    content: '';
    display: block;
    clear: both;
    position: absolute;
    top: 0;
    left: -10px;
    width: calc(100% + 20px);
    height: 100%;
    background: var(--bg-mobile);
    z-index: -1;
  }
  #main #content .tab-content #activity dl dt,
  #main #content .splitcontentright #activity dl dt {
    background: var(--bg-fff);
  }
  #main #content .tab-content #activity dl dd,
  #main #content .splitcontentright #activity dl dd {
    background: var(--bg-fff);
    margin-bottom: 0 !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #main #content .tab-content #activity dl .time,
  #main #content .splitcontentright #activity dl .time {
    background: var(--bg-box);
  }
}
@media screen and (max-width: 480px) {
  #content #tab-content-groups .box > p a {
    display: block;
    width: 100%;
    margin: 0;
    text-align: center;
  }
}
/* START REVO BREADCRUMBS */
#main > #content {
  margin-top: 41px;
}
#main > #content > h2 .revo-breadcrumbs {
  font-size: 0.85714286rem;
  line-height: 1.4;
}
#main > #content .revo-breadcrumbs {
  display: none;
  width: 100%;
  min-width: 100%;
  order: 1;
  padding: 0;
}
#main > #content .revo-icon-info {
  margin: 0 0 0 10px;
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  min-height: var(--icon-width-small);
  min-width: var(--icon-width-small);
  -webkit-border-radius: var(--border-radius-midle);
  -moz-border-radius: var(--border-radius-midle);
  border-radius: var(--border-radius-midle);
}
#main > #content .revo-icon-info:before {
  -webkit-border-radius: var(--border-radius-midle);
  -moz-border-radius: var(--border-radius-midle);
  border-radius: var(--border-radius-midle);
}
#main > #content .revo-icon-info:after {
  -webkit-border-radius: var(--border-radius-midle);
  -moz-border-radius: var(--border-radius-midle);
  border-radius: var(--border-radius-midle);
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
}
#main > #content .open .revo-breadcrumbs {
  display: block;
}
#main > #content .open .revo-icon-info {
  color: var(--icon_color_active) !important;
}
#main > #content .open .revo-icon-info:active {
  color: var(--icon_color_active) !important;
}
#main > #content .open .revo-icon-info:before {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
@media screen and (max-width: 1024px) {
  #main > #content {
    margin-top: 0;
  }
  #main > #content > .revo-breadcrumbs {
    order: 2;
    padding: 0 0 10px;
  }
}
#main td.username img.gravatar {
  vertical-align: center;
  width: 30px;
  height: 30px;
}
/* END REVO BREADCRUMBS */
@media screen and (max-width: 480px) {
  .controller-timelog.action-report #content form .select2 {
    margin-left: 0 !important;
    width: 100% !important;
    min-width: 100% !important;
  }
  .controller-timelog.action-report #content form .icon-reload,
  .controller-timelog.action-report #content form label[for="criterias"] {
    margin-left: 0 !important;
  }
  .controller-timelog.action-report #content form .icon-reload {
    margin-top: 5px !important;
  }
}
/* --------------------- https://redmine-evolution.com/ -- */
#contact_list {
  overflow-x: auto;
}
#main table.cal {
  margin: 16px 0 0;
  border-color: var(--border-color-content);
  -webkit-border-radius: var(--border-radius) var(--border-radius) 0 0;
  -moz-border-radius: var(--border-radius) var(--border-radius) 0 0;
  border-radius: var(--border-radius) var(--border-radius) 0 0;
}
#block-calendar #main table.cal {
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#block-calendar #main table.cal td {
  border-bottom: none;
}
#block-calendar #main table.cal td:nth-child(2) {
  -webkit-border-bottom-left-radius: var(--border-radius);
  -moz-border-bottom-left-radius: var(--border-radius);
  border-bottom-left-radius: var(--border-radius);
}
#block-calendar #main table.cal td:last-child {
  border-right: none;
  -webkit-border-bottom-right-radius: var(--border-radius);
  -moz-border-bottom-right-radius: var(--border-radius);
  border-bottom-right-radius: var(--border-radius);
}
#main table.cal .week-number {
  display: none;
}
#main table.cal thead th {
  font-size: 1rem;
  line-height: 1.4;
  font-weight: 700;
  padding: 15px 10px;
  color: var(--color-main-color);
  background: var(--bg-box);
  border-left: 1px solid var(--border-color-content);
}
#main table.cal thead th:nth-child(2) {
  -webkit-border-top-left-radius: var(--border-radius);
  -moz-border-top-left-radius: var(--border-radius);
  border-top-left-radius: var(--border-radius);
  border-left: 0;
}
#main table.cal thead th:last-child {
  border-right: none;
  -webkit-border-top-right-radius: var(--border-radius);
  -moz-border-top-right-radius: var(--border-radius);
  border-top-right-radius: var(--border-radius);
}
#main table.cal tbody td:nth-child(2) {
  border-left: 0;
}
#main table.cal tr td:last-child {
  border-right: 0;
}
#main table.cal td {
  min-width: 150px;
  font-size: 0.85714286rem;
  line-height: 1.1;
  padding: 0;
  border-color: var(--border-color-content);
}
#main table.cal td .day-num {
  padding: 6px;
  margin: 0 0 20px;
  font-size: 13px !important;
  line-height: 16px !important;
  font-weight: 600;
  color: var(--color-main-color);
}
#main table.cal td .day-num.odd {
  font-weight: 400;
  color: inherit;
}
#main table.cal td .icon {
  padding: 0 0 0 30px;
}
#main table.cal td .icon.icon-package {
  color: var(--icon-color-bg);
  font-size: 1rem;
  line-height: var(--icon-smaller-width);
  font-weight: bold;
}
#main table.cal td .icon.icon-package:after {
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  color: var(--icon-color-bg);
}
#main table.cal td .icon.icon-package:before {
  background: var(--icon_bg-bg);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main table.cal td .icon.icon-package:hover:after {
  color: var(--icon-color-hover-bg);
}
#main table.cal td .icon.icon-package:hover:before {
  background: var(--icon_bg_hover-bg);
}
#main table.cal .odd {
  background: var(--bg-fff);
}
#main table.cal .tooltip {
  opacity: 1;
  font-weight: 600;
  display: block !important;
}
#main table.cal .tooltip:hover {
  z-index: 2 !important;
}
#main table.cal div.issue {
  margin: 4px 0 0 !important;
  padding: 14px 10px 10px 55px !important;
  position: relative;
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  border-radius: 0 !important;
  border-left: 4px solid !important;
  background: var(--bg-fff) !important;
}
#main table.cal div.issue:first-child {
  margin: 0 !important;
}
#main table.cal div.issue.priority-1 {
  border-color: var(--priority-1) !important;
}
#main table.cal div.issue.priority-2 {
  border-color: var(--priority-2) !important;
}
#main table.cal div.issue.priority-3 {
  border-color: var(--priority-3) !important;
}
#main table.cal div.issue.priority-4 {
  border-color: var(--priority-4) !important;
}
#main table.cal div.issue.priority-5 {
  border-color: var(--priority-5) !important;
}
#main table.cal div.issue:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -1;
  opacity: 0.2;
}
#main table.cal div.issue.priority-1:before {
  background: var(--priority-1) !important;
}
#main table.cal div.issue.priority-2:before {
  background: var(--priority-2) !important;
}
#main table.cal div.issue.priority-3:before {
  background: var(--priority-3) !important;
}
#main table.cal div.issue.priority-4:before {
  background: var(--priority-4) !important;
}
#main table.cal div.issue.priority-5:before {
  background: var(--priority-5) !important;
}
#main table.cal div.issue:after {
  position: absolute;
  top: 50%;
  left: 5px;
  -webkit-transform: translateY(-50%) scale(0.8);
  -moz-transform: translateY(-50%) scale(0.8);
  -ms-transform: translateY(-50%) scale(0.8);
  -o-transform: translateY(-50%) scale(0.8);
  transform: translateY(-50%) scale(0.8);
  width: 40px !important;
  height: 40px !important;
  background-color: var(--bg-fff);
  display: block;
  clear: both;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 40px;
  line-height: 1;
}
#main table.cal div.issue.priority-1:after {
  color: var(--priority-1) !important;
}
#main table.cal div.issue.priority-2:after {
  color: var(--priority-2) !important;
}
#main table.cal div.issue.priority-3:after {
  color: var(--priority-2) !important;
}
#main table.cal div.issue.priority-4:after {
  color: var(--priority-4) !important;
}
#main table.cal div.issue.priority-5:after {
  color: var(--priority-5) !important;
}
#main table.cal div.issue a {
  font-size: 1rem;
  line-height: 1.1;
  font-weight: 600;
  padding: 0 !important;
  background: none;
  margin: 0 0 3px;
  color: var(--color-link);
}
#main table.cal div.issue a.priority-1 {
  color: var(--priority-1) !important;
}
#main table.cal div.issue a.priority-1 ~ a {
  color: var(--priority-1) !important;
}
#main table.cal div.issue a.priority-2 {
  color: var(--priority-2) !important;
}
#main table.cal div.issue a.priority-2 ~ a {
  color: var(--priority-2) !important;
}
#main table.cal div.issue a.priority-3 {
  color: var(--priority-3) !important;
}
#main table.cal div.issue a.priority-3 ~ a {
  color: var(--priority-3) !important;
}
#main table.cal div.issue a.priority-4 {
  color: var(--priority-4) !important;
}
#main table.cal div.issue a.priority-4 ~ a {
  color: var(--priority-4) !important;
}
#main table.cal div.issue a.priority-5 {
  color: var(--priority-5) !important;
}
#main table.cal div.issue a.priority-5 ~ a {
  color: var(--priority-5) !important;
}
#main table.cal div.issue > a {
  display: block;
}
#main table.cal div.issue .tip {
  position: absolute;
  top: 20px !important;
  left: -4px !important;
  right: 0 !important;
  width: auto !important;
  z-index: 5;
  box-sizing: border-box;
  padding: 10px !important;
  font-size: 0.85714286rem !important;
  line-height: 1.1;
  border: none;
  border-left: 4px solid;
  font-weight: normal;
  display: block;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
  -webkit-box-shadow: var(--small-box-shadow);
  -moz-box-shadow: var(--small-box-shadow);
  box-shadow: var(--small-box-shadow);
  color: var(--text-color-main);
}
#main table.cal div.issue .tip:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.2;
  z-index: -1;
}
#main table.cal div.issue .tip strong {
  font-weight: 600;
}
#main table.cal div.issue .tip .issue {
  font-weight: 600;
  padding: 4px 0 0 45px !important;
  display: block;
}
#main table.cal div.issue:hover .tip {
  opacity: 1;
  visibility: visible;
  top: 0 !important;
}
#main table.cal div.issue.priority-1 .tip {
  border-color: var(--priority-1) !important;
}
#main table.cal div.issue.priority-2 .tip {
  border-color: var(--priority-2) !important;
}
#main table.cal div.issue.priority-3 .tip {
  border-color: var(--priority-3) !important;
}
#main table.cal div.issue.priority-4 .tip {
  border-color: var(--priority-4) !important;
}
#main table.cal div.issue.priority-5 .tip {
  border-color: var(--priority-5) !important;
}
#main table.cal div.issue.priority-1 .tip:before {
  background: var(--priority-1) !important;
}
#main table.cal div.issue.priority-2 .tip:before {
  background: var(--priority-2) !important;
}
#main table.cal div.issue.priority-3 .tip:before {
  background: var(--priority-3) !important;
}
#main table.cal div.issue.priority-4 .tip:before {
  background: var(--priority-4) !important;
}
#main table.cal div.issue.priority-5 .tip:before {
  background: var(--priority-5) !important;
}
#main table.cal tr > td:last-child div.issue .tip {
  left: auto !important;
  right: 0 !important;
}
#main table.cal tbody tr:last-child td div.issue .tip {
  top: auto !important;
  bottom: 20px !important;
}
#main table.cal tbody tr:last-child td div.issue:hover .tip {
  top: auto !important;
  bottom: 0 !important;
}
#main table.cal tbody td:last-child div.issue:hover .tip,
#main table.cal tbody td:last-child div.issue .tip {
  left: auto !important;
  right: 0 !important;
}
#content .legend.cal {
  display: flex;
  flex-wrap: wrap;
  background: var(--bg-box);
  padding: 15px;
  margin: -1px 0 0 1px;
  border: 1px solid var(--border-color-content);
  border-top: none;
  -webkit-border-radius: 0 0 var(--border-radius) var(--border-radius);
  -moz-border-radius: 0 0 var(--border-radius) var(--border-radius);
  border-radius: 0 0 var(--border-radius) var(--border-radius);
  width: calc(100% - 2px);
}
#content .legend.cal span {
  padding: 8px 20px 8px 45px !important;
  position: relative;
  background: none !important
  ;
}
#content .legend.cal span:after {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%) scale(0.8);
  -moz-transform: translateY(-50%) scale(0.8);
  -ms-transform: translateY(-50%) scale(0.8);
  -o-transform: translateY(-50%) scale(0.8);
  transform: translateY(-50%) scale(0.8);
  width: 40px !important;
  height: 40px !important;
  display: block;
  clear: both;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  background-color: var(--icon_bg-bg);
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 40px;
  line-height: 1;
}
#content .legend.cal span.starting:after {
  color: var(--priority-2);
}
#content .legend.cal span.ending:after {
  color: var(--priority-5);
}
#content .legend.cal span.starting.ending:after {
  color: var(--priority-4);
}
.controller-calendars #query_form_with_buttons .holder-filters {
  position: relative;
  border: none;
  padding-bottom: 0;
}
.controller-calendars #query_form_with_buttons .buttons,
.controller-calendars #query_form .buttons {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0 70px 0 0;
  max-width: 570px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-calendars label[for="month"] {
  margin: 0 10px 0 0;
}
.controller-calendars #main > #content p.contextual {
  font-size: 0;
  line-height: 0;
  position: absolute;
  bottom: 1px;
  right: 0;
}
.controller-calendars #main > #content p.contextual a[accesskey="p"],
.controller-calendars #main > #content p.contextual a[accesskey="n"] {
  display: inline-block;
  vertical-align: top;
  height: var(--icon-width);
  width: var(--icon-width);
  position: relative;
  text-indent: -99999px;
  color: var(--icon-color);
  margin: 0 0 0 5px;
}
.controller-calendars #main > #content p.contextual a[accesskey="p"]:after,
.controller-calendars #main > #content p.contextual a[accesskey="n"]:after {
  text-indent: 0;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: 1;
}
.controller-calendars #main > #content p.contextual a[accesskey="p"]:before,
.controller-calendars #main > #content p.contextual a[accesskey="n"]:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  transform: scale(0);
  z-index: 1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.controller-calendars #main > #content p.contextual a[accesskey="p"]:hover,
.controller-calendars #main > #content p.contextual a[accesskey="n"]:hover {
  color: var(--icon-color-hover);
}
.controller-calendars #main > #content p.contextual a[accesskey="p"]:hover:before,
.controller-calendars #main > #content p.contextual a[accesskey="n"]:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
/* --------------------- WEBFULLSET.COM -- */
/* START MEDIA*/
@media screen and (max-width: 1500px) {
  #main table.cal div.issue {
    padding: 30px 10px 10px 10px !important;
  }
  #main table.cal div.issue:after {
    top: 15px;
    width: var(--icon-width-small) !important;
    height: var(--icon-width-small) !important;
    font-size: var(--icon-font-size-small);
    line-height: 1;
  }
  #main table.cal div.issue .tip {
    padding: 10px;
    width: 270px !important;
  }
  #main table.cal div.issue .tip .issue {
    padding: 0 !important;
  }
  #main table.cal div.issue .tip > * {
    text-overflow: ellipsis;
  }
}
@media screen and (max-width: 1024px) {
  #content .legend.cal span {
    padding: 0 10px 0 25px !important;
    font-size: 0.85714286rem;
    line-height: 1.42857143rem;
  }
  #content .legend.cal span:after {
    width: 20px !important;
    height: 20px !important;
    font-size: 20px;
    line-height: 1;
  }
}
@media screen and (max-width: 1024px) {
  #main table.cal {
    -webkit-box-shadow: var(--box-shadow-null);
    -moz-box-shadow: var(--box-shadow-null);
    box-shadow: var(--box-shadow-null);
    border: 1px solid var(--border-color);
    margin-bottom: 20px;
  }
  .controller-calendars #main > #content p.contextual {
    font-size: 0px;
    line-height: 0px;
    position: relative;
    top: 0;
    z-index: 2;
  }
  .controller-calendars #main > #content p.contextual a[accesskey="p"],
  .controller-calendars #main > #content p.contextual a[accesskey="n"] {
    color: var(--icon-color);
  }
  .controller-calendars #main > #content p.contextual a[accesskey="p"]:before,
  .controller-calendars #main > #content p.contextual a[accesskey="n"]:before {
    display: none;
  }
  #content .legend.cal {
    border: 1px solid var(--border-color-content);
    padding: 10px;
    margin: 0;
    width: 100%;
    -webkit-border-radius: var(--border-radius);
    -moz-border-radius: var(--border-radius);
    border-radius: var(--border-radius);
  }
  #content .legend.cal span {
    padding: 0 10px 0 25px !important;
    font-size: 0.85714286rem;
    line-height: 1.42857143rem;
    display: block;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin: 5px 0 0;
  }
  #content .legend.cal span:first-child {
    margin: 0;
  }
}
@media screen and (max-width: 650px) {
  #contact_list {
    overflow-x: auto;
  }
  .controller-calendars #main > #content p.contextual {
    align-items: flex-end;
    bottom: 0;
  }
  .controller-calendars #main > #content form .buttons .select2 {
    min-width: 100%;
    flex: 1 0 0;
    margin: 10px 0 !important;
  }
  .controller-calendars #query_form_with_buttons .buttons {
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 100%;
    padding: 0;
  }
  .controller-calendars #query_form_with_buttons .buttons label {
    margin: 0 !important;
  }
  .controller-calendars #query_form_with_buttons .buttons .jcf-select {
    width: 100%;
    flex: 1 0 auto;
    margin: 5px 0 10px !important;
  }
  .controller-calendars #query_form_with_buttons .buttons a {
    margin: 0 5px 0 0 !important;
  }
  #main form[action*="calendar"] {
    overflow-x: auto;
  }
  #main table.cal {
    -webkit-box-shadow: var(--box-shadow-null);
    -moz-box-shadow: var(--box-shadow-null);
    box-shadow: var(--box-shadow-null);
    border: 1px solid var(--border-color);
  }
  #main table.cal td {
    min-width: 200px;
  }
  #main #content .legend.cal {
    margin: -1px -10px 0;
    width: calc(100% + 20px);
    border-right: 0;
    border-left: 0;
    border-top: 1px solid var(--border-color);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
}
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ACTIVITY */
.controller-activities #main #content {
  padding-left: 0;
  padding-right: 0;
  display: block !important;
}
.controller-activities #main #content > h2 {
  width: 100%;
  margin: 0 0 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-activities #main #content p.other-formats {
  margin: 0;
}
#main > #content #my-page div#activity dl dt {
  background: var(--bg-fff);
  border: 0;
}
#main > #content #my-page div#activity dl dd {
  background: var(--bg-fff);
}
#main > #content #my-page div#activity dl .time {
  background: var(--bg-box);
}
#main > #content div#activity {
  overflow: hidden;
  width: 100%;
  margin: 0;
  position: relative;
}
#main > #content div#activity:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 18px;
  height: 4px;
  background: var(--color-main-color);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#main > #content div#activity p.subtitle {
  margin: -15px 0 15px 10px;
}
#main > #content div#activity .holder-activity {
  height: 0;
  width: 100%;
  overflow: hidden;
}
#main > #content div#activity h3,
#main > #content div#activity h4 {
  font-size: 1.1428rem;
  line-height: 1.4;
  font-weight: 700;
  padding: 2px 0 15px 30px;
  margin: 0 !important;
  cursor: pointer;
  position: relative;
  border: none;
  background: none;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main > #content div#activity h3:first-child:before,
#main > #content div#activity h4:first-child:before {
  height: calc(100% - 3px);
}
#main > #content div#activity h3:after,
#main > #content div#activity h4:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0px;
  width: 14px;
  height: 14px;
  border: 2px solid var(--color-main-color-activety);
  background: var(--bg-box-activety);
  -webkit-transition: border-color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  -moz-transition: border-color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  -ms-transition: border-color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  -o-transition: border-color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  transition: border-color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
}
#main > #content div#activity h3:before,
#main > #content div#activity h4:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  bottom: 0;
  left: 8px;
  width: 2px;
  height: 100%;
  background: var(--color-main-color-activety);
  -webkit-transition: background var(--time-hover) ease-in-out;
  -moz-transition: background var(--time-hover) ease-in-out;
  -ms-transition: background var(--time-hover) ease-in-out;
  -o-transition: background var(--time-hover) ease-in-out;
  transition: background var(--time-hover) ease-in-out;
}
#main > #content div#activity h3:hover,
#main > #content div#activity h4:hover,
#main > #content div#activity h3.open-activity-link,
#main > #content div#activity h4.open-activity-link {
  color: var(--color-main-color);
}
#main > #content div#activity h3:hover:after,
#main > #content div#activity h4:hover:after,
#main > #content div#activity h3.open-activity-link:after,
#main > #content div#activity h4.open-activity-link:after {
  border-color: var(--color-main-color);
  background: var(--color-main-color);
}
#main > #content div#activity h3:hover:before,
#main > #content div#activity h4:hover:before,
#main > #content div#activity h3.open-activity-link:before,
#main > #content div#activity h4.open-activity-link:before {
  background: var(--color-main-color);
}
#main > #content div#activity dl {
  position: relative;
  margin: 0 !important;
  padding: 0 0 0 30px;
  overflow: hidden;
}
#main > #content div#activity dl:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 8px;
  width: 2px;
  height: 100%;
  background: var(--color-main-color);
}
#main > #content div#activity dl dt {
  overflow: hidden;
  padding: 15px 20px;
  margin: 0 !important;
  display: flex;
  align-items: center;
  width: 100%;
  background: var(--bg-other);
  background-image: none !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--border-radius) var(--border-radius) 0 0;
  -moz-border-radius: var(--border-radius) var(--border-radius) 0 0;
  border-radius: var(--border-radius) var(--border-radius) 0 0;
  font-weight: 600;
}
#main > #content div#activity dl dt img.gravatar {
  margin: 0 10px 0 0;
}
#main > #content div#activity dl dt a {
  font-size: 1rem;
  line-height: 1.4;
}
#main > #content div#activity dl dd {
  overflow: hidden;
  font-style: normal;
  padding: 0 20px 20px;
  min-height: 15px;
  display: block;
  width: 100%;
  background: var(--bg-other);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 0 20px;
  margin-left: 0 !important;
  -webkit-border-radius: 0 0 var(--border-radius) var(--border-radius);
  -moz-border-radius: 0 0 var(--border-radius) var(--border-radius);
  border-radius: 0 0 var(--border-radius) var(--border-radius);
}
#main > #content div#activity dl .description {
  display: block;
  font-style: normal !important;
  overflow: hidden;
  width: 100%;
  padding: 0;
  margin: 0 0 10px;
  font-size: 1rem;
  line-height: 1.4;
}
#main > #content div#activity dl .time {
  margin: 0 10px 0 0;
  display: inline-block;
  padding: 5px 15px;
  color: var(--text-color-main);
  background: var(--bg-other-in);
  text-decoration: none;
  border: 0 !important;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  font-size: 0.8571rem;
  line-height: 0.8571rem;
}
#main > #content div#activity dl .project {
  margin: 0 5px 0 0;
}
#main > #content div#activity dl .author {
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.4;
}
p.subtitle {
  font-style: normal !important;
  font-size: 1rem;
  line-height: 1.4;
  margin: -15px 0 15px 0;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  p.subtitle {
    margin: 0 0 15px;
  }
  .controller-activities #main #content {
    padding-right: 10px;
    padding-left: 10px;
  }
  .controller-activities #main #content > h2 {
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 20px;
    width: calc(100% + 20px);
  }
  #main > #content div#activity {
    margin: 0 0 20px;
  }
  #main > #content div#activity:after {
    width: 14px;
  }
  #main > #content div#activity h3:before,
  #main > #content div#activity h4:before {
    left: 6px;
  }
  #main > #content div#activity h3:after,
  #main > #content div#activity h4:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    top: 3px;
  }
  #main > #content div#activity dl:before {
    left: 6px;
  }
  #main > #content div#activity dl dt {
    background: var(--bg-other);
  }
  #main > #content div#activity dl dd {
    background: var(--bg-other);
  }
  #main > #content div#activity dl .time {
    background: var(--bg-other-in);
  }
}
@media screen and (max-width: 650px) {
  .controller-activities #main #content {
    display: block !important;
  }
  #main > #content div#activity {
    overflow: visible;
  }
  #main > #content div#activity:after {
    display: none;
  }
  #main > #content div#activity h4.open-activity-link,
  #main > #content div#activity h3.open-activity-link {
    margin-bottom: 0 !important;
  }
  #main > #content div#activity dl {
    padding: 0;
  }
  #main > #content div#activity dl:before {
    display: none;
  }
  #main > #content div#activity dl dt {
    flex-wrap: wrap;
    padding: 10px 10px 0;
    background: var(--bg-other);
    border-top: 1px solid var(--color-grey);
    -webkit-border-radius: 0 !important;
    -moz-border-radius: 0 !important;
    border-radius: 0 !important;
  }
  #main > #content div#activity dl dt a {
    margin: 2px 0;
  }
  #main > #content div#activity dl dt img.gravatar {
    width: 30px;
    height: 30px;
  }
  #main > #content div#activity dl dd {
    background: var(--bg-other);
    padding: 0 10px 10px;
    margin: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #main > #content div#activity dl dd:last-child {
    border-bottom: 1px solid var(--color-grey);
  }
  #main > #content div#activity dl .time {
    background: var(--bg-other-in);
  }
  #main > #content div#activity .holder-activity {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
  }
  #main > #content div#activity h3,
  #main > #content div#activity h4 {
    margin: 0 -10px 10px !important;
    text-align: center;
    padding: 10px 10px;
    width: calc(100% + 20px);
    background: var(--bg-box);
  }
  #main > #content div#activity h3.open-activity-link,
  #main > #content div#activity h4.open-activity-link {
    background: var(--color-main-color);
    color: var(--color-main-color-text);
  }
  #main > #content div#activity h3:after,
  #main > #content div#activity h4:after {
    display: none;
  }
  #main > #content div#activity h3:before,
  #main > #content div#activity h4:before {
    display: none;
  }
  .controller-activities.action-date_index #main #content h2 {
    margin-bottom: 20px;
  }
}
#activity_scope_form .select2 {
  min-width: 100%;
  margin-top: 5px;
}
/* END ACTIVITY */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ADMINISTRATION */
#main #admin-index #admin-menu {
  overflow: hidden;
  width: 100%;
}
#main #admin-index #admin-menu ul {
  padding: 0;
  margin: 0;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
}
#main #admin-index #admin-menu ul li {
  width: 160px;
  padding: 0;
  margin: 0 10px 20px;
  position: relative;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  overflow: hidden;
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
#main #admin-index #admin-menu ul li:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: -300px;
  right: -300px;
  width: 600px;
  height: 600px;
  z-index: 1;
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  background: var(--all-hover-bg);
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#main #admin-index #admin-menu ul li:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
#main #admin-index #admin-menu ul li:hover:after {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main #admin-index #admin-menu ul li a,
#main #admin-index #admin-menu ul li a.selected {
  z-index: 2;
  display: block !important;
  padding: 82px 10px 20px !important;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  position: relative;
  background-image: none;
  font-size: 1.28571429rem;
  line-height: 1.4;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  text-decoration: none;
  text-align: center;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  background-image: none !important;
  word-break: break-word;
  color: var(--admin-color-text);
}
#main #admin-index #admin-menu ul li a:after,
#main #admin-index #admin-menu ul li a.selected:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 20px;
  left: 50%;
  margin: 0 0 0 -25px;
  width: 50px;
  height: 50px;
  z-index: 2;
  opacity: 1;
  background-size: 28px auto;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
}
#main #admin-index #admin-menu ul li a a:after,
#main #admin-index #admin-menu ul li a.selected a:after {
  background-image: url("../images/icon-color/default-color-icon.svg");
}
#main #admin-index #admin-menu ul li a:before,
#main #admin-index #admin-menu ul li a.selected:before {
  content: '';
  display: block !important;
  clear: both;
  position: absolute;
  top: 20px;
  left: 50%;
  margin: 0 0 0 -25px;
  padding: 0;
  width: 50px;
  height: 50px;
  z-index: 2;
  background: var(--admin-color-after);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
  -webkit-transition: background var(--time-hover) ease-in-out;
  -moz-transition: background var(--time-hover) ease-in-out;
  transition: background var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
}
#main #admin-index #admin-menu ul li a:link,
#main #admin-index #admin-menu ul li a.selected:link,
#main #admin-index #admin-menu ul li a:visited,
#main #admin-index #admin-menu ul li a.selected:visited {
  color: var(--admin-color-text-hover);
}
#main #admin-index #admin-menu ul li a:link:hover,
#main #admin-index #admin-menu ul li a.selected:link:hover,
#main #admin-index #admin-menu ul li a:visited:hover,
#main #admin-index #admin-menu ul li a.selected:visited:hover {
  color: var(--admin-color-text-hover);
}
#main #admin-index #admin-menu ul li a:link:hover:before,
#main #admin-index #admin-menu ul li a.selected:link:hover:before,
#main #admin-index #admin-menu ul li a:visited:hover:before,
#main #admin-index #admin-menu ul li a.selected:visited:hover:before {
  background: var(--admin-color-after-hover);
}
@media screen and (max-width: 768px) {
  #admin-index #admin-menu ul li a,
  #admin-index #admin-menu ul li a.selected {
    font-size: 1.28571429rem;
  }
}
@media screen and (max-width: 500px) {
  #admin-index #admin-menu ul li {
    width: calc(50% - 20px);
  }
  #admin-index #admin-menu ul li a,
  #admin-index #admin-menu ul li a.selected {
    font-size: 1.1428rem;
  }
}
/* END ADMINISTRATION */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ADMINISTRATION INFO PAGE */
.action-info #main #content pre {
  margin: 0;
}
.action-info #main #content br {
  display: none;
}
.action-info #main #content .list {
  margin: 0 0 20px;
}
.action-info #main #content .list tr td {
  border-right: none;
  padding: 7px 14px;
}
.action-info #main #content .list tr td.tick {
  text-align: right;
}
.action-info #main #content .box {
  margin: 0;
  overflow-x: auto;
}
/* END ADMINISTRATION INFO PAGE  */
/* --------------------- WEBFULLSET.COM -- */
/* START ADMINISTRATION PLAGINS PAGE */
.action-plugins #main > #content .autoscroll {
  margin: 0 -30px;
  width: calc(100% + 60px);
}
.action-plugins #main > #content table.plugins {
  font-size: 0.85714286rem;
  line-height: 1rem;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  border: 0;
}
.action-plugins #main > #content table.plugins .description {
  font-size: 0.85714286rem;
  line-height: 1rem;
  margin: 0 0 5px;
}
.action-plugins #main > #content table.plugins .name {
  font-size: 1rem;
  line-height: sans-serif;
}
.action-plugins #main > #content table.plugins tr td {
  padding: 14px 20px;
}
.action-plugins #main > #content table.plugins tr td.configure {
  text-align: center;
}
.action-plugins #main > #content table.plugins tr:first-child td {
  border-top: 1px solid var(--border-color-content);
}
.action-plugins #main > #content table.plugins tr:last-child td {
  border-bottom: 1px solid var(--border-color-content) !important;
  -webkit-border-radius: 0px !important;
  -moz-border-radius: 0px !important;
  border-radius: 0px !important;
}
.action-plugins #main > #content table.plugins span.url {
  font-size: 0.85714rem;
}
.action-plugins #check-for-updates {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 10px 0 0;
  text-decoration: none !important;
}
.action-plugins #check-for-updates:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
/* END ADMINISTRATION PLAGINS PAGE */
/* --------------------- WEBFULLSET.COM -- */
/* START ADMINISTRATION FINANCE & PRODUCTS PLAGIN PAGE */
#content span#watchers_inputs {
  overflow: hidden;
}
#content .floating {
  margin: 0 5px 0 0;
}
#content #settings .box {
  margin: 0 0 20px;
}
#content #settings .tab-content {
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 1px 1px 1px 30px;
  margin: 20px 0 0;
  border: none;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#content #settings .tab-content fieldset.box {
  padding: 52px 0 0;
  margin: 0;
}
#content #settings .tab-content fieldset.box[style*="background-color"] {
  padding: 52px 20px 20px;
}
#content #settings .tab-content fieldset.box[style*="background-color"] legend {
  left: 20px;
}
#content #settings .tab-content fieldset.box legend {
  left: 0;
}
/* END ADMINISTRATION FINANCE & PRODUCTS PLAGIN PAGE */
/* --------------------- WEBFULLSET.COM -- */
/* START FILTER FOR ADMIN PAGE */
#main #content {
  /*.holder-filters fieldset,*/
}
#main #content fieldset.filter-box {
  position: relative;
  padding: 25px 30px 15px;
  margin: 0 0 15px;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  background: var(--bg-box);
  border: none;
  display: flex;
}
#main #content fieldset.filter-box.open-in-box .icon-down {
  color: var(--icon_color_active-bg);
}
#main #content fieldset.filter-box.open-in-box .icon-down:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#main #content fieldset.filter-box > legend {
  position: absolute;
  width: 100%;
  padding: 0 20px 0 50px;
  display: flex;
  align-items: center;
  height: 40px;
  top: 0;
  left: 0;
  color: var(--text-color-main);
  font-weight: 600;
  font-size: 1rem;
  line-height: 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
}
#main #content fieldset.filter-box > legend:after {
  content: '';
  display: block;
  clear: both;
  width: 100%;
  position: absolute;
  top: 100%;
  left: 0;
  height: 1px;
  background: var(--border-color);
  opacity: 0;
}
#main #content fieldset.filter-box > legend .icon-down {
  position: absolute;
  top: 5px;
  left: 10px;
  width: var(--icon-width);
  height: var(--icon-width);
  background-size: var(--icon-width) var(--icon-width);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
  color: var(--icon-color-bg);
}
#main #content fieldset.filter-box > legend .icon-down:after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  z-index: 1;
  background-size: var(--icon-width) var(--icon-width);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  opacity: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#main #content fieldset.filter-box > legend .icon-down:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: var(--icon_bg-bg);
  transform: scale(0);
  z-index: 0;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main #content fieldset.filter-box > legend.open-in-box:after {
  opacity: 1;
}
#main #content fieldset.filter-box > legend.open-in-box .icon-down {
  color: var(--icon_color_active-bg);
}
#main #content fieldset.filter-box > legend.open-in-box .icon-down:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#main #content fieldset.filter-box > legend:hover .icon-down {
  color: var(--icon-color-hover-bg);
}
#main #content fieldset.filter-box > legend:hover .icon-down:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main #content fieldset.filter-box fieldset {
  padding: 30px 0 0;
  margin: 0;
  border: 0;
}
#main #content fieldset.filter-box fieldset legend {
  min-height: 20px;
  max-height: 20px;
  line-height: 20px;
  padding: 0;
}
#main #content fieldset.filter-box .open-in-box ~ .open-box {
  max-height: 2000px;
}
#main #content fieldset.filter-box .open-box {
  overflow: hidden;
  width: 100%;
  max-height: 0;
  -webkit-transition: max-height var(--time-main) ease-in-out;
  -moz-transition: max-height var(--time-main) ease-in-out;
  -ms-transition: max-height var(--time-main) ease-in-out;
  -o-transition: max-height var(--time-main) ease-in-out;
  transition: max-height var(--time-main) ease-in-out;
}
#main #content fieldset.filter-box .open-box > div {
  display: block !important;
  overflow: hidden;
  padding: 20px 0 0;
}
#main #content fieldset.filter-box .open-box .admin-filter {
  display: flex !important;
  overflow: hidden;
  margin: 15px 0 0;
  padding: 0;
  align-items: center;
}
#main #content fieldset.filter-box .open-box .admin-filter label {
  font-weight: bold;
  margin: 0 10px 0 0;
}
#main #content fieldset.filter-box .open-box .admin-filter label[for="draw_selected_columns"] {
  margin-bottom: 10px;
  display: block;
}
#main #content fieldset.filter-box .open-box .admin-filter table td {
  font-weight: 600;
}
#main #content fieldset.filter-box form input[type="submit"] {
  background: var(--button-main-bg);
  color: var(--button-main-color);
}
#main #content fieldset.filter-box form input[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#main #content fieldset.filter-box form input[type="submit"] + input[type="button"] {
  background: var(--button-bg);
  color: var(--button-color);
}
#main #content fieldset.filter-box form input[type="submit"] + input[type="button"]:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#main #content fieldset.filter-box form input[type="submit"] + a {
  color: var(--button-color-bg);
  width: var(--icon-width);
  height: var(--icon-width);
}
#main #content fieldset.filter-box form input[type="submit"] + a:after {
  color: var(--button-color-bg);
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#main #content fieldset.filter-box form input[type="submit"] + a:before {
  background: var(--button-bg-bg);
}
#main #content fieldset.filter-box form input[type="submit"] + a:hover {
  color: var(--button-color-hover-bg);
}
#main #content fieldset.filter-box form input[type="submit"] + a:hover:after {
  color: var(--button-color-hover-bg);
}
#main #content fieldset.filter-box form input[type="submit"] + a:hover:before {
  background: var(--button-bg-hover-bg);
}
#main #content form.filter-box {
  display: block;
  overflow: hidden;
  position: relative;
}
#main #content form.filter-box input[type="submit"] {
  background: var(--button-main-bg);
  color: var(--button-main-color);
}
#main #content form.filter-box input[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#main #content form.filter-box fieldset {
  position: relative;
  padding: 25px 30px 15px;
  margin: 0 0 15px;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  background: var(--bg-box);
}
#main #content form.filter-box fieldset .holder-filter {
  display: flex;
}
#main #content form.filter-box fieldset.open-in-box .icon-down {
  color: var(--color-main-color);
}
#main #content form.filter-box fieldset.open-in-box .icon-down:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#main #content form.filter-box fieldset legend {
  position: absolute;
  width: 100%;
  padding: 0 20px 0 50px;
  display: block;
  height: 40px !important;
  top: 0;
  left: 0;
  color: var(--text-color-main);
  font-weight: 600;
  font-size: 1rem;
  line-height: 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
}
#main #content form.filter-box fieldset legend:after {
  content: '';
  display: block;
  clear: both;
  width: 100%;
  position: absolute;
  top: 100%;
  left: 0;
  height: 1px;
  background: var(--border-color);
  opacity: 0;
}
#main #content form.filter-box fieldset legend .icon-down {
  position: absolute;
  top: 5px;
  left: 10px;
  width: var(--icon-width);
  height: var(--icon-width);
  background-size: var(--icon-width) var(--icon-width);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
  color: var(--icon-color-bg);
  z-index: 10;
}
#main #content form.filter-box fieldset legend .icon-down:after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  z-index: 1;
  opacity: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#main #content form.filter-box fieldset legend .icon-down:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  height: var(--icon-width);
  width: var(--icon-width);
  background: var(--icon-color-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
  z-index: 0;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main #content form.filter-box fieldset legend.open-in-box:after {
  opacity: 1;
}
#main #content form.filter-box fieldset legend.open-in-box .icon-down {
  color: var(--icon_color_active-bg);
}
#main #content form.filter-box fieldset legend.open-in-box .icon-down:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#main #content form.filter-box fieldset legend:hover .icon-down {
  color: var(--icon-color-hover-bg);
}
#main #content form.filter-box fieldset legend:hover .icon-down:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main #content form.filter-box fieldset fieldset {
  padding: 30px 0 0;
  margin: 0;
}
#main #content form.filter-box fieldset fieldset legend {
  height: 50px;
  padding: 0;
}
#main #content form.filter-box fieldset .open-in-box ~ .open-box {
  max-height: 2000px;
}
#main #content form.filter-box fieldset .open-box {
  overflow: hidden;
  width: 100%;
  max-height: 0;
  -webkit-transition: max-height var(--time-main) ease-in-out;
  -moz-transition: max-height var(--time-main) ease-in-out;
  -ms-transition: max-height var(--time-main) ease-in-out;
  -o-transition: max-height var(--time-main) ease-in-out;
  transition: max-height var(--time-main) ease-in-out;
}
#main #content form.filter-box fieldset .open-box > div {
  display: block !important;
  overflow: hidden;
  padding: 20px 0 0;
}
#main #content form.filter-box fieldset .open-box .admin-filter {
  display: flex !important;
  overflow: hidden;
  margin: 15px 0 0;
  padding: 0;
  align-items: center;
}
#main #content form.filter-box fieldset .open-box .admin-filter label {
  font-weight: bold;
  margin: 0 10px 0 0;
}
/* END FILTER FOR ADMIN PAGE */
/* --------------------- WEBFULLSET.COM -- */
/* START PERMISSION */
#content #permissions {
  color: var(--bg-box);
}
#content #permissions .icon-inform {
  display: none !important;
}
#content #permissions br {
  display: none;
}
#content #permissions a[onclick*="permissions"] {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-bg);
  border: none;
  color: var(--button-color);
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 10px 0 0;
  display: inline-block;
  text-decoration: none !important;
}
#content #permissions a[onclick*="permissions"]:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#content #permissions a[onclick*="permissions"]:disabled {
  background: var(--button-main-bg-disabled);
  cursor: var(--button-main-color-disabled);
}
#content #permissions a[onclick*="permissions"]:disabled:hover {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
}
#content #permissions fieldset {
  color: var(--text-color-main);
  position: relative;
  padding: 40px 0 15px ;
  margin: 0 0 15px;
  border: 0;
  border-bottom: 1px solid var(--color-dark-grey);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#content #permissions legend {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
  color: var(--text-color-main);
  font-weight: bold;
}
#content #permissions .icon.icon-checked {
  margin: 0 0 0 -3px;
}
#content #permissions .icon:after {
  color: var(--icon-color-bg);
}
#content #permissions .icon:hover:after {
  color: var(--icon-color-hover-bg);
}
#permissions_form p {
  color: var(--color-main-color-text);
  margin: 0;
}
#permissions_form a[onclick*="permissions"] {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-bg);
  border: none;
  color: var(--button-color);
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 10px 15px 0;
  display: inline-block;
  text-decoration: none !important;
}
#permissions_form a[onclick*="permissions"]:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#permissions_form a[onclick*="permissions"]:disabled {
  background: var(--button-bg-disabled);
  cursor: var(--button-color-disabled);
}
#permissions_form a[onclick*="permissions"]:disabled:hover {
  background: var(--button-bg-disabled);
  color: var(--button-color-disabled);
}
#permissions_form .autoscroll {
  margin: 0 0 20px;
}
#role-permissions-trackers .autoscroll,
.controller-trackers.action-fields .autoscroll {
  margin: 0 0 20px;
}
/* END PERMISSION */
/* --------------------- WEBFULLSET.COM -- */
/* START USER PAGE */
#user_form ~ p {
  margin: 0;
}
/* END USER PAGE */
/* --------------------- WEBFULLSET.COM -- */
/* START WORKFLOWS */
#content form[action*="workflows"] > p {
  display: flex;
  align-items: center;
}
#content form[action*="workflows"] label {
  display: flex;
  align-items: center;
}
#content form[action*="workflows"] label .jcf-select,
#content form[action*="workflows"] label .jcf-list-box,
#content form[action*="workflows"] label .select2 {
  margin: 0 0 0 10px;
}
#content form[action*="workflows"] label + a {
  margin: 0 5px;
}
#content form[action*="workflows"] .toggle-multiselect {
  margin-right: 10px !important;
}
#content .list.workflows {
  margin: 20px 0;
}
#content .list.workflows.fields_permissions .jcf-select,
#content .list.workflows.fields_permissions .select2 {
  width: calc(100% - 40px);
}
#content fieldset .list.workflows {
  mmargin: 0;
}
#content #workflow_form fieldset {
  overflow: hidden;
  position: relative;
  padding: 25px 30px 15px !important;
  margin: 0 0 20px !important;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  background: var(--bg-box);
  border: none;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#content #workflow_form fieldset:after {
  content: '';
  clear: both;
  position: absolute;
  top: 40px;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--border-color);
  z-index: 2;
  display: block;
}
#content #workflow_form fieldset.collapsed:after {
  display: none;
}
#content #workflow_form fieldset.collapsed legend:after {
  -webkit-transform: rotate(0);
  -moz-transform: rotate(0);
  -ms-transform: rotate(0);
  -o-transform: rotate(0);
  transform: rotate(0);
}
#content #workflow_form fieldset legend {
  position: absolute;
  width: 100%;
  padding: 0 20px 0 50px;
  display: flex;
  align-items: center;
  height: 40px;
  top: 0;
  left: 0;
  margin: 0;
  color: var(--text-color-main);
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.4;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
}
#content #workflow_form fieldset legend:after {
  position: absolute;
  top: 5px;
  left: 10px;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
  z-index: 1;
  background-size: var(--icon-width) var(--icon-width);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  opacity: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
  color: var(--icon-color-bg);
}
#content #workflow_form fieldset legend:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 5px;
  left: 10px;
  height: var(--icon-width);
  width: var(--icon-width);
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 0;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#content #workflow_form fieldset legend:hover:after {
  color: var(--icon-color-hover-bg);
}
#content #workflow_form fieldset legend:hover:before {
  height: var(--icon-width);
  width: var(--icon-width);
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#content #workflow_form fieldset > div {
  padding: 15px 0 0 !important;
  margin: 15px 0 0 !important;
}
table.transitions td.enabled {
  background: var(--notice-successfu-bg);
}
/* END WORKFLOWS */
/* --------------------- WEBFULLSET.COM -- */
/* START CASTOM FIELDS */
#content form[action="/custom_fields/new"] .box p {
  padding: 0;
}
#content #custom_field_min_length {
  margin: 0 10px 0 0;
}
#content #custom_field_project_ids {
  margin: 15px 0 0;
}
.controller-custom_fields #content .nodata {
  margin: 0;
}
/* END CASTOM FIELDS */
/* --------------------- WEBFULLSET.COM -- */
/* START ENUMERATION */
.controller-enumerations table.list.enumerations {
  table-layout: auto;
}
.controller-enumerations #content > p:not(.nodata) {
  display: flex;
  justify-content: flex-end;
  margin: -40px 0 20px;
}
.controller-enumerations #content .list {
  margin: 0;
}
.controller-enumerations #main > #content h3 {
  margin: 20px 0;
}
.controller-enumerations #main > #content h3:first-of-type {
  margin: 0 0 20px;
}
/* END CASTOM ENUMERATION */
.controller-auth_sources #content .list {
  margin: 0 0 30px;
}
/* --------------------- WEBFULLSET.COM -- */
/* START SETTINGS PAGE */
#content #settings_activity_days_default,
#content #settings_attachment_max_size,
#content #settings_file_max_size_displayed {
  margin: 0 10px 0 0;
}
#tab-content-money p {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 10px;
  color: var(--color-dark-grey);
  font-size: 0.85714286rem;
  line-height: 1rem;
  padding: 0 0 0 295px;
  align-items: center;
  min-height: 30px;
}
#tab-content-money p:last-child {
  margin: 0;
}
#tab-content-money p label {
  margin: 0 10px 0 0 !important;
  flex: 0 1 auto;
  text-align: left;
  color: var(--text-color-main);
  font-size: 1rem;
  line-height: 1.4;
  font-weight: bold;
}
#tab-content-money p label:first-child {
  margin: 0 0 0 -295px !important;
  width: 285px;
  padding: 0 10px 0 0;
}
#tab-content-money input[type="email"],
#tab-content-money input[type="password"],
#tab-content-money input[type="text"],
#tab-content-money input[type="number"],
#tab-content-money input[type="date"],
#tab-content-money textarea {
  height: 30px;
  box-sizing: border-box;
  border: 1px solid var(--border-color-content);
  padding: 6px 12px;
  font-size: 14px;
  line-height: 18px;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  color: var(--text-color-main);
  margin: 0;
  min-width: 190px;
  outline: 0 none;
  width: 100%;
  max-width: 100%;
  flex: 1 0 0;
}
#tab-content-money input[type="email"].autocomplete,
#tab-content-money input[type="password"].autocomplete,
#tab-content-money input[type="text"].autocomplete,
#tab-content-money input[type="number"].autocomplete,
#tab-content-money input[type="date"].autocomplete,
#tab-content-money textarea.autocomplete {
  background-image: url(../images/icon/all/search.svg);
  background-repeat: no-repeat;
  background-position: 100% 50%;
  background-size: 30px 30px;
  line-height: 18px;
  padding: 8px 38px 8px 8px !important;
}
#content #tab-content-mail_handler form textarea,
#content #tab-content-mail_handler form #settings_mail_handler_excluded_filenames {
  flex: auto;
  margin: 0 0 5px;
}
/* END SETTINGS PAGE */
/* --------------------- WEBFULLSET.COM -- */
/* START FIX "&nbsp;" */
.controller-admin.action-projects #main #content,
.controller-users.action-index #main #content,
.controller-groups.action-index #main #content {
  display: block;
}
.controller-admin.action-projects.has-footer .autoscroll,
.controller-users.action-index.has-footer .autoscroll,
.controller-groups.action-index.has-footer .autoscroll {
  margin: 0 0 30px;
}
/* END FIX "&nbsp;" */
/* --------------------- WEBFULLSET.COM -- */
tr.issue.idnt td.subject {
  background-image: none;
  background-color: var(--bg-fff);
}
tr.issue.idnt:hover td.subject {
  background-color: var(--all-hover-bg);
}
tr.project.idnt td.name {
  background-image: none;
  background-color: var(--bg-fff);
}
tr.project.idnt:hover td.name {
  background-color: var(--all-hover-bg);
}
#content #workflow_form fieldset legend + #assignee_workflows,
#content #workflow_form fieldset legend + #author_workflows {
  overflow-x: auto;
}
@media screen and (min-width: 1024px) {
  .controller-roles #main .admin-filter .icon-reload,
  .controller-groups #main .admin-filter .icon-reload,
  .controller-admin #main .admin-filter .icon-reload,
  .controller-users #main .admin-filter .icon-reload {
    background: none;
    -webkit-transition: color 0s ease-in-out, background-color 0s ease-in-out;
    -moz-transition: color 0s ease-in-out, background-color 0s ease-in-out;
    -ms-transition: color 0s ease-in-out, background-color 0s ease-in-out;
    -o-transition: color 0s ease-in-out, background-color 0s ease-in-out;
    transition: color 0s ease-in-out, background-color 0s ease-in-out;
  }
  .controller-roles #main .admin-filter .icon-reload:before,
  .controller-groups #main .admin-filter .icon-reload:before,
  .controller-admin #main .admin-filter .icon-reload:before,
  .controller-users #main .admin-filter .icon-reload:before {
    content: '';
    display: block !important;
    clear: both;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background: var(--icon_bg-bg);
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    z-index: -1;
    -webkit-border-radius: var(--icon-border-radius);
    -moz-border-radius: var(--icon-border-radius);
    border-radius: var(--icon-border-radius);
    -webkit-transition: background-color var(--time-hover) ease-in-out;
    -moz-transition: background-color var(--time-hover) ease-in-out;
    -ms-transition: background-color var(--time-hover) ease-in-out;
    -o-transition: background-color var(--time-hover) ease-in-out;
    transition: background-color var(--time-hover) ease-in-out;
  }
  .controller-roles #main .admin-filter .icon-reload:hover:before,
  .controller-groups #main .admin-filter .icon-reload:hover:before,
  .controller-admin #main .admin-filter .icon-reload:hover:before,
  .controller-users #main .admin-filter .icon-reload:hover:before {
    background: var(--icon_bg_hover-bg);
  }
}
#main #content .filter-form #query_form_with_buttons,
#main #content .filter-form #query_form_content,
#main #content .filter-form #eq-filter-controls,
#main #content .filter-form .holder-filters {
  overflow: inherit;
  overflow: hidden;
  max-height: 0;
  -webkit-transition: max-height var(--time-main) ease-in-out;
  -moz-transition: max-height var(--time-main) ease-in-out;
  -ms-transition: max-height var(--time-main) ease-in-out;
  -o-transition: max-height var(--time-main) ease-in-out;
  transition: max-height var(--time-main) ease-in-out;
}
#main #content .filter-form.open-filters #query_form_with_buttons,
#main #content .filter-form.open-filters #query_form_content,
#main #content .filter-form.open-filters #eq-filter-controls,
#main #content .filter-form.open-filters .holder-filters {
  max-height: 2000px;
}
/* START MRDIA */
@media screen and (max-width: 1024px) {
  .controller-my.action-account #main #content > .contextual:not(.next-prev-links) {
    position: fixed;
    top: auto;
    margin: 0 !important;
    bottom: 0;
    padding: 0;
    left: 0;
    width: 100%;
    background: var(--bg-box);
    height: 50px;
    border-top: 1px solid var(--border-color);
    flex-direction: row;
    align-items: center;
    justify-content: center;
    -webkit-transition: left var(--time-main) ease-in-out;
    -moz-transition: left var(--time-main) ease-in-out;
    -ms-transition: left var(--time-main) ease-in-out;
    -o-transition: left var(--time-main) ease-in-out;
    transition: left var(--time-main) ease-in-out;
  }
  .controller-my.action-account #main #content > .contextual:not(.next-prev-links).hidden-link .icon:not(.new-icon) {
    display: none;
  }
  .controller-my.action-account #main #content > .contextual:not(.next-prev-links) .drdn .drdn-trigger {
    display: none;
  }
  .controller-my.action-account #main #content > .contextual:not(.next-prev-links) .drdn .drdn-content {
    position: static;
    border: 0;
    padding: 0;
    background: none;
    display: block;
  }
  .controller-my.action-account #main #content > .contextual:not(.next-prev-links) .drdn .drdn-content .drdn-items {
    padding: 0;
    display: flex;
  }
  .controller-my.action-account #main #content > .contextual:not(.next-prev-links) .drdn a.icon {
    color: var(--icon-color);
    font-size: 0;
    line-height: 0;
    height: var(--icon-width);
    width: var(--icon-width);
    min-width: var(--icon-width);
    min-height: var(--icon-width);
    padding: 0;
    margin: 0;
    background: none;
  }
  .controller-my.action-account #main #content > .contextual:not(.next-prev-links) .drdn a.icon:before {
    background: var(--icon_bg);
  }
  .controller-my.action-account #main #content > .contextual:not(.next-prev-links) .drdn a.icon:after {
    font-size: var(--icon-font-size) !important;
    line-height: var(--icon-width) !important;
    height: 100%;
    width: 100%;
    color: var(--icon-color);
    left: 0;
    -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
    -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
    -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
    -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
    transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  }
  .controller-my.action-account #main #content > .contextual:not(.next-prev-links) .drdn a.icon:hover:after {
    color: var(--icon-color-hover);
  }
  .controller-my.action-account #main #content > .contextual:not(.next-prev-links) .drdn a.icon:hover:before {
    background: var(--icon_bg_hover);
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
  .controller-my.action-account #main #content > .contextual:not(.next-prev-links) .drdn a.icon:before {
    background: var(--icon_bg);
    width: 100%;
    -webkit-border-radius: var(--icon-border-radius);
    -moz-border-radius: var(--icon-border-radius);
    border-radius: var(--icon-border-radius);
    transform: scale(0);
    -webkit-transition: transform var(--time-hover) ease-in-out;
    -moz-transition: transform var(--time-hover) ease-in-out;
    -ms-transition: transform var(--time-hover) ease-in-out;
    -o-transition: transform var(--time-hover) ease-in-out;
    transition: transform var(--time-hover) ease-in-out;
  }
  .controller-my.action-account #wrapper {
    padding-bottom: 48px;
  }
  .controller-roles #main .admin-filter .icon-reload,
  .controller-groups #main .admin-filter .icon-reload,
  .controller-admin #main .admin-filter .icon-reload,
  .controller-users #main .admin-filter .icon-reload {
    padding: 8px 30px;
    font-size: 1rem;
    line-height: 1rem;
    -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
    -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
    -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
    -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
    transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
    -webkit-border-radius: var(--button-border-radius);
    -moz-border-radius: var(--button-border-radius);
    border-radius: var(--button-border-radius);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background: var(--button-bg-bg) !important;
    border: 0 !important;
    color: var(--button-color-bg) !important;
    display: inline-block;
    vertical-align: top;
    align-items: center;
    justify-content: center;
    font-weight: var(--button-font-weight);
    margin: 0 10px 0 0;
    width: auto;
    height: auto;
    outline: 0 none;
  }
  .controller-roles #main .admin-filter .icon-reload:after,
  .controller-groups #main .admin-filter .icon-reload:after,
  .controller-admin #main .admin-filter .icon-reload:after,
  .controller-users #main .admin-filter .icon-reload:after,
  .controller-roles #main .admin-filter .icon-reload:before,
  .controller-groups #main .admin-filter .icon-reload:before,
  .controller-admin #main .admin-filter .icon-reload:before,
  .controller-users #main .admin-filter .icon-reload:before {
    display: none;
  }
  .controller-roles #main .admin-filter .icon-reload:hover,
  .controller-groups #main .admin-filter .icon-reload:hover,
  .controller-admin #main .admin-filter .icon-reload:hover,
  .controller-users #main .admin-filter .icon-reload:hover {
    color: var(--button-color-hover-bgs) !important;
    background: var(--button-bg-hover-bg) !important;
  }
  .controller-admin.action-index #admin-index #admin-menu ul li {
    padding: 0;
  }
  .controller-admin.action-index #admin-index #admin-menu ul li a {
    background: var(--bg-box);
    margin: 0;
  }
  #query_form .holder-filters .add-filter {
    margin: 0;
  }
  #query_form .holder-filters .add-filter .jcf-select,
  #query_form .holder-filters .add-filter .select2 {
    margin-bottom: 0 !important;
  }
  #main #content form.filter-box fieldset {
    padding: 25px 20px 15px;
  }
  #main #content form.filter-box legend .icon-down:before {
    display: none;
  }
  #main #content fieldset.filter-box {
    padding: 25px 20px 15px;
  }
  #main #content fieldset.filter-box .open-box .admin-filter {
    flex-wrap: wrap;
  }
  #main #content fieldset.filter-box .open-box .admin-filter label {
    display: block;
    width: 100%;
    margin: 0 0 10px!important;
    text-align: left;
  }
  #main #content fieldset.filter-box .open-box .admin-filter table th,
  #main #content fieldset.filter-box .open-box .admin-filter table td {
    padding: 0;
    margin: 0;
  }
  #main #content fieldset.filter-box .open-box .admin-filter table th > label,
  #main #content fieldset.filter-box .open-box .admin-filter table td > label {
    margin: 0 !important;
  }
  #main #content fieldset.filter-box .open-box .admin-filter table th > label ~ label,
  #main #content fieldset.filter-box .open-box .admin-filter table td > label ~ label {
    margin-top: 5px !important;
  }
  #main #content fieldset.filter-box .open-box .admin-filter table .jcf-list-box {
    margin-bottom: 10px;
  }
  #main #content fieldset.filter-box .open-box .admin-filter table .jcf-select,
  #main #content fieldset.filter-box .open-box .admin-filter table .select2 {
    margin-bottom: 0 !important;
  }
  #main #content fieldset.filter-box .open-box .admin-filter input[type="checkbox"] + label,
  #main #content fieldset.filter-box .open-box .admin-filter input[type="radio"] + label {
    display: inline;
    margin: 0 10px 10px !important;
  }
  #main #content fieldset.filter-box .open-box .admin-filter .jcf-select,
  #main #content fieldset.filter-box .open-box .admin-filter .select2,
  #main #content fieldset.filter-box .open-box .admin-filter input[type="text"],
  #main #content fieldset.filter-box .open-box .admin-filter input[type="date"],
  #main #content fieldset.filter-box .open-box .admin-filter input[type="email"],
  #main #content fieldset.filter-box .open-box .admin-filter input[type="time"] {
    width: 100%;
    flex: 1 0 auto;
    margin: 0 0 10px !important;
  }
  #main #content fieldset.filter-box .open-box .admin-filter td .jcf-select,
  #main #content fieldset.filter-box .open-box .admin-filter td .select2,
  #main #content fieldset.filter-box .open-box .admin-filter td input[type="text"],
  #main #content fieldset.filter-box .open-box .admin-filter td input[type="date"],
  #main #content fieldset.filter-box .open-box .admin-filter td input[type="email"],
  #main #content fieldset.filter-box .open-box .admin-filter td input[type="time"] {
    width: 100%;
    flex: 1 0 auto;
    margin: 0 !important;
  }
  #main #content fieldset.filter-box .open-box .admin-filter .select2 {
    width: 100% !important;
  }
  #main #content fieldset.filter-box .open-box .admin-filter input[type="submit"] {
    margin: 0 !important;
  }
  #main #content fieldset.filter-box .open-box .admin-filter .add-filter .jcf-select,
  #main #content fieldset.filter-box .open-box .admin-filter .add-filter .select2,
  #main #content fieldset.filter-box .open-box .admin-filter .add-filter input[type="text"],
  #main #content fieldset.filter-box .open-box .admin-filter .add-filter input[type="date"],
  #main #content fieldset.filter-box .open-box .admin-filter .add-filter input[type="email"],
  #main #content fieldset.filter-box .open-box .admin-filter .add-filter input[type="time"] {
    margin: 0 !important;
  }
  #main #content fieldset.filter-box .open-box .admin-filter table tr:last-child td:last-child .jcf-select,
  #main #content fieldset.filter-box .open-box .admin-filter table tr:last-child td:last-child .select2,
  #main #content fieldset.filter-box .open-box .admin-filter table tr:last-child td:last-child input[type="text"],
  #main #content fieldset.filter-box .open-box .admin-filter table tr:last-child td:last-child input[type="date"],
  #main #content fieldset.filter-box .open-box .admin-filter table tr:last-child td:last-child input[type="email"],
  #main #content fieldset.filter-box .open-box .admin-filter table tr:last-child td:last-child input[type="time"] {
    margin: 0 !important;
  }
  #main #content fieldset.filter-box .open-box .admin-filter table tr:last-child td.field {
    padding-bottom: 10px !important;
  }
  .action-plugins #main > #content .autoscroll {
    margin: 0 -10px;
    width: calc(100% + 20px);
  }
  .action-plugins #main > #content table.plugins tr td {
    padding: 10px;
  }
  .controller-admin.action-projects.has-footer .autoscroll,
  .controller-users.action-index.has-footer .autoscroll,
  .controller-groups.action-index.has-footer .autoscroll {
    margin: 0 0 20px;
  }
  #content form.filter-box fieldset {
    padding: 25px 20px 15px;
  }
  #content form .box input[type="submit"] + input[type="button"],
  #content form .tabular input[type="submit"] + input[type="button"] {
    background: var(--button-bg);
    color: var(--button-color);
  }
  #content form .box input[type="submit"] + input[type="button"]:hover,
  #content form .tabular input[type="submit"] + input[type="button"]:hover {
    background: var(--button-bg-hover);
    color: var(--button-color-hover);
  }
  #content form .box input[type="submit"] + a,
  #content form .tabular input[type="submit"] + a {
    color: var(--icon-color-bg);
  }
  #content form .box input[type="submit"] + a:after,
  #content form .tabular input[type="submit"] + a:after {
    color: var(--icon-color-bg);
  }
  #content form .box input[type="submit"] + a:before,
  #content form .tabular input[type="submit"] + a:before {
    background: var(--icon_bg-bg);
  }
  #content form .box input[type="submit"] + a:hover,
  #content form .tabular input[type="submit"] + a:hover {
    color: var(--icon-color-hover-bg);
  }
  #content form .box input[type="submit"] + a:hover:after,
  #content form .tabular input[type="submit"] + a:hover:after {
    color: var(--icon-color-hover-bg);
  }
  #content form .box input[type="submit"] + a:hover:before,
  #content form .tabular input[type="submit"] + a:hover:before {
    background: var(--icon_bg_hover-bg);
  }
  #content table form input[type="submit"] + a,
  #content table form input[type="submit"] + input[type="button"] {
    background: var(--button-bg);
    color: var(--button-color);
  }
  #content table form input[type="submit"] + a:hover,
  #content table form input[type="submit"] + input[type="button"]:hover {
    background: var(--button-bg-hover);
    color: var(--button-color-hover);
  }
  #content fieldset.filter-box {
    padding: 25px 20px 15px;
  }
  #content fieldset.filter-box p {
    margin: 15px 0 0;
  }
  #content form[action*="workflows"] p {
    flex-wrap: wrap;
  }
  #content form[action*="workflows"] a {
    display: none;
  }
  #content form[action*="workflows"] label .jcf-select,
  #content form[action*="workflows"] label .select2 {
    margin: 0 10px;
  }
  #content form[action*="workflows"] input[type="submit"] ~ label {
    width: 100%;
    flex: 1 0 auto;
    padding: 10px 0 0;
  }
  #content #workflow_form fieldset {
    padding: 25px 20px 15px !important;
  }
  #content #workflow_form fieldset:after {
    display: none;
  }
  #content #workflow_form fieldset legend {
    background: var(--bg-box);
    position: relative;
    height: auto;
    margin: 0 0 -40px -20px;
    padding: 12px 20px 12px 50px;
    -webkit-border-radius: var(--border-radius);
    -moz-border-radius: var(--border-radius);
    border-radius: var(--border-radius);
    width: calc(100% + 40px);
  }
  #content #workflow_form fieldset legend + div {
    position: relative;
  }
  #content #workflow_form fieldset legend + div:after {
    content: '';
    display: block;
    clear: both;
    position: absolute;
    top: 0;
    left: -20px;
    width: calc(100% + 40px);
    height: 1px;
    background: var(--border-color);
  }
  #content #settings .tab-content fieldset.box {
    padding: 40px 10px 15px;
  }
  #content #settings .tab-content fieldset.box legend {
    top: 17px;
    left: 10px;
  }
  #content #settings .tab-content fieldset.box[style*="background-color"] {
    padding: 40px 10px 15px;
  }
  #content #settings .tab-content fieldset.box[style*="background-color"] legend {
    top: 14px;
    left: 10px;
  }
}
@media screen and (max-width: 768px) {
  #content form.filter-box fieldset .open-box .admin-filter {
    flex-wrap: wrap;
  }
  #content form.filter-box fieldset .open-box .admin-filter label {
    display: block;
    width: 100%;
    margin: 0 0 5px !important;
  }
  #content form.filter-box fieldset .open-box .admin-filter input[type="checkbox"] + label,
  #content form.filter-box fieldset .open-box .admin-filter input[type="radio"] + label {
    display: inline;
  }
  #content form.filter-box fieldset .open-box .admin-filter .jcf-select {
    width: 100%;
    margin: 0 0 15px !important;
  }
  #content form.filter-box fieldset .open-box .admin-filter input[type="text"] {
    margin: 0 0 15px !important;
    width: 100%;
    flex: 1 0 auto;
  }
  #content form.filter-box fieldset .open-box .admin-filter input[type="submit"] {
    margin: 0 !important;
  }
}
@media screen and (max-width: 650px) {
  .controller-roles.action-permissions #main #content form input[type="submit"] {
    margin-top: 18px;
  }
  body #auth_source_form #auth_source_port ~ .select2 {
    margin-left: 0 !important;
  }
  #main #admin-index #admin-menu ul li {
    width: 140px;
    margin-left: 5px;
    margin-right: 5px;
  }
  #main #content form.filter-box fieldset {
    padding: 25px 10px 15px;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    margin-left: -10px !important;
    margin-right: -10px !important;
    width: calc(100% + 20px);
  }
  #main #content .filter-form {
    overflow: inherit;
  }
  #main #content .filter-form #query_form_with_buttons,
  #main #content .filter-form #query_form_content,
  #main #content .filter-form #eq-filter-controls,
  #main #content .filter-form .holder-filters {
    margin-left: -10px !important;
    margin-right: -10px !important;
    width: calc(100% + 20px);
    padding: 0 10px;
  }
  #main #content fieldset.filter-box {
    padding: 25px 10px 15px;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    margin-left: -10px !important;
    margin-right: -10px !important;
    width: calc(100% + 20px);
  }
  #main #content fieldset.filter-box form input[type="submit"] {
    width: 100%;
  }
  #main #content fieldset.filter-box .open-box .admin-filter label {
    margin: 0 0 10px !important;
  }
  #permissions_form a[onclick*="permissions"] {
    display: block;
    width: 100%;
    margin: 0;
    text-align: center;
  }
  #permissions_form a[onclick*="permissions"]:last-child {
    margin: 0;
  }
  #content fieldset.filter-box {
    padding: 25px 10px 15px;
  }
  #content fieldset.filter-box p {
    margin: 0;
  }
  #content fieldset.filter-box .open-box .admin-filter label {
    white-space: nowrap;
    margin: 3px 5px 3px 0;
    text-overflow: ellipsis;
    overflow: hidden;
  }
  #content form p input[type="submit"] ~ .icon.icon-reload {
    width: 100% !important;
  }
  #content #permissions {
    padding-top: 0;
  }
  #content #permissions fieldset {
    margin-bottom: 15px !important;
  }
  #content #permissions legend {
    position: relative;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  #content #permissions label {
    width: 100% !important;
    margin-right: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #content form.filter-box fieldset {
    padding: 25px 10px 15px;
  }
  #content #permissions a[onclick*="permissions"] {
    margin: 0;
    display: block;
    text-align: center;
    width: 100%;
    background: var(--button-bg-bg);
    color: var(--button-color-bg);
  }
  #content #permissions a[onclick*="permissions"]:hover {
    background: var(--button-bg-hover-bg);
    color: var(--button-color-hover-bg);
  }
  #content #workflow_form fieldset {
    padding: 25px 10px 15px !important;
  }
  #content #workflow_form fieldset legend {
    margin: 0 0 -40px -10px;
    width: calc(100% + 20px);
  }
  #content #workflow_form fieldset legend + div {
    position: relative;
  }
  #content #workflow_form fieldset legend + div:after {
    left: -10px;
  }
  #content form[action*="workflows"] label {
    width: 100%;
    margin: 0 0 10px;
    flex: 1 0 auto;
  }
  #content form[action*="workflows"] label .select2 {
    margin-right: 0;
  }
  #content #settings .tab-content fieldset.box {
    padding: 15px 10px 0;
  }
  #content #settings .tab-content fieldset.box legend {
    padding: 10px;
    top: 0;
    left: 0;
    position: relative;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    background: var(--bg-mobile);
  }
  .controller-roles #main .admin-filter .icon-reload,
  .controller-groups #main .admin-filter .icon-reload,
  .controller-admin #main .admin-filter .icon-reload,
  .controller-users #main .admin-filter .icon-reload {
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
#content form #settings_bulk_download_max_size {
  margin-right: 10px;
}
#content #tab-content-issues .query-columns,
#content #tab-content-timelog .query-columns {
  margin: 0 0 10px;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START DOCUMENTS */
/* START DOCUMENTS BLOK ON MY PAGE */
#wrapper #block-documents h4 {
  position: relative;
  display: block;
  z-index: 1;
  margin: 0;
  padding: 15px 20px 10px;
  font-size: 1rem;
  line-height: 1.14;
  font-weight: 700;
  background: var(--bg-body);
  border: 0;
  -webkit-border-radius: var(--border-radius) var(--border-radius) 0 0;
  -moz-border-radius: var(--border-radius) var(--border-radius) 0 0;
  border-radius: var(--border-radius) var(--border-radius) 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#wrapper #block-documents > p {
  position: relative;
  z-index: 2;
  background: var(--bg-fff);
  margin: 0;
  padding: 0;
}
#wrapper #block-documents em {
  font-style: normal;
  font-size: 0.85714286rem;
  margin: 0 10px 0 20px;
  display: inline-block;
  padding: 5px 15px;
  color: var(--text-color-main);
  background: var(--bg-box);
  text-decoration: none;
  border: 0 !important;
  font-weight: 600;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#wrapper #block-documents .wiki {
  position: relative;
  z-index: 2;
  overflow: hidden;
  margin: 0 0 15px;
  -webkit-transition: max-height var(--time-hover) ease-in-out;
  -moz-transition: max-height var(--time-hover) ease-in-out;
  -ms-transition: max-height var(--time-hover) ease-in-out;
  -o-transition: max-height var(--time-hover) ease-in-out;
  transition: max-height var(--time-hover) ease-in-out;
  background: var(--bg-fff);
  padding: 15px 20px;
  -webkit-border-radius: 0 0 var(--border-radius) var(--border-radius);
  -moz-border-radius: 0 0 var(--border-radius) var(--border-radius);
  border-radius: 0 0 var(--border-radius) var(--border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 1rem;
  line-height: 1.4;
}
#wrapper #block-documents .wiki p {
  margin: 15px 0 0;
}
#wrapper #block-documents .wiki p:nth-of-type(1) {
  margin: 0;
}
#wrapper #block-documents .wiki h2 {
  font-size: 1.1428rem;
  line-height: 1.14;
  font-weight: 700;
  padding: 0;
  margin: 0 0 15px;
}
/* END DOCUMENTS BLOK ON MY PAGE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START DOCUMENTS PAGE*/
.controller-documents.action-index #main #content {
  padding: 0 0 56px;
}
.controller-documents.action-index #main #content:after {
  display: none;
}
.controller-documents.action-index #main #content > h2 {
  width: 100%;
  margin: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-documents.action-index #main #content #add-document {
  position: relative;
  z-index: 5;
  padding: 20px 30px;
  margin: 0 0 30px;
  background: var(--bg-fff);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
}
.controller-documents.action-index #main #content #new_document {
  margin: 0;
  padding: 0;
}
.controller-documents.action-index #main #content #new_document > p {
  margin-bottom: 0;
}
.controller-documents.action-index #main #content h3 {
  margin: 20px 0 !important;
}
.controller-documents.action-index #main #content h3:last-of-type {
  margin: 30px 0  20px !important;
}
.controller-documents.action-index .documents-box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 0;
  border: none;
  background: var(--bg-other);
  width: 100%;
  margin: 0 0 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  break-inside: inherit;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  -webkit-transition: box-shadow var(--time-hover) ease-in-out;
  -moz-transition: box-shadow var(--time-hover) ease-in-out;
  -ms-transition: box-shadow var(--time-hover) ease-in-out;
  -o-transition: box-shadow var(--time-hover) ease-in-out;
  transition: box-shadow var(--time-hover) ease-in-out;
}
.controller-documents.action-index .documents-box:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
.controller-documents.action-index .documents-box h4 {
  border: 0;
  width: 100%;
  overflow: hidden;
  margin: 0 !important;
  padding: 0;
  display: flex;
  align-items: center;
}
.controller-documents.action-index .documents-box h4 a {
  position: relative;
  display: block;
  font-size: 1rem;
  line-height: 1.143rem;
  flex: 1;
  width: 100%;
  margin: 0;
  padding: 15px 20px;
  height: auto;
  font-family: sans-serif;
  overflow: hidden;
  font-weight: 600;
  color: var(--text-color-main);
  background-position: 10px 50%;
  background-repeat: no-repeat;
  text-decoration: none;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-documents.action-index .documents-box h4 a:hover {
  color: var(--color-main-color);
}
.controller-documents.action-index .documents-box h4 a:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  margin: -10px 0 0;
  right: 0;
  height: 20px;
  width: 1px;
  border-left: 1px solid var(--color-grey);
}
.controller-documents.action-index .documents-box h4 .open-documents {
  display: block;
  cursor: pointer !important;
  padding: 0;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0 15px;
  overflow: hidden;
  position: relative;
  z-index: 2;
  background-repeat: no-repeat;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
.controller-documents.action-index .documents-box h4 .open-documents:after {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: 1;
}
.controller-documents.action-index .documents-box h4 .open-documents:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.controller-documents.action-index .documents-box h4 .open-documents:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-documents.action-index .documents-box h4 .open-documents:hover:after {
  color: var(--icon-color-hover);
}
.controller-documents.action-index .documents-box h4 .open-documents.open {
  color: var(--icon_color_active);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
.controller-documents.action-index .documents-box h4 .open-documents.open:before {
  background: var(--icon_bg_active);
}
.controller-documents.action-index .documents-box .open-box {
  overflow: hidden;
  height: 0;
  width: 100%;
}
.controller-documents.action-index .documents-box .open-box .in-open {
  padding: 0 20px;
  border-top: 1px solid var(--color-grey);
}
.controller-documents.action-index .documents-box .open-box .in-open > * {
  margin: 15px 0;
}
.controller-documents.action-index .documents-box .open-box .in-open p em {
  font-weight: var(--button-font-weight);
  font-style: normal;
  display: inline-block;
  padding: 5px 15px;
  color: var(--text-color-main);
  background: var(--bg-other-in);
  text-decoration: none;
  border: 0 !important;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  font-size: 0.8571rem;
}
/* END DOCUMENTS PAGE*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START ONE DOCUMENT PAGE */
.controller-documents.action-show #main > #content #attach_files_link {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 10px 0 0;
  text-decoration: none;
}
.controller-documents.action-show #main > #content #attach_files_link:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
.controller-documents.action-show #main > #content .attachments + p {
  margin-bottom: 0;
}
#content form#add_attachment_form .box p {
  padding: 0;
}
#add_attachment_form {
  margin: 20px 0 0;
}
#wiki_add_attachment #add_attachment_form {
  margin: 0;
}
/* END ONE DOCUMENT PAGE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  .controller-documents.action-index #main #content {
    padding: 0 10px 20px;
  }
  .controller-documents.action-index #main #content > h2 {
    margin: 0 -10px 0;
    width: calc(100% + 20px);
  }
  .controller-documents.action-index #main #content #add-document {
    padding: 0;
    margin: 20px 0 0;
    -webkit-box-shadow: var(--box-shadow-null);
    -moz-box-shadow: var(--box-shadow-null);
    box-shadow: var(--box-shadow-null);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  .controller-documents.action-index .documents-box {
    background: var(--bg-box);
  }
  .controller-documents.action-index .documents-box h4 a {
    padding: 15px 10px;
  }
  .controller-documents.action-index .documents-box h4 a:after {
    background: var(--icon_bg);
  }
  .controller-documents.action-index .documents-box h4 .open-documents {
    margin: 0 10px;
  }
  .controller-documents.action-index .documents-box h4 .open-documents:after {
    color: var(--icon-color);
  }
  .controller-documents.action-index .documents-box h4 .open-documents:before {
    display: none;
  }
  .controller-documents.action-index .documents-box .open-box .in-open {
    padding: 0 10px;
  }
  .controller-documents.action-index .documents-box .open-box .in-open > * {
    margin: 10px 0;
  }
  .controller-documents.action-index .documents-box .open-box .in-open p em {
    background: var(--bg-fff);
  }
  .controller-documents.action-show #main #content > h2 {
    margin: 0 -10px 20px;
  }
  .controller-documents.action-show #main tr .icon,
  .controller-documents.action-show #main tr .icon-only {
    color: var(--icon-color);
  }
  .controller-documents.action-show #main tr .icon:before,
  .controller-documents.action-show #main tr .icon-only:before {
    background: var(--icon_bg);
  }
}
@media screen and (max-width: 650px) {
  .controller-documents.action-show .attachments {
    padding: 0;
  }
  .controller-documents.action-show .attachments table tr {
    display: block;
    width: 100%;
  }
  .controller-documents.action-show .attachments table tr td {
    display: block;
    width: 100%;
  }
  .controller-documents.action-show .attachments table tr td:last-child {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid var(--color-grey);
  }
  .controller-documents.action-show .attachments table tr:last-child td {
    margin: 0;
    border-bottom: 0;
  }
  .controller-documents.action-show #main > #content #attach_files_link {
    margin-right: 0;
    width: 100%;
    text-align: center;
  }
  .controller-documents.action-index #add-document h2 {
    font-size: 1.1428rem;
    line-height: 1.1428rem;
  }
  .controller-documents.action-index .documents-box {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px) !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -webkit-box-shadow: var(--box-shadow-null) !important;
    -moz-box-shadow: var(--box-shadow-null) !important;
    box-shadow: var(--box-shadow-null) !important;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 480px) {
  .controller-documents.action-show .attachments table tr[id*="attachment-"] {
    display: block;
  }
  .controller-documents.action-show .attachments table tr[id*="attachment-"] td {
    display: block;
    width: 100%;
  }
  .controller-documents.action-show .attachments table tr[id*="attachment-"] td:first-child {
    padding-right: 0;
    padding-bottom: 10px;
    border-bottom: 0;
  }
  .controller-documents.action-show .attachments table tr[id*="attachment-"] td:last-child {
    padding-left: 0;
  }
}
/* END DOCUMENTS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START FORUMS */
#replies {
  margin-bottom: 20px;
}
#replies ~ p {
  margin-top: 0;
}
.controller-messages #content {
  margin: 15px 0 0;
}
.controller-boards .list.messages {
  margin-bottom: 20px;
}
.controller-boards #main > #content #add-message {
  order: 3;
}
#content #message_subject {
  margin-bottom: 10px;
  width: 100%;
}
#content #reply,
#content #reply #message-form {
  margin: 0 0 20px;
}
#content #reply:after,
#content #reply #message-form:after {
  content: '';
  display: block;
  clear: both;
}
#content #reply p,
#content #reply #message-form p {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  font-weight: bold;
}
#content #reply p label,
#content #reply #message-form p label {
  margin: 0 0 10px !important;
  font-weight: bold;
  width: 100% !important;
}
#content #reply p br,
#content #reply #message-form p br {
  display: none;
}
#content #reply p .attachments_form,
#content #reply #message-form p .attachments_form {
  margin-top: 10px;
}
#content #reply p input[type="text"],
#content #reply #message-form p input[type="text"] {
  width: 100%;
}
#content #reply p input[type="checkbox"],
#content #reply #message-form p input[type="checkbox"] {
  margin: 10px 10px 0 0 !important;
}
#content #reply p input[type="checkbox"] + label,
#content #reply #message-form p input[type="checkbox"] + label {
  margin: 12px 10px 0 0 !important;
  width: auto !important;
}
#content a[onclick*="reply"] {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: 0 !important;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0;
  width: auto;
  height: auto;
  text-decoration: none;
}
#content a[onclick*="reply"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
body.avatars-on #replies .redmine-evolution-attachments,
#replies .redmine-evolution-attachments {
  margin-left: -20px;
  margin-right: -20px;
  padding: 5px 20px;
  margin-bottom: 0;
  width: calc(100% + 40px);
}
body.avatars-on #replies .message.reply,
#replies .message.reply,
body.avatars-on #replies div.message,
#replies div.message {
  display: block;
  padding: 15px 20px 15px 20px;
  margin: 15px 0 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  background: var(--bg-box);
  border: 0;
  position: relative;
}
body.avatars-on #replies .message.reply:hover .contextual,
#replies .message.reply:hover .contextual,
body.avatars-on #replies div.message:hover .contextual,
#replies div.message:hover .contextual {
  opacity: 1;
}
body.avatars-on #replies .contextual,
#replies .contextual {
  opacity: 0;
  -webkit-transition: opacity var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out;
}
body.avatars-on #replies h4 img.gravatar,
#replies h4 img.gravatar {
  margin-left: 0;
}
#main #replies .contextual a {
  color: var(--icon-color-bg);
}
#main #replies .contextual a:before {
  background: var(--icon_bg);
}
#main #replies .contextual a:hover {
  color: var(--icon-color-hover-bg);
}
#main #replies .contextual a:hover:before {
  background: var(--icon_bg_hover-bg);
}
#main > #content #replies h3.icon {
  padding: 10px 10px 10px 70px;
  margin-left: -30px;
  margin-right: -30px;
  margin-bottom: 20px;
  width: calc(100% + 60px);
  background-color: var(--bg-box);
  background-position: 30px 50%;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
}
/* END NEWS FOR MAY PAGE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  #replies .contextual {
    opacity: 1;
  }
  .controller-messages.action-show #main > #content {
    padding-bottom: 0;
  }
  .controller-messages.action-show #main > #content > h2 {
    display: block;
  }
  .controller-messages.action-show #main > #content > h2 img {
    float: left;
  }
  .controller-messages #content {
    margin: 0;
  }
}
@media screen and (max-width: 650px) {
  body.avatars-on #replies .message.reply,
  #replies .message.reply,
  body.avatars-on #replies div.message,
  #replies div.message {
    padding: 10px;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  body.avatars-on #replies h4 img.gravatar,
  #replies h4 img.gravatar {
    margin: 0 5px 5px;
  }
  #main > #content #replies h3.icon {
    width: calc(100% + 20px);
    margin-left: -10px;
    margin-right: -10px;
    padding: 10px 10px 10px 40px;
    background-position: 10px 50%;
  }
}
/* END FORUMS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START HEADER */
#header {
  position: absolute;
  top: -999999px;
  left: -999999px;
  padding: 40px 30px 0px 30px;
  margin: 0;
  min-height: 0;
  right: 0;
  display: flex;
  flex: 1 auto;
  z-index: 14;
  align-items: center;
  background-color: var(--bg-body);
  color: var(--text-color);
  -webkit-transition: right var(--time-main) ease-in-out, margin var(--time-main) ease-in-out;
  -moz-transition: right var(--time-main) ease-in-out, margin var(--time-main) ease-in-out;
  -ms-transition: right var(--time-main) ease-in-out, margin var(--time-main) ease-in-out;
  -o-transition: right var(--time-main) ease-in-out, margin var(--time-main) ease-in-out;
  transition: right var(--time-main) ease-in-out, margin var(--time-main) ease-in-out;
  /* --------------------- https://redmine-evolution.com/ -- */
  /* START QUICK SEARCH */
  /* END QUICK SEARCH */
}
#header .jcf-select {
  width: auto;
}
#header a {
  color: #818E94;
}
#header #project-jump .drdn-items > * {
  color: var(--text-color-main) !important;
}
#header h1 {
  flex-grow: 1;
  margin: 0;
  padding: 0 0 0 60px;
  order: 1;
  font-size: 1.28571429rem;
  line-height: 1.4;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  position: relative;
}
#header h1 .breadcrumbs {
  font-weight: 300;
}
#header h1 .breadcrumbs a {
  font-size: 1rem;
  line-height: 1.4;
  color: var(--color-main-color);
}
#header h1 .breadcrumbs .separator {
  font-size: 1rem;
  line-height: 1.4;
}
#header h1:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  background: url("../images/redmine-evolution-small.svg") 0 50% no-repeat;
  background-size: contain;
  width: 50px;
  height: 100%;
}
#header h1 .current-project {
  display: block;
  width: 100%;
  text-overflow: ellipsis;
  overflow: hidden;
}
#header #quick-search {
  float: none;
  order: 2;
  display: flex;
  align-items: center;
  position: fixed;
  top: 5px;
  right: 65px;
}
#header #quick-search .redmineevolution-open-search-link {
  position: absolute;
  top: -9999999px;
  left: -9999999px;
}
#header #quick-search form {
  display: inline;
}
#header #quick-search label {
  font-size: 0.85714286rem;
  font-weight: 500;
}
#header #quick-search #q {
  width: 188px;
  height: 30px;
  border: 1px solid var(--border-color-content) !important;
  font-family: sans-serif;
  background: var(--bg-fff);
  color: var(--text-color-main);
  font-size: 1rem;
  line-height: 1rem;
  font-weight: 400;
  padding: 9px 10px;
  margin: 0 0 0 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  outline-offset: 0;
  outline: 0;
}
#header #quick-search .jcf-select {
  width: 200px;
  margin: 0 0 0 10px;
}
#header #quick-search #project-jump {
  margin: 0 0 0 10px;
}
#header #quick-search #project-jump .drdn-trigger {
  font-family: sans-serif;
  font-weight: 400;
  margin: 0;
  height: 32px;
  border: 1px solid var(--border-color-content);
  background: var(--bg-fff);
  color: var(--border-color-content);
  font-size: 0.85714286rem;
  line-height: 1rem;
  padding: 9px 30px 9px 35px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  position: relative;
}
#header #quick-search #project-jump .drdn-trigger:after {
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: var(--icon-width);
  height: 100%;
  font-family: "WFS-RM-font";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#header #quick-search #project-jump .drdn-trigger:before {
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  right: 0;
  width: var(--icon-width);
  height: 100%;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
  font-family: "WFS-RM-font";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#header #quick-search .drdn-content {
  background: none;
  top: 0;
  width: 100%;
  margin: 0;
  border: 0;
  z-index: 11;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
#header #quick-search .drdn-content .quick-search {
  margin: 0;
  position: relative;
  background: var(--bg-fff);
  -webkit-border-radius: var(--border-radius-small) var(--border-radius-small) 0 0;
  -moz-border-radius: var(--border-radius-small) var(--border-radius-small) 0 0;
  border-radius: var(--border-radius-small) var(--border-radius-small) 0 0;
}
#header #quick-search .drdn-content .quick-search:after {
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 1px;
  width: var(--icon-width);
  height: var(--icon-width);
  font-family: "WFS-RM-font";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#header #quick-search .drdn-content .quick-search:before {
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  right: 0;
  width: var(--icon-width);
  height: 100%;
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
  font-family: "WFS-RM-font";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#header #quick-search .drdn-content .drdn-items {
  background: var(--bg-fff);
  border: 1px solid var(--border-color-content);
  border-top: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#header #quick-search .drdn-content .drdn-items a {
  border: none;
}
#header #quick-search .drdn-content .drdn-items.all-projects {
  -webkit-border-radius: 0 0 var(--border-radius-small) var(--border-radius-small);
  -moz-border-radius: 0 0 var(--border-radius-small) var(--border-radius-small);
  border-radius: 0 0 var(--border-radius-small) var(--border-radius-small);
}
#header #quick-search .drdn-content input.autocomplete {
  font-family: sans-serif;
  font-weight: 400;
  background: none;
  background-size: 15px auto;
  width: 100% !important;
  max-width: inherit;
  font-size: 1rem;
  color: var(--text-color-main);
  outline: none;
  outline: 0;
  height: 32px;
  padding: 9px 10px 9px 35px !important;
  border: 1px solid var(--border-color-content);
  margin: 0;
  border-bottom: 1px solid var(--border-color-content);
  -webkit-border-radius: var(--border-radius-small) var(--border-radius-small) 0 0;
  -moz-border-radius: var(--border-radius-small) var(--border-radius-small) 0 0;
  border-radius: var(--border-radius-small) var(--border-radius-small) 0 0;
  box-shadow: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: border-bottom var(--time-hover) ease-in-out;
  -moz-transition: border-bottom var(--time-hover) ease-in-out;
  transition: border-bottom var(--time-hover) ease-in-out;
}
#header #quick-search .drdn-content input.autocomplete:focus {
  border-bottom: 1px solid var(--color-main-color);
}
#header #quick-search .drdn-items strong {
  font-size: 0.85714286rem;
  line-height: 1.4;
  padding: 5px 10px;
}
#header #quick-search .drdn-items strong:before {
  display: none;
}
#header #quick-search .drdn-items a {
  padding: 5px 10px;
  font-size: 0.85714286rem;
  line-height: 1.4;
  box-shadow: none;
  outline: none;
  outline: 0;
  -webkit-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  position: relative;
  z-index: 2;
}
#header #quick-search .drdn-items a:before {
  display: none;
}
#header #quick-search .drdn-items a:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 100%;
  background: var(--all-hover-bg);
  z-index: -1;
  -webkit-transition: width var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out;
}
#header #quick-search .drdn-items a:hover,
#header #quick-search .drdn-items a:focus {
  background: none;
  color: var(--all-hover-bg-color) !important;
}
#header #quick-search .drdn-items a:hover:after,
#header #quick-search .drdn-items a:focus:after {
  width: 100%;
}
#header #quick-search .expanded .drdn-content .quick-search:before {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#header #quick-search #project-jump.expanded .drdn-trigger:before {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
@media screen and (max-width: 1024px) {
  .controller-account #wrapper #header {
    left: auto;
    right: 0;
  }
  .controller-account #wrapper3 {
    padding-top: 60px;
  }
  .controller-account #footer {
    background: var(--bg-fff);
  }
  .flyout-is-active #wrapper,
  .flyout-is-active #wrapper #header {
    right: 250px;
  }
  #wrapper #header {
    width: 100%;
    min-height: 0;
    margin: 0;
    border: none;
    position: fixed;
    top: 0;
    left: auto;
    right: 0;
    padding: 10px 40px 10px 10px;
    background-color: var(--bg-fff);
    height: auto;
    border-bottom: 1px solid var(--border-color);
    z-index: 100;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #wrapper #header #top-menu,
  #wrapper #header #header #main-menu {
    display: none;
  }
  #wrapper #header h1 {
    display: block !important;
    font-size: 1rem;
    line-height: 30px;
    padding: 0 0 0 35px;
    height: 30px;
    min-height: 30px;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  #wrapper #header h1:after {
    width: var(--icon-width);
    height: var(--icon-width);
    margin: 0;
  }
  #wrapper #header #quick-search,
  #wrapper #header h1 .breadcrumbs {
    display: none !important;
  }
  #wrapper #header .mobile-toggle-button {
    position: absolute;
    top: 50%;
    right: 0px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    color: var(--color-main-color);
    border: none;
    display: block;
  }
  #wrapper #header .mobile-toggle-button:after {
    font-family: Verdana, sans-serif;
    display: block;
    content: '\2261';
    margin: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    font-size: 35px;
    line-height: 40px;
  }
  #wrapper #project-jump.drdn {
    height: 40px;
    padding: 0 70px 0 0;
  }
  #wrapper #project-jump.drdn .drdn-trigger {
    height: 40px;
    color: var(--text-color-main);
    font-size: 1rem;
    line-height: 28px;
    position: relative;
    padding: 5px 0 5px 50px;
  }
  #wrapper #project-jump.drdn .drdn-trigger:before {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 40px;
    height: 40px;
    padding: 0;
    text-align: center;
    font-size: 20px;
    line-height: 44px;
    opacity: 1;
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-transition: transform var(--time-hover) ease-in-out;
    -moz-transition: transform var(--time-hover) ease-in-out;
    -ms-transition: transform var(--time-hover) ease-in-out;
    -o-transition: transform var(--time-hover) ease-in-out;
    transition: transform var(--time-hover) ease-in-out;
  }
  #wrapper #project-jump.drdn .drdn-trigger:after {
    content: '';
    display: block;
    clear: both;
    position: absolute;
    top: 0px;
    left: 41px;
    width: 1px;
    height: 100%;
    background: var(--text-color-main);
  }
  #wrapper #project-jump.expanded .drdn-trigger:before {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  #wrapper .flyout-menu__search {
    height: auto;
    line-height: inherit;
    position: relative;
    margin: 0 0 10px;
    padding-top: 8px;
    padding-left: 10px;
    padding-right: 10px;
  }
  #wrapper .flyout-menu__search input[type='text'] {
    height: 30px;
    font-size: 1rem;
    line-height: 20px;
    padding: 5px 30px 5px 5px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    -webkit-border-radius: var(--border-radius-small);
    -moz-border-radius: var(--border-radius-small);
    border-radius: var(--border-radius-small);
  }
  #wrapper .search-magnifier--flyout {
    display: none !important;
  }
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 768px) {
  #header {
    padding: 20px 20px;
  }
}
@media screen and (max-width: 650px) {
  #wrapper #header {
    padding-right: 115px;
  }
}
/* END HEADER */
/* --------------------- https://redmine-evolution.com/ -- */
/* 20.03.2022 */
/* START GLOBAL IMAGES */
/* END GLOBAL IMAGES */
/* START ICON FONTS */
a.icon:after,
a.icon-only:after,
a.risks:after {
  content: "\E19F";
}
a[href*="my/avatar"]:after {
  content: "\E0E4";
}
a[href*="dmsf/webdav"]:after {
  content: "\E102";
}
.icon-heart[data-method="delete"]:after {
  content: "\E195" !important;
}
.icon-heart-off:after,
.heart-count-number:after {
  content: "\E12A";
}
.display-menu-link[href*="/kanban"]:after {
  content: "\E137";
}
.icon.icon-heart-off:after,
.hearts:after {
  content: "\E13E";
}
.sprint:after {
  content: "\E17F";
}
.icon.icon-sprint-board:after {
  content: "\E186";
}
.icon.icon-burndown:after {
  content: "\E186";
}
.product-backlog:after {
  content: "\E0E7";
}
.icon.icon-normal-screen:after {
  content: "\E0E7";
}
.icon.icon-normal-screen:after {
  content: "\E1A3";
}
.icon.icon-merge:after {
  content: "\E146";
}
a[href*="highest"]:after {
  content: "\E198";
}
a[href*="higher"]:after {
  content: "\E197";
}
.spectator:after {
  content: "\E0EF";
}
a[href*="lower"]:after {
  content: "\E10E";
}
a[href*="lowest"]:after {
  content: "\E10F";
}
a[onclick*="$('#existing-attachments').toggle()"]:after {
  content: "\E113";
}
.diff:after {
  content: "\E107";
}
a.redmine-git-hosting:after,
a.icon.redmine-git-hosting:after {
  content: "\E127";
}
a.icon.release-log-configurations:after,
a.icon.release-log-queues:after {
  content: "\E143";
}
a.icon-view_customize-disable:after {
  content: "\E11D";
}
a.icon-view_customize-enable:after {
  content: "\E11C";
}
a.icon-root-page:after {
  content: "\E11D";
}
a.icon.vault:after {
  content: "\E15C";
}
a.icon.icon-view_customize:after {
  content: "\E11D";
}
a.icon.preview-release-log:after {
  content: "\E11D";
}
a.icon.icon-reply:after {
  content: "\E0F7";
}
.icon.icon-sync:after,
.icon-sync:after {
  content: "\E171";
}
body #top-menu > ul > li > .archived-repositories:after,
.archived-repositories:after {
  content: "\E0D9";
}
body #top-menu > ul > li > .release-logs:after,
.release-logs:after {
  content: "\E143";
}
.issuevm:after {
  content: "\E117";
}
#top-menu a[href*='knowledgebase']:after,
#main-menu a[href*='knowledgebase']:after {
  content: "\E13B";
}
.icon-sidebar:after {
  content: "\E104";
}
a.dropdown-toggle:after {
  content: "\E158";
}
a.my-name:after {
  content: "\E19A";
}
.odt:after {
  content: "\E154";
}
.has-main-menu #header #main-menu ul a,
.has-main-menu #header #admin-menu ul a,
body #top-menu > ul > li > a,
a,
span,
.icon:not(dt):not(td),
a.icon-only {
  /* START ICONS FOR BUTTON */
  /* END ICONS FOR BUTTON */
}
.has-main-menu #header #main-menu ul a.icon-copy-link:after,
.has-main-menu #header #admin-menu ul a.icon-copy-link:after,
body #top-menu > ul > li > a.icon-copy-link:after,
a.icon-copy-link:after,
span.icon-copy-link:after,
.icon:not(dt):not(td).icon-copy-link:after,
a.icon-only.icon-copy-link:after,
.has-main-menu #header #main-menu ul a.icon-invoice-public-link:after,
.has-main-menu #header #admin-menu ul a.icon-invoice-public-link:after,
body #top-menu > ul > li > a.icon-invoice-public-link:after,
a.icon-invoice-public-link:after,
span.icon-invoice-public-link:after,
.icon:not(dt):not(td).icon-invoice-public-link:after,
a.icon-only.icon-invoice-public-link:after,
.has-main-menu #header #main-menu ul a.icon-public-link:after,
.has-main-menu #header #admin-menu ul a.icon-public-link:after,
body #top-menu > ul > li > a.icon-public-link:after,
a.icon-public-link:after,
span.icon-public-link:after,
.icon:not(dt):not(td).icon-public-link:after,
a.icon-only.icon-public-link:after {
  content: "\E119";
}
.has-main-menu #header #main-menu ul a.tags:after,
.has-main-menu #header #admin-menu ul a.tags:after,
body #top-menu > ul > li > a.tags:after,
a.tags:after,
span.tags:after,
.icon:not(dt):not(td).tags:after,
a.icon-only.tags:after {
  content: "\E18F";
}
.has-main-menu #header #main-menu ul a.assign-to-me:after,
.has-main-menu #header #admin-menu ul a.assign-to-me:after,
body #top-menu > ul > li > a.assign-to-me:after,
a.assign-to-me:after,
span.assign-to-me:after,
.icon:not(dt):not(td).assign-to-me:after,
a.icon-only.assign-to-me:after {
  content: "\E19A";
}
.has-main-menu #header #main-menu ul a.icon-youtube:after,
.has-main-menu #header #admin-menu ul a.icon-youtube:after,
body #top-menu > ul > li > a.icon-youtube:after,
a.icon-youtube:after,
span.icon-youtube:after,
.icon:not(dt):not(td).icon-youtube:after,
a.icon-only.icon-youtube:after {
  content: "\E1A8";
  color: #fd7285;
}
.has-main-menu #header #main-menu ul a.icon-print:after,
.has-main-menu #header #admin-menu ul a.icon-print:after,
body #top-menu > ul > li > a.icon-print:after,
a.icon-print:after,
span.icon-print:after,
.icon:not(dt):not(td).icon-print:after,
a.icon-only.icon-print:after {
  content: "\E16A";
}
.has-main-menu #header #main-menu ul a.icon-back:after,
.has-main-menu #header #admin-menu ul a.icon-back:after,
body #top-menu > ul > li > a.icon-back:after,
a.icon-back:after,
span.icon-back:after,
.icon:not(dt):not(td).icon-back:after,
a.icon-only.icon-back:after {
  content: "\E0E5";
}
.has-main-menu #header #main-menu ul a.journal-link:after,
.has-main-menu #header #admin-menu ul a.journal-link:after,
body #top-menu > ul > li > a.journal-link:after,
a.journal-link:after,
span.journal-link:after,
.icon:not(dt):not(td).journal-link:after,
a.icon-only.journal-link:after {
  content: "\E152";
}
.has-main-menu #header #main-menu ul a.us-my-issues:after,
.has-main-menu #header #admin-menu ul a.us-my-issues:after,
body #top-menu > ul > li > a.us-my-issues:after,
a.us-my-issues:after,
span.us-my-issues:after,
.icon:not(dt):not(td).us-my-issues:after,
a.icon-only.us-my-issues:after {
  content: "\E11E";
}
.has-main-menu #header #main-menu ul a.icon-bookmark:after,
.has-main-menu #header #admin-menu ul a.icon-bookmark:after,
body #top-menu > ul > li > a.icon-bookmark:after,
a.icon-bookmark:after,
span.icon-bookmark:after,
.icon:not(dt):not(td).icon-bookmark:after,
a.icon-only.icon-bookmark:after,
.has-main-menu #header #main-menu ul a.bookmark:after,
.has-main-menu #header #admin-menu ul a.bookmark:after,
body #top-menu > ul > li > a.bookmark:after,
a.bookmark:after,
span.bookmark:after,
.icon:not(dt):not(td).bookmark:after,
a.icon-only.bookmark:after {
  content: "\E0EC";
}
.has-main-menu #header #main-menu ul a.icon-list:after,
.has-main-menu #header #admin-menu ul a.icon-list:after,
body #top-menu > ul > li > a.icon-list:after,
a.icon-list:after,
span.icon-list:after,
.icon:not(dt):not(td).icon-list:after,
a.icon-only.icon-list:after {
  content: "\E133";
}
.has-main-menu #header #main-menu ul a.repeat-value:after,
.has-main-menu #header #admin-menu ul a.repeat-value:after,
body #top-menu > ul > li > a.repeat-value:after,
a.repeat-value:after,
span.repeat-value:after,
.icon:not(dt):not(td).repeat-value:after,
a.icon-only.repeat-value:after {
  content: "\E0DC";
}
.has-main-menu #header #main-menu ul a.agile-backlog:after,
.has-main-menu #header #admin-menu ul a.agile-backlog:after,
body #top-menu > ul > li > a.agile-backlog:after,
a.agile-backlog:after,
span.agile-backlog:after,
.icon:not(dt):not(td).agile-backlog:after,
a.icon-only.agile-backlog:after,
.has-main-menu #header #main-menu ul a.dashboard:after,
.has-main-menu #header #admin-menu ul a.dashboard:after,
body #top-menu > ul > li > a.dashboard:after,
a.dashboard:after,
span.dashboard:after,
.icon:not(dt):not(td).dashboard:after,
a.icon-only.dashboard:after {
  content: "\E164";
}
.has-main-menu #header #main-menu ul a.backlog:after,
.has-main-menu #header #admin-menu ul a.backlog:after,
body #top-menu > ul > li > a.backlog:after,
a.backlog:after,
span.backlog:after,
.icon:not(dt):not(td).backlog:after,
a.icon-only.backlog:after {
  content: "\E164";
}
.has-main-menu #header #main-menu ul a.roadmap:after,
.has-main-menu #header #admin-menu ul a.roadmap:after,
body #top-menu > ul > li > a.roadmap:after,
a.roadmap:after,
span.roadmap:after,
.icon:not(dt):not(td).roadmap:after,
a.icon-only.roadmap:after {
  content: "\E178";
}
.has-main-menu #header #main-menu ul a.icon-warning:after,
.has-main-menu #header #admin-menu ul a.icon-warning:after,
body #top-menu > ul > li > a.icon-warning:after,
a.icon-warning:after,
span.icon-warning:after,
.icon:not(dt):not(td).icon-warning:after,
a.icon-only.icon-warning:after {
  content: "\E19F";
}
.has-main-menu #header #main-menu ul a.home:after,
.has-main-menu #header #admin-menu ul a.home:after,
body #top-menu > ul > li > a.home:after,
a.home:after,
span.home:after,
.icon:not(dt):not(td).home:after,
a.icon-only.home:after {
  content: "\E12D";
}
.has-main-menu #header #main-menu ul a.invoices:after,
.has-main-menu #header #admin-menu ul a.invoices:after,
body #top-menu > ul > li > a.invoices:after,
a.invoices:after,
span.invoices:after,
.icon:not(dt):not(td).invoices:after,
a.icon-only.invoices:after,
.has-main-menu #header #main-menu ul a.icon-invoice:after,
.has-main-menu #header #admin-menu ul a.icon-invoice:after,
body #top-menu > ul > li > a.icon-invoice:after,
a.icon-invoice:after,
span.icon-invoice:after,
.icon:not(dt):not(td).icon-invoice:after,
a.icon-only.icon-invoice:after {
  content: "\E132";
}
.has-main-menu #header #main-menu ul a.my-page:after,
.has-main-menu #header #admin-menu ul a.my-page:after,
body #top-menu > ul > li > a.my-page:after,
a.my-page:after,
span.my-page:after,
.icon:not(dt):not(td).my-page:after,
a.icon-only.my-page:after {
  content: "\E14B";
}
.has-main-menu #header #main-menu ul a.projects:after,
.has-main-menu #header #admin-menu ul a.projects:after,
body #top-menu > ul > li > a.projects:after,
a.projects:after,
span.projects:after,
.icon:not(dt):not(td).projects:after,
a.icon-only.projects:after {
  content: "\E16C";
}
.has-main-menu #header #main-menu ul a.administration:after,
.has-main-menu #header #admin-menu ul a.administration:after,
body #top-menu > ul > li > a.administration:after,
a.administration:after,
span.administration:after,
.icon:not(dt):not(td).administration:after,
a.icon-only.administration:after {
  content: "\E0D7";
}
.has-main-menu #header #main-menu ul a.help:after,
.has-main-menu #header #admin-menu ul a.help:after,
body #top-menu > ul > li > a.help:after,
a.help:after,
span.help:after,
.icon:not(dt):not(td).help:after,
a.icon-only.help:after {
  content: "\E12B";
}
.has-main-menu #header #main-menu ul a.my-account:after,
.has-main-menu #header #admin-menu ul a.my-account:after,
body #top-menu > ul > li > a.my-account:after,
a.my-account:after,
span.my-account:after,
.icon:not(dt):not(td).my-account:after,
a.icon-only.my-account:after {
  content: "\E14A";
}
.has-main-menu #header #main-menu ul a.user:after,
.has-main-menu #header #admin-menu ul a.user:after,
body #top-menu > ul > li > a.user:after,
a.user:after,
span.user:after,
.icon:not(dt):not(td).user:after,
a.icon-only.user:after {
  content: "\E19A";
}
.has-main-menu #header #main-menu ul a.logout:after,
.has-main-menu #header #admin-menu ul a.logout:after,
body #top-menu > ul > li > a.logout:after,
a.logout:after,
span.logout:after,
.icon:not(dt):not(td).logout:after,
a.icon-only.logout:after {
  content: "\E142";
}
.has-main-menu #header #main-menu ul a.people:after,
.has-main-menu #header #admin-menu ul a.people:after,
body #top-menu > ul > li > a.people:after,
a.people:after,
span.people:after,
.icon:not(dt):not(td).people:after,
a.icon-only.people:after {
  content: "\E15F";
}
.has-main-menu #header #main-menu ul a.questions:after,
.has-main-menu #header #admin-menu ul a.questions:after,
body #top-menu > ul > li > a.questions:after,
a.questions:after,
span.questions:after,
.icon:not(dt):not(td).questions:after,
a.icon-only.questions:after {
  content: "\E16D";
}
.has-main-menu #header #main-menu ul a.resources:after,
.has-main-menu #header #admin-menu ul a.resources:after,
body #top-menu > ul > li > a.resources:after,
a.resources:after,
span.resources:after,
.icon:not(dt):not(td).resources:after,
a.icon-only.resources:after {
  content: "\E176";
}
.has-main-menu #header #main-menu ul a.finance:after,
.has-main-menu #header #admin-menu ul a.finance:after,
body #top-menu > ul > li > a.finance:after,
a.finance:after,
span.finance:after,
.icon:not(dt):not(td).finance:after,
a.icon-only.finance:after {
  content: "\E121";
}
.has-main-menu #header #main-menu ul a.login:after,
.has-main-menu #header #admin-menu ul a.login:after,
body #top-menu > ul > li > a.login:after,
a.login:after,
span.login:after,
.icon:not(dt):not(td).login:after,
a.icon-only.login:after {
  content: "\E141";
}
.has-main-menu #header #main-menu ul a.register:after,
.has-main-menu #header #admin-menu ul a.register:after,
body #top-menu > ul > li > a.register:after,
a.register:after,
span.register:after,
.icon:not(dt):not(td).register:after,
a.icon-only.register:after {
  content: "\E16F";
}
.has-main-menu #header #main-menu ul a.contacts:after,
.has-main-menu #header #admin-menu ul a.contacts:after,
body #top-menu > ul > li > a.contacts:after,
a.contacts:after,
span.contacts:after,
.icon:not(dt):not(td).contacts:after,
a.icon-only.contacts:after {
  content: "\E0F9";
}
.has-main-menu #header #main-menu ul a.deals:after,
.has-main-menu #header #admin-menu ul a.deals:after,
body #top-menu > ul > li > a.deals:after,
a.deals:after,
span.deals:after,
.icon:not(dt):not(td).deals:after,
a.icon-only.deals:after {
  content: "\E103";
}
.has-main-menu #header #main-menu ul a.products:after,
.has-main-menu #header #admin-menu ul a.products:after,
body #top-menu > ul > li > a.products:after,
a.products:after,
span.products:after,
.icon:not(dt):not(td).products:after,
a.icon-only.products:after {
  content: "\E16B";
}
.has-main-menu #header #main-menu ul a.orders:after,
.has-main-menu #header #admin-menu ul a.orders:after,
body #top-menu > ul > li > a.orders:after,
a.orders:after,
span.orders:after,
.icon:not(dt):not(td).orders:after,
a.icon-only.orders:after {
  content: "\E159";
}
.has-main-menu #header #main-menu ul a.expenses:after,
.has-main-menu #header #admin-menu ul a.expenses:after,
body #top-menu > ul > li > a.expenses:after,
a.expenses:after,
span.expenses:after,
.icon:not(dt):not(td).expenses:after,
a.icon-only.expenses:after {
  content: "\E118";
}
.has-main-menu #header #main-menu ul a.new-object:after,
.has-main-menu #header #admin-menu ul a.new-object:after,
body #top-menu > ul > li > a.new-object:after,
a.new-object:after,
span.new-object:after,
.icon:not(dt):not(td).new-object:after,
a.icon-only.new-object:after {
  content: "\E14C";
  text-indent: 0;
}
.has-main-menu #header #main-menu ul a.projects:after,
.has-main-menu #header #admin-menu ul a.projects:after,
body #top-menu > ul > li > a.projects:after,
a.projects:after,
span.projects:after,
.icon:not(dt):not(td).projects:after,
a.icon-only.projects:after {
  content: "\E16C";
}
.has-main-menu #header #main-menu ul a.overview:after,
.has-main-menu #header #admin-menu ul a.overview:after,
body #top-menu > ul > li > a.overview:after,
a.overview:after,
span.overview:after,
.icon:not(dt):not(td).overview:after,
a.icon-only.overview:after {
  content: "\E15A";
}
.has-main-menu #header #main-menu ul a[href="/activity"]:after,
.has-main-menu #header #admin-menu ul a[href="/activity"]:after,
body #top-menu > ul > li > a[href="/activity"]:after,
a[href="/activity"]:after,
span[href="/activity"]:after,
.icon:not(dt):not(td)[href="/activity"]:after,
a.icon-only[href="/activity"]:after,
.has-main-menu #header #main-menu ul a.activity:after,
.has-main-menu #header #admin-menu ul a.activity:after,
body #top-menu > ul > li > a.activity:after,
a.activity:after,
span.activity:after,
.icon:not(dt):not(td).activity:after,
a.icon-only.activity:after {
  content: "\E0D4";
}
.has-main-menu #header #main-menu ul a[href="/issues"]:after,
.has-main-menu #header #admin-menu ul a[href="/issues"]:after,
body #top-menu > ul > li > a[href="/issues"]:after,
a[href="/issues"]:after,
span[href="/issues"]:after,
.icon:not(dt):not(td)[href="/issues"]:after,
a.icon-only[href="/issues"]:after,
.has-main-menu #header #main-menu ul a.issues:after,
.has-main-menu #header #admin-menu ul a.issues:after,
body #top-menu > ul > li > a.issues:after,
a.issues:after,
span.issues:after,
.icon:not(dt):not(td).issues:after,
a.icon-only.issues:after {
  content: "\E133";
}
.has-main-menu #header #main-menu ul a[href="/time_entries"]:after,
.has-main-menu #header #admin-menu ul a[href="/time_entries"]:after,
body #top-menu > ul > li > a[href="/time_entries"]:after,
a[href="/time_entries"]:after,
span[href="/time_entries"]:after,
.icon:not(dt):not(td)[href="/time_entries"]:after,
a.icon-only[href="/time_entries"]:after,
.has-main-menu #header #main-menu ul a.time-entries:after,
.has-main-menu #header #admin-menu ul a.time-entries:after,
body #top-menu > ul > li > a.time-entries:after,
a.time-entries:after,
span.time-entries:after,
.icon:not(dt):not(td).time-entries:after,
a.icon-only.time-entries:after {
  content: "\E193";
}
.has-main-menu #header #main-menu ul a.gantt:after,
.has-main-menu #header #admin-menu ul a.gantt:after,
body #top-menu > ul > li > a.gantt:after,
a.gantt:after,
span.gantt:after,
.icon:not(dt):not(td).gantt:after,
a.icon-only.gantt:after {
  content: "\E124";
}
.has-main-menu #header #main-menu ul a.agile:after,
.has-main-menu #header #admin-menu ul a.agile:after,
body #top-menu > ul > li > a.agile:after,
a.agile:after,
span.agile:after,
.icon:not(dt):not(td).agile:after,
a.icon-only.agile:after {
  content: "\E0D8";
}
.has-main-menu #header #main-menu ul a.icon-calendar:after,
.has-main-menu #header #admin-menu ul a.icon-calendar:after,
body #top-menu > ul > li > a.icon-calendar:after,
a.icon-calendar:after,
span.icon-calendar:after,
.icon:not(dt):not(td).icon-calendar:after,
a.icon-only.icon-calendar:after,
.has-main-menu #header #main-menu ul a.calendar:after,
.has-main-menu #header #admin-menu ul a.calendar:after,
body #top-menu > ul > li > a.calendar:after,
a.calendar:after,
span.calendar:after,
.icon:not(dt):not(td).calendar:after,
a.icon-only.calendar:after {
  content: "\E0ED";
}
.has-main-menu #header #main-menu ul a.news:after,
.has-main-menu #header #admin-menu ul a.news:after,
body #top-menu > ul > li > a.news:after,
a.news:after,
span.news:after,
.icon:not(dt):not(td).news:after,
a.icon-only.news:after {
  content: "\E14E";
}
.has-main-menu #header #main-menu ul a.documents:after,
.has-main-menu #header #admin-menu ul a.documents:after,
body #top-menu > ul > li > a.documents:after,
a.documents:after,
span.documents:after,
.icon:not(dt):not(td).documents:after,
a.icon-only.documents:after {
  content: "\E10B";
}
.has-main-menu #header #main-menu ul a.wiki:after,
.has-main-menu #header #admin-menu ul a.wiki:after,
body #top-menu > ul > li > a.wiki:after,
a.wiki:after,
span.wiki:after,
.icon:not(dt):not(td).wiki:after,
a.icon-only.wiki:after {
  content: "\E1A1";
}
.has-main-menu #header #main-menu ul a.files:after,
.has-main-menu #header #admin-menu ul a.files:after,
body #top-menu > ul > li > a.files:after,
a.files:after,
span.files:after,
.icon:not(dt):not(td).files:after,
a.icon-only.files:after {
  content: "\E11B";
}
.has-main-menu #header #main-menu ul a.repository:after,
.has-main-menu #header #admin-menu ul a.repository:after,
body #top-menu > ul > li > a.repository:after,
a.repository:after,
span.repository:after,
.icon:not(dt):not(td).repository:after,
a.icon-only.repository:after {
  content: "\E175";
}
.has-main-menu #header #main-menu ul a.contacts:after,
.has-main-menu #header #admin-menu ul a.contacts:after,
body #top-menu > ul > li > a.contacts:after,
a.contacts:after,
span.contacts:after,
.icon:not(dt):not(td).contacts:after,
a.icon-only.contacts:after {
  content: "\E0F9";
}
.has-main-menu #header #main-menu ul a.deals:after,
.has-main-menu #header #admin-menu ul a.deals:after,
body #top-menu > ul > li > a.deals:after,
a.deals:after,
span.deals:after,
.icon:not(dt):not(td).deals:after,
a.icon-only.deals:after {
  content: "\E103";
}
.has-main-menu #header #main-menu ul a.expenses:after,
.has-main-menu #header #admin-menu ul a.expenses:after,
body #top-menu > ul > li > a.expenses:after,
a.expenses:after,
span.expenses:after,
.icon:not(dt):not(td).expenses:after,
a.icon-only.expenses:after {
  content: "\E118";
}
.has-main-menu #header #main-menu ul a.icon-invoice-add-context:after,
.has-main-menu #header #admin-menu ul a.icon-invoice-add-context:after,
body #top-menu > ul > li > a.icon-invoice-add-context:after,
a.icon-invoice-add-context:after,
span.icon-invoice-add-context:after,
.icon:not(dt):not(td).icon-invoice-add-context:after,
a.icon-only.icon-invoice-add-context:after {
  content: "\E132";
}
.has-main-menu #header #main-menu ul a.operations:after,
.has-main-menu #header #admin-menu ul a.operations:after,
body #top-menu > ul > li > a.operations:after,
a.operations:after,
span.operations:after,
.icon:not(dt):not(td).operations:after,
a.icon-only.operations:after,
.has-main-menu #header #main-menu ul a.finance:after,
.has-main-menu #header #admin-menu ul a.finance:after,
body #top-menu > ul > li > a.finance:after,
a.finance:after,
span.finance:after,
.icon:not(dt):not(td).finance:after,
a.icon-only.finance:after {
  content: "\E121";
}
.has-main-menu #header #main-menu ul a.products:after,
.has-main-menu #header #admin-menu ul a.products:after,
body #top-menu > ul > li > a.products:after,
a.products:after,
span.products:after,
.icon:not(dt):not(td).products:after,
a.icon-only.products:after {
  content: "\E16B";
}
.has-main-menu #header #main-menu ul a.orders:after,
.has-main-menu #header #admin-menu ul a.orders:after,
body #top-menu > ul > li > a.orders:after,
a.orders:after,
span.orders:after,
.icon:not(dt):not(td).orders:after,
a.icon-only.orders:after {
  content: "\E0EE";
}
.has-main-menu #header #main-menu ul a.settings:after,
.has-main-menu #header #admin-menu ul a.settings:after,
body #top-menu > ul > li > a.settings:after,
a.settings:after,
span.settings:after,
.icon:not(dt):not(td).settings:after,
a.icon-only.settings:after {
  content: "\E182";
}
.has-main-menu #header #main-menu ul a.resources:after,
.has-main-menu #header #admin-menu ul a.resources:after,
body #top-menu > ul > li > a.resources:after,
a.resources:after,
span.resources:after,
.icon:not(dt):not(td).resources:after,
a.icon-only.resources:after {
  content: "\E176";
}
.has-main-menu #header #main-menu ul a.questions:after,
.has-main-menu #header #admin-menu ul a.questions:after,
body #top-menu > ul > li > a.questions:after,
a.questions:after,
span.questions:after,
.icon:not(dt):not(td).questions:after,
a.icon-only.questions:after {
  content: "\E16D";
}
.has-main-menu #header #main-menu ul a.icon-roles:after,
.has-main-menu #header #admin-menu ul a.icon-roles:after,
body #top-menu > ul > li > a.icon-roles:after,
a.icon-roles:after,
span.icon-roles:after,
.icon:not(dt):not(td).icon-roles:after,
a.icon-only.icon-roles:after {
  content: "\E179";
}
.has-main-menu #header #main-menu ul a.icon-group:after,
.has-main-menu #header #admin-menu ul a.icon-group:after,
body #top-menu > ul > li > a.icon-group:after,
a.icon-group:after,
span.icon-group:after,
.icon:not(dt):not(td).icon-group:after,
a.icon-only.icon-group:after {
  content: "\E129";
}
.has-main-menu #header #main-menu ul a.icon-issue.trackers:after,
.has-main-menu #header #admin-menu ul a.icon-issue.trackers:after,
body #top-menu > ul > li > a.icon-issue.trackers:after,
a.icon-issue.trackers:after,
span.icon-issue.trackers:after,
.icon:not(dt):not(td).icon-issue.trackers:after,
a.icon-only.icon-issue.trackers:after {
  content: "\E193";
}
.has-main-menu #header #main-menu ul a.issue-statuses:after,
.has-main-menu #header #admin-menu ul a.issue-statuses:after,
body #top-menu > ul > li > a.issue-statuses:after,
a.issue-statuses:after,
span.issue-statuses:after,
.icon:not(dt):not(td).issue-statuses:after,
a.icon-only.issue-statuses:after {
  content: "\E133";
}
.has-main-menu #header #main-menu ul a.icon-workflows:after,
.has-main-menu #header #admin-menu ul a.icon-workflows:after,
body #top-menu > ul > li > a.icon-workflows:after,
a.icon-workflows:after,
span.icon-workflows:after,
.icon:not(dt):not(td).icon-workflows:after,
a.icon-only.icon-workflows:after {
  content: "\E1A2";
}
.has-main-menu #header #main-menu ul a.enumerations:after,
.has-main-menu #header #admin-menu ul a.enumerations:after,
body #top-menu > ul > li > a.enumerations:after,
a.enumerations:after,
span.enumerations:after,
.icon:not(dt):not(td).enumerations:after,
a.icon-only.enumerations:after {
  content: "\E115";
}
.has-main-menu #header #main-menu ul a.custom-fields:after,
.has-main-menu #header #admin-menu ul a.custom-fields:after,
body #top-menu > ul > li > a.custom-fields:after,
a.custom-fields:after,
span.custom-fields:after,
.icon:not(dt):not(td).custom-fields:after,
a.icon-only.custom-fields:after {
  content: "\E101";
}
.has-main-menu #header #main-menu ul a.ldap-authentication:after,
.has-main-menu #header #admin-menu ul a.ldap-authentication:after,
body #top-menu > ul > li > a.ldap-authentication:after,
a.ldap-authentication:after,
span.ldap-authentication:after,
.icon:not(dt):not(td).ldap-authentication:after,
a.icon-only.ldap-authentication:after {
  content: "\E13C";
}
.has-main-menu #header #main-menu ul a.helpdesk:after,
.has-main-menu #header #admin-menu ul a.helpdesk:after,
body #top-menu > ul > li > a.helpdesk:after,
a.helpdesk:after,
span.helpdesk:after,
.icon:not(dt):not(td).helpdesk:after,
a.icon-only.helpdesk:after {
  content: "\E16D";
}
.has-main-menu #header #main-menu ul a.mailchimp-settings:after,
.has-main-menu #header #admin-menu ul a.mailchimp-settings:after,
body #top-menu > ul > li > a.mailchimp-settings:after,
a.mailchimp-settings:after,
span.mailchimp-settings:after,
.icon:not(dt):not(td).mailchimp-settings:after,
a.icon-only.mailchimp-settings:after {
  content: "\E06C";
}
.has-main-menu #header #main-menu ul a.icon-plugins:after,
.has-main-menu #header #admin-menu ul a.icon-plugins:after,
body #top-menu > ul > li > a.icon-plugins:after,
a.icon-plugins:after,
span.icon-plugins:after,
.icon:not(dt):not(td).icon-plugins:after,
a.icon-only.icon-plugins:after {
  content: "\E166";
}
.has-main-menu #header #main-menu ul a.revo-icon-info:after,
.has-main-menu #header #admin-menu ul a.revo-icon-info:after,
body #top-menu > ul > li > a.revo-icon-info:after,
a.revo-icon-info:after,
span.revo-icon-info:after,
.icon:not(dt):not(td).revo-icon-info:after,
a.icon-only.revo-icon-info:after,
.has-main-menu #header #main-menu ul a.icon-help:after,
.has-main-menu #header #admin-menu ul a.icon-help:after,
body #top-menu > ul > li > a.icon-help:after,
a.icon-help:after,
span.icon-help:after,
.icon:not(dt):not(td).icon-help:after,
a.icon-only.icon-help:after,
.has-main-menu #header #main-menu ul a.icon-test:after,
.has-main-menu #header #admin-menu ul a.icon-test:after,
body #top-menu > ul > li > a.icon-test:after,
a.icon-test:after,
span.icon-test:after,
.icon:not(dt):not(td).icon-test:after,
a.icon-only.icon-test:after {
  content: "\E12B";
}
.has-main-menu #header #main-menu ul a.icon-invoice-add-context:after,
.has-main-menu #header #admin-menu ul a.icon-invoice-add-context:after,
body #top-menu > ul > li > a.icon-invoice-add-context:after,
a.icon-invoice-add-context:after,
span.icon-invoice-add-context:after,
.icon:not(dt):not(td).icon-invoice-add-context:after,
a.icon-only.icon-invoice-add-context:after {
  content: "\E132";
}
.has-main-menu #header #main-menu ul a.icon-user:after,
.has-main-menu #header #admin-menu ul a.icon-user:after,
body #top-menu > ul > li > a.icon-user:after,
a.icon-user:after,
span.icon-user:after,
.icon:not(dt):not(td).icon-user:after,
a.icon-only.icon-user:after {
  content: "\E19A";
}
.has-main-menu #header #main-menu ul a.boards:after,
.has-main-menu #header #admin-menu ul a.boards:after,
body #top-menu > ul > li > a.boards:after,
a.boards:after,
span.boards:after,
.icon:not(dt):not(td).boards:after,
a.icon-only.boards:after {
  content: "\E0EA";
}
.has-main-menu #header #main-menu ul a.new-issue:after,
.has-main-menu #header #admin-menu ul a.new-issue:after,
body #top-menu > ul > li > a.new-issue:after,
a.new-issue:after,
span.new-issue:after,
.icon:not(dt):not(td).new-issue:after,
a.icon-only.new-issue:after {
  content: "\E14C";
}
.has-main-menu #header #main-menu ul a.icon-checked:after,
.has-main-menu #header #admin-menu ul a.icon-checked:after,
body #top-menu > ul > li > a.icon-checked:after,
a.icon-checked:after,
span.icon-checked:after,
.icon:not(dt):not(td).icon-checked:after,
a.icon-only.icon-checked:after,
.has-main-menu #header #main-menu ul a.icon-ok:after,
.has-main-menu #header #admin-menu ul a.icon-ok:after,
body #top-menu > ul > li > a.icon-ok:after,
a.icon-ok:after,
span.icon-ok:after,
.icon:not(dt):not(td).icon-ok:after,
a.icon-only.icon-ok:after {
  content: "\E0F1";
}
.has-main-menu #header #main-menu ul a.icon-reload:after,
.has-main-menu #header #admin-menu ul a.icon-reload:after,
body #top-menu > ul > li > a.icon-reload:after,
a.icon-reload:after,
span.icon-reload:after,
.icon:not(dt):not(td).icon-reload:after,
a.icon-only.icon-reload:after {
  content: "\E171";
}
.has-main-menu #header #main-menu ul a.icon-save:after,
.has-main-menu #header #admin-menu ul a.icon-save:after,
body #top-menu > ul > li > a.icon-save:after,
a.icon-save:after,
span.icon-save:after,
.icon:not(dt):not(td).icon-save:after,
a.icon-only.icon-save:after {
  content: "\E17D";
}
.has-main-menu #header #main-menu ul a.new-icon-save:after,
.has-main-menu #header #admin-menu ul a.new-icon-save:after,
body #top-menu > ul > li > a.new-icon-save:after,
a.new-icon-save:after,
span.new-icon-save:after,
.icon:not(dt):not(td).new-icon-save:after,
a.icon-only.new-icon-save:after {
  content: "\E17C";
}
.has-main-menu #header #main-menu ul a.new-icon-close:after,
.has-main-menu #header #admin-menu ul a.new-icon-close:after,
body #top-menu > ul > li > a.new-icon-close:after,
a.new-icon-close:after,
span.new-icon-close:after,
.icon:not(dt):not(td).new-icon-close:after,
a.icon-only.new-icon-close:after {
  content: "\E0F4";
}
.has-main-menu #header #main-menu ul a.ui-state-default:after,
.has-main-menu #header #admin-menu ul a.ui-state-default:after,
body #top-menu > ul > li > a.ui-state-default:after,
a.ui-state-default:after,
span.ui-state-default:after,
.icon:not(dt):not(td).ui-state-default:after,
a.icon-only.ui-state-default:after {
  content: "\E0F4";
}
.has-main-menu #header #main-menu ul a.icon-actions:after,
.has-main-menu #header #admin-menu ul a.icon-actions:after,
body #top-menu > ul > li > a.icon-actions:after,
a.icon-actions:after,
span.icon-actions:after,
.icon:not(dt):not(td).icon-actions:after,
a.icon-only.icon-actions:after {
  content: "\E158";
}
.has-main-menu #header #main-menu ul a.icon-settings:after,
.has-main-menu #header #admin-menu ul a.icon-settings:after,
body #top-menu > ul > li > a.icon-settings:after,
a.icon-settings:after,
span.icon-settings:after,
.icon:not(dt):not(td).icon-settings:after,
a.icon-only.icon-settings:after {
  content: "\E0D7";
}
.has-main-menu #header #main-menu ul a.icon-sort-handle:after,
.has-main-menu #header #admin-menu ul a.icon-sort-handle:after,
body #top-menu > ul > li > a.icon-sort-handle:after,
a.icon-sort-handle:after,
span.icon-sort-handle:after,
.icon:not(dt):not(td).icon-sort-handle:after,
a.icon-only.icon-sort-handle:after,
.has-main-menu #header #main-menu ul a.sort-handle:after,
.has-main-menu #header #admin-menu ul a.sort-handle:after,
body #top-menu > ul > li > a.sort-handle:after,
a.sort-handle:after,
span.sort-handle:after,
.icon:not(dt):not(td).sort-handle:after,
a.icon-only.sort-handle:after {
  content: "\E185";
}
.has-main-menu #header #main-menu ul a.icon-close:after,
.has-main-menu #header #admin-menu ul a.icon-close:after,
body #top-menu > ul > li > a.icon-close:after,
a.icon-close:after,
span.icon-close:after,
.icon:not(dt):not(td).icon-close:after,
a.icon-only.icon-close:after {
  content: "\E104";
}
.has-main-menu #header #main-menu ul a.icon-lock:after,
.has-main-menu #header #admin-menu ul a.icon-lock:after,
body #top-menu > ul > li > a.icon-lock:after,
a.icon-lock:after,
span.icon-lock:after,
.icon:not(dt):not(td).icon-lock:after,
a.icon-only.icon-lock:after,
.has-main-menu #header #main-menu ul a.icon-locked:after,
.has-main-menu #header #admin-menu ul a.icon-locked:after,
body #top-menu > ul > li > a.icon-locked:after,
a.icon-locked:after,
span.icon-locked:after,
.icon:not(dt):not(td).icon-locked:after,
a.icon-only.icon-locked:after {
  content: "\E140";
}
.has-main-menu #header #main-menu ul a.icon-unlock:after,
.has-main-menu #header #admin-menu ul a.icon-unlock:after,
body #top-menu > ul > li > a.icon-unlock:after,
a.icon-unlock:after,
span.icon-unlock:after,
.icon:not(dt):not(td).icon-unlock:after,
a.icon-only.icon-unlock:after {
  content: "\E196";
}
.has-main-menu #header #main-menu ul a.icon-fullscreen:after,
.has-main-menu #header #admin-menu ul a.icon-fullscreen:after,
body #top-menu > ul > li > a.icon-fullscreen:after,
a.icon-fullscreen:after,
span.icon-fullscreen:after,
.icon:not(dt):not(td).icon-fullscreen:after,
a.icon-only.icon-fullscreen:after {
  content: "\E123";
}
.has-main-menu #header #main-menu ul a.icon-edit:after,
.has-main-menu #header #admin-menu ul a.icon-edit:after,
body #top-menu > ul > li > a.icon-edit:after,
a.icon-edit:after,
span.icon-edit:after,
.icon:not(dt):not(td).icon-edit:after,
a.icon-only.icon-edit:after,
.has-main-menu #header #main-menu ul a.icon-not-ok:after,
.has-main-menu #header #admin-menu ul a.icon-not-ok:after,
body #top-menu > ul > li > a.icon-not-ok:after,
a.icon-not-ok:after,
span.icon-not-ok:after,
.icon:not(dt):not(td).icon-not-ok:after,
a.icon-only.icon-not-ok:after {
  content: "\E113";
}
.has-main-menu #header #main-menu ul a.icon-time-add:after,
.has-main-menu #header #admin-menu ul a.icon-time-add:after,
body #top-menu > ul > li > a.icon-time-add:after,
a.icon-time-add:after,
span.icon-time-add:after,
.icon:not(dt):not(td).icon-time-add:after,
a.icon-only.icon-time-add:after {
  content: "\E193";
}
.has-main-menu #header #main-menu ul a.icon-fav-off:after,
.has-main-menu #header #admin-menu ul a.icon-fav-off:after,
body #top-menu > ul > li > a.icon-fav-off:after,
a.icon-fav-off:after,
span.icon-fav-off:after,
.icon:not(dt):not(td).icon-fav-off:after,
a.icon-only.icon-fav-off:after {
  content: "\E11C";
}
.has-main-menu #header #main-menu ul a.icon-fav:after,
.has-main-menu #header #admin-menu ul a.icon-fav:after,
body #top-menu > ul > li > a.icon-fav:after,
a.icon-fav:after,
span.icon-fav:after,
.icon:not(dt):not(td).icon-fav:after,
a.icon-only.icon-fav:after,
.has-main-menu #header #main-menu ul a[data-method="delete"].icon-fav:after,
.has-main-menu #header #admin-menu ul a[data-method="delete"].icon-fav:after,
body #top-menu > ul > li > a[data-method="delete"].icon-fav:after,
a[data-method="delete"].icon-fav:after,
span[data-method="delete"].icon-fav:after,
.icon:not(dt):not(td)[data-method="delete"].icon-fav:after,
a.icon-only[data-method="delete"].icon-fav:after {
  content: "\E11D";
}
.has-main-menu #header #main-menu ul a.icon-copy:after,
.has-main-menu #header #admin-menu ul a.icon-copy:after,
body #top-menu > ul > li > a.icon-copy:after,
a.icon-copy:after,
span.icon-copy:after,
.icon:not(dt):not(td).icon-copy:after,
a.icon-only.icon-copy:after,
.has-main-menu #header #main-menu ul a.icon-duplicate:after,
.has-main-menu #header #admin-menu ul a.icon-duplicate:after,
body #top-menu > ul > li > a.icon-duplicate:after,
a.icon-duplicate:after,
span.icon-duplicate:after,
.icon:not(dt):not(td).icon-duplicate:after,
a.icon-only.icon-duplicate:after {
  content: "\E0FA";
}
.has-main-menu #header #main-menu ul a.icon-del:after,
.has-main-menu #header #admin-menu ul a.icon-del:after,
body #top-menu > ul > li > a.icon-del:after,
a.icon-del:after,
span.icon-del:after,
.icon:not(dt):not(td).icon-del:after,
a.icon-only.icon-del:after {
  content: "\E104";
}
.has-main-menu #header #main-menu ul a.icon-stats:after,
.has-main-menu #header #admin-menu ul a.icon-stats:after,
body #top-menu > ul > li > a.icon-stats:after,
a.icon-stats:after,
span.icon-stats:after,
.icon:not(dt):not(td).icon-stats:after,
a.icon-only.icon-stats:after {
  content: "\E18A";
}
.has-main-menu #header #main-menu ul a.atom:after,
.has-main-menu #header #admin-menu ul a.atom:after,
body #top-menu > ul > li > a.atom:after,
a.atom:after,
span.atom:after,
.icon:not(dt):not(td).atom:after,
a.icon-only.atom:after {
  content: "\E0E2";
}
.has-main-menu #header #main-menu ul a.csv:after,
.has-main-menu #header #admin-menu ul a.csv:after,
body #top-menu > ul > li > a.csv:after,
a.csv:after,
span.csv:after,
.icon:not(dt):not(td).csv:after,
a.icon-only.csv:after {
  content: "\E100";
}
.has-main-menu #header #main-menu ul a.pdf:after,
.has-main-menu #header #admin-menu ul a.pdf:after,
body #top-menu > ul > li > a.pdf:after,
a.pdf:after,
span.pdf:after,
.icon:not(dt):not(td).pdf:after,
a.icon-only.pdf:after {
  content: "\E15E";
}
.has-main-menu #header #main-menu ul a.png:after,
.has-main-menu #header #admin-menu ul a.png:after,
body #top-menu > ul > li > a.png:after,
a.png:after,
span.png:after,
.icon:not(dt):not(td).png:after,
a.icon-only.png:after {
  content: "\E167";
}
.has-main-menu #header #main-menu ul a.html:after,
.has-main-menu #header #admin-menu ul a.html:after,
body #top-menu > ul > li > a.html:after,
a.html:after,
span.html:after,
.icon:not(dt):not(td).html:after,
a.icon-only.html:after {
  content: "\E12F";
}
.has-main-menu #header #main-menu ul a.odt:after,
.has-main-menu #header #admin-menu ul a.odt:after,
body #top-menu > ul > li > a.odt:after,
a.odt:after,
span.odt:after,
.icon:not(dt):not(td).odt:after,
a.icon-only.odt:after {
  content: "\E154";
}
.has-main-menu #header #main-menu ul a[href*="/keys"]:after,
.has-main-menu #header #admin-menu ul a[href*="/keys"]:after,
body #top-menu > ul > li > a[href*="/keys"]:after,
a[href*="/keys"]:after,
span[href*="/keys"]:after,
.icon:not(dt):not(td)[href*="/keys"]:after,
a.icon-only[href*="/keys"]:after,
.has-main-menu #header #main-menu ul a.keys:after,
.has-main-menu #header #admin-menu ul a.keys:after,
body #top-menu > ul > li > a.keys:after,
a.keys:after,
span.keys:after,
.icon:not(dt):not(td).keys:after,
a.icon-only.keys:after {
  content: "\E139";
}
.has-main-menu #header #main-menu ul a.dmsf:after,
.has-main-menu #header #admin-menu ul a.dmsf:after,
body #top-menu > ul > li > a.dmsf:after,
a.dmsf:after,
span.dmsf:after,
.icon:not(dt):not(td).dmsf:after,
a.icon-only.dmsf:after {
  content: "\E108";
}
.has-main-menu #header #main-menu ul a.txt:after,
.has-main-menu #header #admin-menu ul a.txt:after,
body #top-menu > ul > li > a.txt:after,
a.txt:after,
span.txt:after,
.icon:not(dt):not(td).txt:after,
a.icon-only.txt:after {
  content: "\E194";
}
.has-main-menu #header #main-menu ul a.icon-actions:after,
.has-main-menu #header #admin-menu ul a.icon-actions:after,
body #top-menu > ul > li > a.icon-actions:after,
a.icon-actions:after,
span.icon-actions:after,
.icon:not(dt):not(td).icon-actions:after,
a.icon-only.icon-actions:after {
  content: "\E158";
}
.has-main-menu #header #main-menu ul a.icon-history:after,
.has-main-menu #header #admin-menu ul a.icon-history:after,
body #top-menu > ul > li > a.icon-history:after,
a.icon-history:after,
span.icon-history:after,
.icon:not(dt):not(td).icon-history:after,
a.icon-only.icon-history:after {
  content: "\E12C";
}
.has-main-menu #header #main-menu ul a.icon-move:after,
.has-main-menu #header #admin-menu ul a.icon-move:after,
body #top-menu > ul > li > a.icon-move:after,
a.icon-move:after,
span.icon-move:after,
.icon:not(dt):not(td).icon-move:after,
a.icon-only.icon-move:after {
  content: "\E149";
}
.has-main-menu #header #main-menu ul a.icon-add:after,
.has-main-menu #header #admin-menu ul a.icon-add:after,
body #top-menu > ul > li > a.icon-add:after,
a.icon-add:after,
span.icon-add:after,
.icon:not(dt):not(td).icon-add:after,
a.icon-only.icon-add:after,
.has-main-menu #header #main-menu ul a.icon-add-deal:after,
.has-main-menu #header #admin-menu ul a.icon-add-deal:after,
body #top-menu > ul > li > a.icon-add-deal:after,
a.icon-add-deal:after,
span.icon-add-deal:after,
.icon:not(dt):not(td).icon-add-deal:after,
a.icon-only.icon-add-deal:after,
.has-main-menu #header #main-menu ul a.icon-company-contact:after,
.has-main-menu #header #admin-menu ul a.icon-company-contact:after,
body #top-menu > ul > li > a.icon-company-contact:after,
a.icon-company-contact:after,
span.icon-company-contact:after,
.icon:not(dt):not(td).icon-company-contact:after,
a.icon-only.icon-company-contact:after,
.has-main-menu #header #main-menu ul a.icon-add-bullet:after,
.has-main-menu #header #admin-menu ul a.icon-add-bullet:after,
body #top-menu > ul > li > a.icon-add-bullet:after,
a.icon-add-bullet:after,
span.icon-add-bullet:after,
.icon:not(dt):not(td).icon-add-bullet:after,
a.icon-only.icon-add-bullet:after {
  content: "\E14C";
}
.has-main-menu #header #main-menu ul a.icon-zoom-in:after,
.has-main-menu #header #admin-menu ul a.icon-zoom-in:after,
body #top-menu > ul > li > a.icon-zoom-in:after,
a.icon-zoom-in:after,
span.icon-zoom-in:after,
.icon:not(dt):not(td).icon-zoom-in:after,
a.icon-only.icon-zoom-in:after,
.has-main-menu #header #main-menu ul a.icon-magnifier:after,
.has-main-menu #header #admin-menu ul a.icon-magnifier:after,
body #top-menu > ul > li > a.icon-magnifier:after,
a.icon-magnifier:after,
span.icon-magnifier:after,
.icon:not(dt):not(td).icon-magnifier:after,
a.icon-only.icon-magnifier:after {
  content: "\E1AA";
}
.has-main-menu #header #main-menu ul a.icon-zoom-out:after,
.has-main-menu #header #admin-menu ul a.icon-zoom-out:after,
body #top-menu > ul > li > a.icon-zoom-out:after,
a.icon-zoom-out:after,
span.icon-zoom-out:after,
.icon:not(dt):not(td).icon-zoom-out:after,
a.icon-only.icon-zoom-out:after {
  content: "\E1AB";
}
.has-main-menu #header #main-menu ul a.vcf:after,
.has-main-menu #header #admin-menu ul a.vcf:after,
body #top-menu > ul > li > a.vcf:after,
a.vcf:after,
span.vcf:after,
.icon:not(dt):not(td).vcf:after,
a.icon-only.vcf:after,
.has-main-menu #header #main-menu ul a[href*='.vcf']:after,
.has-main-menu #header #admin-menu ul a[href*='.vcf']:after,
body #top-menu > ul > li > a[href*='.vcf']:after,
a[href*='.vcf']:after,
span[href*='.vcf']:after,
.icon:not(dt):not(td)[href*='.vcf']:after,
a.icon-only[href*='.vcf']:after {
  content: "\E19D";
}
.has-main-menu #header #main-menu ul a.xls:after,
.has-main-menu #header #admin-menu ul a.xls:after,
body #top-menu > ul > li > a.xls:after,
a.xls:after,
span.xls:after,
.icon:not(dt):not(td).xls:after,
a.icon-only.xls:after {
  content: "\E1A4";
}
.has-main-menu #header #main-menu ul a.icon-import:after,
.has-main-menu #header #admin-menu ul a.icon-import:after,
body #top-menu > ul > li > a.icon-import:after,
a.icon-import:after,
span.icon-import:after,
.icon:not(dt):not(td).icon-import:after,
a.icon-only.icon-import:after {
  content: "\E130";
}
.has-main-menu #header #main-menu ul a.icon-user:after,
.has-main-menu #header #admin-menu ul a.icon-user:after,
body #top-menu > ul > li > a.icon-user:after,
a.icon-user:after,
span.icon-user:after,
.icon:not(dt):not(td).icon-user:after,
a.icon-only.icon-user:after,
.has-main-menu #header #main-menu ul a.icon-anonymoususer:after,
.has-main-menu #header #admin-menu ul a.icon-anonymoususer:after,
body #top-menu > ul > li > a.icon-anonymoususer:after,
a.icon-anonymoususer:after,
span.icon-anonymoususer:after,
.icon:not(dt):not(td).icon-anonymoususer:after,
a.icon-only.icon-anonymoususer:after,
.has-main-menu #header #main-menu ul a.icon-person:after,
.has-main-menu #header #admin-menu ul a.icon-person:after,
body #top-menu > ul > li > a.icon-person:after,
a.icon-person:after,
span.icon-person:after,
.icon:not(dt):not(td).icon-person:after,
a.icon-only.icon-person:after {
  content: "\E19A";
}
.has-main-menu #header #main-menu ul a.icon-link:after,
.has-main-menu #header #admin-menu ul a.icon-link:after,
body #top-menu > ul > li > a.icon-link:after,
a.icon-link:after,
span.icon-link:after,
.icon:not(dt):not(td).icon-link:after,
a.icon-only.icon-link:after {
  content: "\E119";
}
.has-main-menu #header #main-menu ul a.icon-link-break:after,
.has-main-menu #header #admin-menu ul a.icon-link-break:after,
body #top-menu > ul > li > a.icon-link-break:after,
a.icon-link-break:after,
span.icon-link-break:after,
.icon:not(dt):not(td).icon-link-break:after,
a.icon-only.icon-link-break:after {
  content: "\E13F";
}
.has-main-menu #header #main-menu ul a.icon-summary:after,
.has-main-menu #header #admin-menu ul a.icon-summary:after,
body #top-menu > ul > li > a.icon-summary:after,
a.icon-summary:after,
span.icon-summary:after,
.icon:not(dt):not(td).icon-summary:after,
a.icon-only.icon-summary:after {
  content: "\E18D";
}
.has-main-menu #header #main-menu ul a.desc:after,
.has-main-menu #header #admin-menu ul a.desc:after,
body #top-menu > ul > li > a.desc:after,
a.desc:after,
span.desc:after,
.icon:not(dt):not(td).desc:after,
a.icon-only.desc:after {
  content: "\E0DD";
}
.has-main-menu #header #main-menu ul a.asc:after,
.has-main-menu #header #admin-menu ul a.asc:after,
body #top-menu > ul > li > a.asc:after,
a.asc:after,
span.asc:after,
.icon:not(dt):not(td).asc:after,
a.icon-only.asc:after {
  content: "\E0DD";
  transform: rotate(180deg);
}
.has-main-menu #header #main-menu ul a.open-sidebar-link:after,
.has-main-menu #header #admin-menu ul a.open-sidebar-link:after,
body #top-menu > ul > li > a.open-sidebar-link:after,
a.open-sidebar-link:after,
span.open-sidebar-link:after,
.icon:not(dt):not(td).open-sidebar-link:after,
a.icon-only.open-sidebar-link:after {
  content: "\E14F";
}
.has-main-menu #header #main-menu ul a.expander:after,
.has-main-menu #header #admin-menu ul a.expander:after,
body #top-menu > ul > li > a.expander:after,
a.expander:after,
span.expander:after,
.icon:not(dt):not(td).expander:after,
a.icon-only.expander:after {
  content: "\E155";
}
.has-main-menu #header #main-menu ul a.icon-redminecrm-money:after,
.has-main-menu #header #admin-menu ul a.icon-redminecrm-money:after,
body #top-menu > ul > li > a.icon-redminecrm-money:after,
a.icon-redminecrm-money:after,
span.icon-redminecrm-money:after,
.icon:not(dt):not(td).icon-redminecrm-money:after,
a.icon-only.icon-redminecrm-money:after {
  content: "\E10D";
}
.has-main-menu #header #main-menu ul a.icon-shared:after,
.has-main-menu #header #admin-menu ul a.icon-shared:after,
body #top-menu > ul > li > a.icon-shared:after,
a.icon-shared:after,
span.icon-shared:after,
.icon:not(dt):not(td).icon-shared:after,
a.icon-only.icon-shared:after {
  content: "\E119";
}
.has-main-menu #header #main-menu ul a.drive:after,
.has-main-menu #header #admin-menu ul a.drive:after,
body #top-menu > ul > li > a.drive:after,
a.drive:after,
span.drive:after,
.icon:not(dt):not(td).drive:after,
a.icon-only.drive:after,
.has-main-menu #header #main-menu ul a.icon-link-add:after,
.has-main-menu #header #admin-menu ul a.icon-link-add:after,
body #top-menu > ul > li > a.icon-link-add:after,
a.icon-link-add:after,
span.icon-link-add:after,
.icon:not(dt):not(td).icon-link-add:after,
a.icon-only.icon-link-add:after {
  content: "\E111";
}
.has-main-menu #header #main-menu ul a.icon-upload:after,
.has-main-menu #header #admin-menu ul a.icon-upload:after,
body #top-menu > ul > li > a.icon-upload:after,
a.icon-upload:after,
span.icon-upload:after,
.icon:not(dt):not(td).icon-upload:after,
a.icon-only.icon-upload:after {
  content: "\E199";
}
.has-main-menu #header #main-menu ul a.icon-folder:after,
.has-main-menu #header #admin-menu ul a.icon-folder:after,
body #top-menu > ul > li > a.icon-folder:after,
a.icon-folder:after,
span.icon-folder:after,
.icon:not(dt):not(td).icon-folder:after,
a.icon-only.icon-folder:after {
  content: "\E122";
}
.has-main-menu #header #main-menu ul a.icon-project:after,
.has-main-menu #header #admin-menu ul a.icon-project:after,
body #top-menu > ul > li > a.icon-project:after,
a.icon-project:after,
span.icon-project:after,
.icon:not(dt):not(td).icon-project:after,
a.icon-only.icon-project:after {
  content: "\E16C";
}
.has-main-menu #header #main-menu ul a.icon-refresh:after,
.has-main-menu #header #admin-menu ul a.icon-refresh:after,
body #top-menu > ul > li > a.icon-refresh:after,
a.icon-refresh:after,
span.icon-refresh:after,
.icon:not(dt):not(td).icon-refresh:after,
a.icon-only.icon-refresh:after {
  content: "\E171";
}
.has-main-menu #header #main-menu ul a.icon-refresh:after,
.has-main-menu #header #admin-menu ul a.icon-refresh:after,
body #top-menu > ul > li > a.icon-refresh:after,
a.icon-refresh:after,
span.icon-refresh:after,
.icon:not(dt):not(td).icon-refresh:after,
a.icon-only.icon-refresh:after {
  content: "\E171";
}
.has-main-menu #header #main-menu ul a.icon-list-action:after,
.has-main-menu #header #admin-menu ul a.icon-list-action:after,
body #top-menu > ul > li > a.icon-list-action:after,
a.icon-list-action:after,
span.icon-list-action:after,
.icon:not(dt):not(td).icon-list-action:after,
a.icon-only.icon-list-action:after {
  content: "\E115";
}
.has-main-menu #header #main-menu ul a.icon-page:after,
.has-main-menu #header #admin-menu ul a.icon-page:after,
body #top-menu > ul > li > a.icon-page:after,
a.icon-page:after,
span.icon-page:after,
.icon:not(dt):not(td).icon-page:after,
a.icon-only.icon-page:after {
  content: "\E15B";
}
.has-main-menu #header #main-menu ul a.icon-snippet:after,
.has-main-menu #header #admin-menu ul a.icon-snippet:after,
body #top-menu > ul > li > a.icon-snippet:after,
a.icon-snippet:after,
span.icon-snippet:after,
.icon:not(dt):not(td).icon-snippet:after,
a.icon-only.icon-snippet:after {
  content: "\E184";
}
.has-main-menu #header #main-menu ul a.icon-menu:after,
.has-main-menu #header #admin-menu ul a.icon-menu:after,
body #top-menu > ul > li > a.icon-menu:after,
a.icon-menu:after,
span.icon-menu:after,
.icon:not(dt):not(td).icon-menu:after,
a.icon-only.icon-menu:after {
  content: "\E11A";
}
.has-main-menu #header #main-menu ul a.icon-layout:after,
.has-main-menu #header #admin-menu ul a.icon-layout:after,
body #top-menu > ul > li > a.icon-layout:after,
a.icon-layout:after,
span.icon-layout:after,
.icon:not(dt):not(td).icon-layout:after,
a.icon-only.icon-layout:after {
  content: "\E145";
}
.has-main-menu #header #main-menu ul a.additionals:after,
.has-main-menu #header #admin-menu ul a.additionals:after,
body #top-menu > ul > li > a.additionals:after,
a.additionals:after,
span.additionals:after,
.icon:not(dt):not(td).additionals:after,
a.icon-only.additionals:after,
.has-main-menu #header #main-menu ul a.cms:after,
.has-main-menu #header #admin-menu ul a.cms:after,
body #top-menu > ul > li > a.cms:after,
a.cms:after,
span.cms:after,
.icon:not(dt):not(td).cms:after,
a.icon-only.cms:after,
.has-main-menu #header #main-menu ul a.icon-redmine-layout:after,
.has-main-menu #header #admin-menu ul a.icon-redmine-layout:after,
body #top-menu > ul > li > a.icon-redmine-layout:after,
a.icon-redmine-layout:after,
span.icon-redmine-layout:after,
.icon:not(dt):not(td).icon-redmine-layout:after,
a.icon-only.icon-redmine-layout:after {
  content: "\E0D2";
}
.has-main-menu #header #main-menu ul a.icon-redmine-hooks:after,
.has-main-menu #header #admin-menu ul a.icon-redmine-hooks:after,
body #top-menu > ul > li > a.icon-redmine-hooks:after,
a.icon-redmine-hooks:after,
span.icon-redmine-hooks:after,
.icon:not(dt):not(td).icon-redmine-hooks:after,
a.icon-only.icon-redmine-hooks:after {
  content: "\E152";
}
.has-main-menu #header #main-menu ul a.icon-redirect:after,
.has-main-menu #header #admin-menu ul a.icon-redirect:after,
body #top-menu > ul > li > a.icon-redirect:after,
a.icon-redirect:after,
span.icon-redirect:after,
.icon:not(dt):not(td).icon-redirect:after,
a.icon-only.icon-redirect:after {
  content: "\E149";
}
.has-main-menu #header #main-menu ul a.icon-package:after,
.has-main-menu #header #admin-menu ul a.icon-package:after,
body #top-menu > ul > li > a.icon-package:after,
a.icon-package:after,
span.icon-package:after,
.icon:not(dt):not(td).icon-package:after,
a.icon-only.icon-package:after {
  content: "\E16B";
}
.has-main-menu #header #main-menu ul a.icon-vars:after,
.has-main-menu #header #admin-menu ul a.icon-vars:after,
body #top-menu > ul > li > a.icon-vars:after,
a.icon-vars:after,
span.icon-vars:after,
.icon:not(dt):not(td).icon-vars:after,
a.icon-only.icon-vars:after {
  content: "\E19B";
}
.has-main-menu #header #main-menu ul a.icon-file:after,
.has-main-menu #header #admin-menu ul a.icon-file:after,
body #top-menu > ul > li > a.icon-file:after,
a.icon-file:after,
span.icon-file:after,
.icon:not(dt):not(td).icon-file:after,
a.icon-only.icon-file:after {
  content: "\E11B";
}
.has-main-menu #header #main-menu ul a.icon-cancel:after,
.has-main-menu #header #admin-menu ul a.icon-cancel:after,
body #top-menu > ul > li > a.icon-cancel:after,
a.icon-cancel:after,
span.icon-cancel:after,
.icon:not(dt):not(td).icon-cancel:after,
a.icon-only.icon-cancel:after {
  content: "\E0F4";
}
.has-main-menu #header #main-menu ul a.icon-multiple:after,
.has-main-menu #header #admin-menu ul a.icon-multiple:after,
body #top-menu > ul > li > a.icon-multiple:after,
a.icon-multiple:after,
span.icon-multiple:after,
.icon:not(dt):not(td).icon-multiple:after,
a.icon-only.icon-multiple:after {
  content: "\E0FA";
}
.has-main-menu #header #main-menu ul a.icon-message:after,
.has-main-menu #header #admin-menu ul a.icon-message:after,
body #top-menu > ul > li > a.icon-message:after,
a.icon-message:after,
span.icon-message:after,
.icon:not(dt):not(td).icon-message:after,
a.icon-only.icon-message:after {
  content: "\E0F6";
}
.has-main-menu #header #main-menu ul a .icon-file.application-zip:after,
.has-main-menu #header #admin-menu ul a .icon-file.application-zip:after,
body #top-menu > ul > li > a .icon-file.application-zip:after,
a .icon-file.application-zip:after,
span .icon-file.application-zip:after,
.icon:not(dt):not(td) .icon-file.application-zip:after,
a.icon-only .icon-file.application-zip:after {
  content: "\E1A9";
}
.has-main-menu #header #main-menu ul a .icon-file.application-gzip:after,
.has-main-menu #header #admin-menu ul a .icon-file.application-gzip:after,
body #top-menu > ul > li > a .icon-file.application-gzip:after,
a .icon-file.application-gzip:after,
span .icon-file.application-gzip:after,
.icon:not(dt):not(td) .icon-file.application-gzip:after,
a.icon-only .icon-file.application-gzip:after {
  content: "\E1A9";
}
.has-main-menu #header #main-menu ul a.icon-reply:after,
.has-main-menu #header #admin-menu ul a.icon-reply:after,
body #top-menu > ul > li > a.icon-reply:after,
a.icon-reply:after,
span.icon-reply:after,
.icon:not(dt):not(td).icon-reply:after,
a.icon-only.icon-reply:after,
.has-main-menu #header #main-menu ul a .icon-reply:after,
.has-main-menu #header #admin-menu ul a .icon-reply:after,
body #top-menu > ul > li > a .icon-reply:after,
a .icon-reply:after,
span .icon-reply:after,
.icon:not(dt):not(td) .icon-reply:after,
a.icon-only .icon-reply:after {
  content: "\E0F7";
}
.has-main-menu #header #main-menu ul a.icon-document:after,
.has-main-menu #header #admin-menu ul a.icon-document:after,
body #top-menu > ul > li > a.icon-document:after,
a.icon-document:after,
span.icon-document:after,
.icon:not(dt):not(td).icon-document:after,
a.icon-only.icon-document:after,
.has-main-menu #header #main-menu ul a .icon-document:after,
.has-main-menu #header #admin-menu ul a .icon-document:after,
body #top-menu > ul > li > a .icon-document:after,
a .icon-document:after,
span .icon-document:after,
.icon:not(dt):not(td) .icon-document:after,
a.icon-only .icon-document:after {
  content: "\E10A";
}
.has-main-menu #header #main-menu ul a.icon-arrow-right:after,
.has-main-menu #header #admin-menu ul a.icon-arrow-right:after,
body #top-menu > ul > li > a.icon-arrow-right:after,
a.icon-arrow-right:after,
span.icon-arrow-right:after,
.icon:not(dt):not(td).icon-arrow-right:after,
a.icon-only.icon-arrow-right:after,
.has-main-menu #header #main-menu ul a.icon-test:after,
.has-main-menu #header #admin-menu ul a.icon-test:after,
body #top-menu > ul > li > a.icon-test:after,
a.icon-test:after,
span.icon-test:after,
.icon:not(dt):not(td).icon-test:after,
a.icon-only.icon-test:after,
.has-main-menu #header #main-menu ul a.icon-sticky:after,
.has-main-menu #header #admin-menu ul a.icon-sticky:after,
body #top-menu > ul > li > a.icon-sticky:after,
a.icon-sticky:after,
span.icon-sticky:after,
.icon:not(dt):not(td).icon-sticky:after,
a.icon-only.icon-sticky:after {
  content: "\E122";
}
.has-main-menu #header #main-menu ul a.icon-issue-edit:after,
.has-main-menu #header #admin-menu ul a.icon-issue-edit:after,
body #top-menu > ul > li > a.icon-issue-edit:after,
a.icon-issue-edit:after,
span.icon-issue-edit:after,
.icon:not(dt):not(td).icon-issue-edit:after,
a.icon-only.icon-issue-edit:after {
  content: "\E113";
}
.has-main-menu #header #main-menu ul a.icon-custom-fields:after,
.has-main-menu #header #admin-menu ul a.icon-custom-fields:after,
body #top-menu > ul > li > a.icon-custom-fields:after,
a.icon-custom-fields:after,
span.icon-custom-fields:after,
.icon:not(dt):not(td).icon-custom-fields:after,
a.icon-only.icon-custom-fields:after {
  content: "\E122";
}
.has-main-menu #header #main-menu ul a.icon-issue-note:after,
.has-main-menu #header #admin-menu ul a.icon-issue-note:after,
body #top-menu > ul > li > a.icon-issue-note:after,
a.icon-issue-note:after,
span.icon-issue-note:after,
.icon:not(dt):not(td).icon-issue-note:after,
a.icon-only.icon-issue-note:after {
  content: "\E0F6";
}
.has-main-menu #header #main-menu ul a.icon-changeset:after,
.has-main-menu #header #admin-menu ul a.icon-changeset:after,
body #top-menu > ul > li > a.icon-changeset:after,
a.icon-changeset:after,
span.icon-changeset:after,
.icon:not(dt):not(td).icon-changeset:after,
a.icon-only.icon-changeset:after {
  content: "\E182";
}
.has-main-menu #header #main-menu ul a.icon-file.image-gif:after,
.has-main-menu #header #admin-menu ul a.icon-file.image-gif:after,
body #top-menu > ul > li > a.icon-file.image-gif:after,
a.icon-file.image-gif:after,
span.icon-file.image-gif:after,
.icon:not(dt):not(td).icon-file.image-gif:after,
a.icon-only.icon-file.image-gif:after {
  content: "\E125";
}
.has-main-menu #header #main-menu ul a.icon-file.image-jpeg:after,
.has-main-menu #header #admin-menu ul a.icon-file.image-jpeg:after,
body #top-menu > ul > li > a.icon-file.image-jpeg:after,
a.icon-file.image-jpeg:after,
span.icon-file.image-jpeg:after,
.icon:not(dt):not(td).icon-file.image-jpeg:after,
a.icon-only.icon-file.image-jpeg:after {
  content: "\E135";
}
.has-main-menu #header #main-menu ul a.icon-file.image-png:after,
.has-main-menu #header #admin-menu ul a.icon-file.image-png:after,
body #top-menu > ul > li > a.icon-file.image-png:after,
a.icon-file.image-png:after,
span.icon-file.image-png:after,
.icon:not(dt):not(td).icon-file.image-png:after,
a.icon-only.icon-file.image-png:after {
  content: "\E167";
}
.has-main-menu #header #main-menu ul a.icon-file.image-tiff,
.has-main-menu #header #admin-menu ul a.icon-file.image-tiff,
body #top-menu > ul > li > a.icon-file.image-tiff,
a.icon-file.image-tiff,
span.icon-file.image-tiff,
.icon:not(dt):not(td).icon-file.image-tiff,
a.icon-only.icon-file.image-tiff {
  /*&:after {content: @icon-ti;}*/
}
.has-main-menu #header #main-menu ul a.icon-file.text-css:after,
.has-main-menu #header #admin-menu ul a.icon-file.text-css:after,
body #top-menu > ul > li > a.icon-file.text-css:after,
a.icon-file.text-css:after,
span.icon-file.text-css:after,
.icon:not(dt):not(td).icon-file.text-css:after,
a.icon-only.icon-file.text-css:after {
  content: "\E0FF";
}
.has-main-menu #header #main-menu ul a.icon-file.text-xml:after,
.has-main-menu #header #admin-menu ul a.icon-file.text-xml:after,
body #top-menu > ul > li > a.icon-file.text-xml:after,
a.icon-file.text-xml:after,
span.icon-file.text-xml:after,
.icon:not(dt):not(td).icon-file.text-xml:after,
a.icon-only.icon-file.text-xml:after {
  content: "\E1A7";
}
.has-main-menu #header #main-menu ul a.icon-file.text-x-php:after,
.has-main-menu #header #admin-menu ul a.icon-file.text-x-php:after,
body #top-menu > ul > li > a.icon-file.text-x-php:after,
a.icon-file.text-x-php:after,
span.icon-file.text-x-php:after,
.icon:not(dt):not(td).icon-file.text-x-php:after,
a.icon-only.icon-file.text-x-php:after {
  content: "\E163";
}
.has-main-menu #header #main-menu ul a.icon-file.text-x-ruby:after,
.has-main-menu #header #admin-menu ul a.icon-file.text-x-ruby:after,
body #top-menu > ul > li > a.icon-file.text-x-ruby:after,
a.icon-file.text-x-ruby:after,
span.icon-file.text-x-ruby:after,
.icon:not(dt):not(td).icon-file.text-x-ruby:after,
a.icon-only.icon-file.text-x-ruby:after {
  content: "\E17B";
}
.has-main-menu #header #main-menu ul a.icon-file.application-javascript:after,
.has-main-menu #header #admin-menu ul a.icon-file.application-javascript:after,
body #top-menu > ul > li > a.icon-file.application-javascript:after,
a.icon-file.application-javascript:after,
span.icon-file.application-javascript:after,
.icon:not(dt):not(td).icon-file.application-javascript:after,
a.icon-only.icon-file.application-javascript:after {
  content: "\E136";
}
.has-main-menu #header #main-menu ul a.icon-file.text-x-csharp:after,
.has-main-menu #header #admin-menu ul a.icon-file.text-x-csharp:after,
body #top-menu > ul > li > a.icon-file.text-x-csharp:after,
a.icon-file.text-x-csharp:after,
span.icon-file.text-x-csharp:after,
.icon:not(dt):not(td).icon-file.text-x-csharp:after,
a.icon-only.icon-file.text-x-csharp:after {
  content: "\E0FE";
}
.has-main-menu #header #main-menu ul a.icon-file.text-x-java:after,
.has-main-menu #header #admin-menu ul a.icon-file.text-x-java:after,
body #top-menu > ul > li > a.icon-file.text-x-java:after,
a.icon-file.text-x-java:after,
span.icon-file.text-x-java:after,
.icon:not(dt):not(td).icon-file.text-x-java:after,
a.icon-only.icon-file.text-x-java:after {
  content: "\E134";
}
.has-main-menu #header #main-menu ul a.icon-file.text-plain:after,
.has-main-menu #header #admin-menu ul a.icon-file.text-plain:after,
body #top-menu > ul > li > a.icon-file.text-plain:after,
a.icon-file.text-plain:after,
span.icon-file.text-plain:after,
.icon:not(dt):not(td).icon-file.text-plain:after,
a.icon-only.icon-file.text-plain:after {
  content: "\E122";
}
.has-main-menu #header #main-menu ul a.icon-file.text-x-c:after,
.has-main-menu #header #admin-menu ul a.icon-file.text-x-c:after,
body #top-menu > ul > li > a.icon-file.text-x-c:after,
a.icon-file.text-x-c:after,
span.icon-file.text-x-c:after,
.icon:not(dt):not(td).icon-file.text-x-c:after,
a.icon-only.icon-file.text-x-c:after {
  content: "\E122";
}
.open .icon.icon-folder:after,
.open .icon-only.icon-folder:after {
  content: "\E122";
}
#sidebar .icon.icon-package:after {
  content: "\E16B";
}
.icon-phone:after,
.icon-call:after {
  content: "\E161";
}
.icon-email:after {
  content: "\E114";
}
a[href*="questions_sections/new"]:after {
  content: "\E14C";
}
#company_profile_edit a:after {
  content: "\E113";
}
tr.project.idnt td.name span:after {
  content: "\E0E1";
}
/*START CONTACT PAGE*/
#comments .contextual a.delete:after,
#company_contacts .contextual a.delete:after {
  content: "\E113";
}
#comments .contextual a.delete[data-remote="true"]:after,
#company_contacts .contextual a.delete[data-remote="true"]:after {
  content: "\E104";
}
.icon-pdf-context:after {
  content: "\E15E";
}
.avatar.extended .delete:after {
  content: "\E104";
}
/*END CONTACT PAGE*/
/*START DEALS PAGE*/
#order_contact_id_add_link:after,
#operation_contact_id_add_link:after,
#deal_contact_id_add_link:after,
#expense_contact_id_add_link:after,
#invoice_contact_id_add_link:after {
  content: "\E14C";
}
#order_contact_id_add_link img,
#operation_contact_id_add_link img,
#deal_contact_id_add_link img,
#expense_contact_id_add_link img,
#invoice_contact_id_add_link img {
  display: none;
}
/*END DEALS PAGE*/
/*START PEOPLE PAGE*/
fieldset.collapsible > legend:after {
  content: "\E155";
}
select[url*="company"] ~ .select2 .select2-selection--single:after {
  content: "\E0F8";
}
select[url*="contacts"] ~ .select2 .select2-selection--single:after,
select[url*="people"] ~ .select2 .select2-selection--single:after {
  content: "\E0F9";
}
select[url*="deals"] ~ .select2 .select2-selection--single:after {
  content: "\E103";
}
#resource_booking_issue_id ~ .select2 .select2-selection--single:after,
#top-menu #issue_badge_contents > div.footer > a:after {
  content: "\E133";
}
#quick-search .drdn-trigger:before,
#quick-search .quick-search:before {
  content: "\E0DD";
}
#quick-search .drdn-trigger:after,
#quick-search .quick-search:after {
  content: "\E181";
}
.icon-fancybox:after {
  content: "\E1AA";
}
/*END PEOPLE PAGE*/
.checkbox a:after {
  content: "\E0F1";
}
#loggedas a:after,
.revo-user-menu .icon-user:after {
  content: "\E19A";
}
#top-menu #issue_badge .issue_badge_content a:after {
  content: "\E14F";
}
#content #comments .contextual a[href*="order_comments"]:after {
  content: "\E104";
}
div.issue.order.details #invoices .icon-invoice + a[href*="invoices"]:after {
  content: "\E15E";
}
#main div.issue .fa-pencil:after {
  content: "\E113";
  font-size: 24px;
}
#top-menu a[href*="ibo-help-and-support"]:after {
  content: "\E128";
}
#top-menu a[href*="credentials"]:after {
  content: "\E0FC";
}
.controller-welcome.action-index .contextual .drdn-items a[href="#"]:after {
  content: "\E188";
}
.drdn-items a[href*="enable_sidebar=0"]:after {
  content: "\E150";
}
.drdn-items a[href*="enable_sidebar=1"]:after {
  content: "\E0F1";
}
.drdn-items a[href*="enable_sidebar"]:after {
  content: "\E150";
}
/* START ICONS FOR PAGINATION */
#main > #content span.pagination .pages li.previous a:after,
#main > #content span.pagination .pages li.previous span:after {
  content: "\E168";
}
#main > #content span.pagination .pages li.next a:after,
#main > #content span.pagination .pages li.next span:after {
  content: "\E14F";
}
/* END ICONS FOR PAGINATION */
/* START ICONS FOR CALENDAR */
a[accesskey="p"]:after {
  content: "\E168";
}
a[accesskey="n"]:after {
  content: "\E14F";
}
.starting:after {
  content: "\E0DF";
}
.ending:after {
  content: "\E0DE";
}
.starting.ending:after {
  content: "\E106";
}
/* END ICONS FOR CALENDAR */
/* --------------------- WEBFULLSET.COM -- */
/* START DARK ICONS FOR BUTTON */
#content .contextual a,
.other-formats a,
#content .contextual span,
.other-formats span {
  /*&:after {color: @bgmenu;}

    &:hover:after {color: @blue;}*/
}
#content .contextual a.icon-lock:after,
.other-formats a.icon-lock:after,
#content .contextual span.icon-lock:after,
.other-formats span.icon-lock:after,
#content .contextual a.icon-issue-closed:after,
.other-formats a.icon-issue-closed:after,
#content .contextual span.icon-issue-closed:after,
.other-formats span.icon-issue-closed:after,
#content .contextual a.issue-closed:after,
.other-formats a.issue-closed:after,
#content .contextual span.issue-closed:after,
.other-formats span.issue-closed:after {
  content: "\E140";
}
#content .contextual a.icon-lock[href*="archive"]:after,
.other-formats a.icon-lock[href*="archive"]:after,
#content .contextual span.icon-lock[href*="archive"]:after,
.other-formats span.icon-lock[href*="archive"]:after,
#content .contextual a.icon-issue-closed[href*="archive"]:after,
.other-formats a.icon-issue-closed[href*="archive"]:after,
#content .contextual span.icon-issue-closed[href*="archive"]:after,
.other-formats span.icon-issue-closed[href*="archive"]:after,
#content .contextual a.issue-closed[href*="archive"]:after,
.other-formats a.issue-closed[href*="archive"]:after,
#content .contextual span.issue-closed[href*="archive"]:after,
.other-formats span.issue-closed[href*="archive"]:after {
  content: "\E0D9";
}
#content .contextual a.icon-add:after,
.other-formats a.icon-add:after,
#content .contextual span.icon-add:after,
.other-formats span.icon-add:after {
  content: "\E14C";
}
#content .contextual a.open-filter:after,
.other-formats a.open-filter:after,
#content .contextual span.open-filter:after,
.other-formats span.open-filter:after {
  content: "\E120";
}
#content .contextual a.icon-time-add:after,
.other-formats a.icon-time-add:after,
#content .contextual span.icon-time-add:after,
.other-formats span.icon-time-add:after {
  content: "\E193";
}
#content .contextual a.icon-stats:after,
.other-formats a.icon-stats:after,
#content .contextual span.icon-stats:after,
.other-formats span.icon-stats:after {
  content: "\E18A";
}
#content .contextual a.icon-fav-off:after,
.other-formats a.icon-fav-off:after,
#content .contextual span.icon-fav-off:after,
.other-formats span.icon-fav-off:after {
  content: "\E11C";
}
#content .contextual a.icon-fav:after,
.other-formats a.icon-fav:after,
#content .contextual span.icon-fav:after,
.other-formats span.icon-fav:after {
  content: "\E11D";
}
#content .contextual a.icon-del:after,
.other-formats a.icon-del:after,
#content .contextual span.icon-del:after,
.other-formats span.icon-del:after {
  content: "\E104";
}
#content .contextual a.icon-import:after,
.other-formats a.icon-import:after,
#content .contextual span.icon-import:after,
.other-formats span.icon-import:after {
  content: "\E130";
}
#content .contextual a.icon-edit:after,
.other-formats a.icon-edit:after,
#content .contextual span.icon-edit:after,
.other-formats span.icon-edit:after {
  content: "\E113";
}
#content .contextual a.icon-copy:after,
.other-formats a.icon-copy:after,
#content .contextual span.icon-copy:after,
.other-formats span.icon-copy:after {
  content: "\E0FA";
}
#content .contextual a.icon-preview:after,
.other-formats a.icon-preview:after,
#content .contextual span.icon-preview:after,
.other-formats span.icon-preview:after {
  content: "\E173";
}
#content .contextual a.invoices:after,
.other-formats a.invoices:after,
#content .contextual span.invoices:after,
.other-formats span.invoices:after,
#content .contextual a.icon-invoice-add-context:after,
.other-formats a.icon-invoice-add-context:after,
#content .contextual span.icon-invoice-add-context:after,
.other-formats span.icon-invoice-add-context:after {
  content: "\E132";
}
#content .contextual a.icon-email:after,
.other-formats a.icon-email:after,
#content .contextual span.icon-email:after,
.other-formats span.icon-email:after,
#content .contextual a.icon-email-add:after,
.other-formats a.icon-email-add:after,
#content .contextual span.icon-email-add:after,
.other-formats span.icon-email-add:after {
  content: "\E114";
}
#content .contextual a.atom:after,
.other-formats a.atom:after,
#content .contextual span.atom:after,
.other-formats span.atom:after {
  content: "\E0E2";
}
#content .contextual a.csv:after,
.other-formats a.csv:after,
#content .contextual span.csv:after,
.other-formats span.csv:after {
  content: "\E100";
}
#content .contextual a.pdf:after,
.other-formats a.pdf:after,
#content .contextual span.pdf:after,
.other-formats span.pdf:after {
  content: "\E15E";
}
#content .contextual a.png:after,
.other-formats a.png:after,
#content .contextual span.png:after,
.other-formats span.png:after {
  content: "\E167";
}
#content .contextual a.html:after,
.other-formats a.html:after,
#content .contextual span.html:after,
.other-formats span.html:after {
  content: "\E100";
}
#content .contextual a.vcf:after,
.other-formats a.vcf:after,
#content .contextual span.vcf:after,
.other-formats span.vcf:after {
  content: "\E19D";
}
#content .contextual a.xls:after,
.other-formats a.xls:after,
#content .contextual span.xls:after,
.other-formats span.xls:after {
  content: "\E1A4";
}
#content .contextual a.icon-passwd:after,
.other-formats a.icon-passwd:after,
#content .contextual span.icon-passwd:after,
.other-formats span.icon-passwd:after {
  content: "\E15C";
}
#content .contextual a.icon-error:after,
.other-formats a.icon-error:after,
#content .contextual span.icon-error:after,
.other-formats span.icon-error:after {
  content: "\E19F";
}
#content .contextual a.icon-report:after,
.other-formats a.icon-report:after,
#content .contextual span.icon-report:after,
.other-formats span.icon-report:after {
  content: "\E173";
}
#content .contextual a.icon-server-authentication:after,
.other-formats a.icon-server-authentication:after,
#content .contextual span.icon-server-authentication:after,
.other-formats span.icon-server-authentication:after {
  content: "\E139";
}
#content .contextual a.icon-magnifier:after,
.other-formats a.icon-magnifier:after,
#content .contextual span.icon-magnifier:after,
.other-formats span.icon-magnifier:after {
  content: "\E181";
}
#content .contextual a.icon-clear-query:after,
.other-formats a.icon-clear-query:after,
#content .contextual span.icon-clear-query:after,
.other-formats span.icon-clear-query:after {
  content: "\E0F4";
}
#content .contextual a.icon-attachment:after,
.other-formats a.icon-attachment:after,
#content .contextual span.icon-attachment:after,
.other-formats span.icon-attachment:after {
  content: '';
}
.box .icon:after {
  color: #818E94;
}
.box .icon:hover:after {
  color: #7600ba;
}
.box .icon-group,
.box .icon-time,
.box .icon-issue,
.box .icon-news {
  background-image: none !important;
}
/* END DARK ICONS FOR BUTTON */
/* --------------------- WEBFULLSET.COM -- */
/* START REDMINEUP ICONS */
a.icon-email:after,
span.icon-email:after,
a.icon-only.icon-email:after {
  content: "\E114";
}
a.icon-pdf:after,
span.icon-pdf:after,
a.icon-only.icon-pdf:after {
  content: "\E15E";
}
a.icon-add-payment:after,
span.icon-add-payment:after,
a.icon-only.icon-add-payment:after {
  content: "\E0D5";
}
a.add-comment:after,
span.add-comment:after,
a.icon-only.add-comment:after,
a.icon-comment:after,
span.icon-comment:after,
a.icon-only.icon-comment:after {
  content: "\E0F6";
}
a.boards:after,
span.boards:after,
a.icon-only.boards:after {
  content: "\E0EA";
}
a.icon-order-add:after,
span.icon-order-add:after,
a.icon-only.icon-order-add:after {
  content: "\E0EE";
}
a.icon-meeting:after,
span.icon-meeting:after,
a.icon-only.icon-meeting:after {
  content: "\E144";
}
#switch_link:after {
  content: "\E11C";
}
#contact_projects .contextual a:after,
#contact_issues .contextual a:after {
  content: "\E14C";
}
/* END REDMINEUP ICONS */
/* --------------------- WEBFULLSET.COM -- */
/*  START PROJECT PAGE */
a.open-wiki:after,
span.open-wiki:after,
a.icon-only.open-wiki:after {
  content: "\E12B";
}
a.open-projects:after,
span.open-projects:after,
a.icon-only.open-projects:after,
a.link-wiki:after,
span.link-wiki:after,
a.icon-only.link-wiki:after,
a.open-documents:after,
span.open-documents:after,
a.icon-only.open-documents:after,
a.open-news-link:after,
span.open-news-link:after,
a.icon-only.open-news-link:after {
  content: "\E155";
}
#projects-index .project:after {
  content: "\E11E";
}
.icon-user.my-project:after {
  content: "\E11E" !important;
}
span.icon-fav {
  background-image: none !important;
}
span.icon-fav:after {
  content: "\E11E";
}
/*  END PROJECT PAGE */
/*  START ISSUES PAGE */
a.icon-download:after,
span.icon-download:after,
a.icon-only.icon-download:after {
  content: "\E110";
}
a.open-filter:after,
span.open-filter:after,
a.icon-only.open-filter:after {
  content: "\E120";
}
a.icon-down:after,
span.icon-down:after,
a.icon-only.icon-down:after {
  content: "\E155";
}
a.icon-helpdesk-reply:after,
span.icon-helpdesk-reply:after,
a.icon-only.icon-helpdesk-reply:after {
  content: "\E16D";
}
a.btn-primary.close:after,
span.btn-primary.close:after,
a.icon-only.btn-primary.close:after {
  content: "\E0F3";
}
/*  END ISSUES PAGE */
/*  START SIDBBAR */
#sidebar #watchers .contextual a:after,
#sidebar #issue_contacts .contextual a:after,
#sidebar #customer_profile .contextual a:after {
  content: "\E14C";
}
#sidebar .delete:after {
  content: "\E104";
}
#sidebar span.icon-company-contact:after {
  content: "\E0F9";
}
#sidebar span.icon-helpdesk:after {
  content: "\E16D";
}
#sidebar a[href*="pipeline"]:after {
  content: "\E18A";
}
#sidebar a[href*='accounts/new']:after {
  content: "\E14C";
}
/*  END SIDBBAR */
/*  START CONTENT MENU */
#context-menu li a.submenu:after {
  content: "\E0E1";
}
#context-menu li a[href*="issues_report_templates"]:after {
  content: "\E173";
}
/*  END CONTENT MENU */
/*  START FILTER */
.toggle-multiselect:after {
  content: "\E0DA";
}
.select2-selection__clear:after {
  content: "\E0F4";
}
div.flash.notice:after {
  content: "\E0F4";
}
form > #errorExplanation:after {
  content: "\E0F4";
}
/*  END FILTER */
.agile-board .icon-comment:before {
  content: "\E0F6";
}
.add_attachment:after {
  content: "\E0F2";
}
div.wiki .external:after {
  content: "\E119";
}
#context-menu .icon-add-tags:after,
#sidebar .tag_list:after,
#main > #content .tag_list:after,
#projects_list .project_card .tags:after {
  content: "\E18F";
}
/* END ICON FONTS */
/* --------------------- WEBFULLSET.COM -- */
/* START ICONS TITILE */
h3.icon-issue:after,
strong.icon-issue:after,
span.icon-issue:after {
  content: "\E133";
}
h3.icon-time:after,
strong.icon-time:after,
span.icon-time:after {
  content: "\E193";
}
h3.icon-group:after,
strong.icon-group:after,
span.icon-group:after,
h3.icon-groupanonymous:after,
strong.icon-groupanonymous:after,
span.icon-groupanonymous:after,
h3.icon-groupnonmember:after,
strong.icon-groupnonmember:after,
span.icon-groupnonmember:after {
  content: "\E129";
}
h3.icon-news:after,
strong.icon-news:after,
span.icon-news:after {
  content: "\E14E";
}
h3.icon-projects:after,
strong.icon-projects:after,
span.icon-projects:after {
  content: "\E16C";
}
.icon.icon-package:after {
  content: "\E0E1";
}
/* END ICONS TITILE */
/* --------------------- WEBFULLSET.COM -- */
/* START REDNINEUP PLAGINS */
#edit_content a:after {
  content: "\E113";
}
/* END REDNINEUP PLAGINS */
.controller-issues.action-show #issue_tree .contextual a:after,
.controller-issues.action-show #relations .contextual a:after {
  content: "\E14C";
}
.controller-versions #content .contextual a.icon-edit[href*="wiki"]:after,
.controller-versions #content .contextual span.icon-edit[href*="wiki"]:after {
  content: "\E1A1";
}
.controller-issues.action-show #issue_tree .contextual a:after,
.controller-issues.action-show #relations .contextual a:after {
  color: #818E94;
  content: "\E14C";
}
.controller-users #content > form input[type="submit"]:after,
.action-projects #content > form input[type="submit"]:after,
.controller-groups #content > form input[type="submit"]:after {
  content: "\E0F1";
}
.select2-selection__arrow:after,
.jcf-select-opener:after {
  content: "\E0DD";
}
#sidebar .project-members .assignable-user:after {
  content: "\E19A";
}
/*----------------------------------IMPORTANT!!! COLOR ICONS------------------------------------------------*/
/* START ADMINISTRATION ICON */
#admin-index #content h2:after {
  background-image: url(../images/icon-color/administration.svg);
}
#admin-index #admin-menu {
  /* ЗАМЕНИТЬ */
}
#admin-index #admin-menu .projects:after {
  background-image: url(../images/icon-color/projects.svg);
}
#admin-index #admin-menu .users:after {
  background-image: url(../images/icon-color/users.svg);
}
#admin-index #admin-menu .groups:after {
  background-image: url(../images/icon-color/groups.svg);
}
#admin-index #admin-menu .roles:after {
  background-image: url(../images/icon-color/roles.svg);
}
#admin-index #admin-menu .trackers:after {
  background-image: url(../images/icon-color/trackers.svg);
}
#admin-index #admin-menu .issue-statuses:after {
  background-image: url(../images/icon-color/issues.svg);
}
#admin-index #admin-menu .workflows:after {
  background-image: url(../images/icon-color/workflow.svg);
}
#admin-index #admin-menu .custom-fields:after {
  background-image: url(../images/icon-color/custom-fields.svg);
}
#admin-index #admin-menu .enumerations:after {
  background-image: url(../images/icon-color/enumerations.svg);
}
#admin-index #admin-menu .settings:after {
  background-image: url(../images/icon-color/settings.svg);
}
#admin-index #admin-menu .ldap-authentication:after {
  background-image: url(../images/icon-color/ldap-authentication.svg);
}
#admin-index #admin-menu .agile:after {
  background-image: url(../images/icon-color/agile.svg);
}
#admin-index #admin-menu .contacts:after {
  background-image: url(../images/icon-color/contacts.svg);
}
#admin-index #admin-menu .helpdesk:after {
  background-image: url(../images/icon-color/helpdesk.svg);
}
#admin-index #admin-menu .invoices:after {
  background-image: url(../images/icon-color/invoice.svg);
}
#admin-index #admin-menu .mailchimp-settings:after {
  background-image: url(../images/icon-color/mailchimp.svg);
}
#admin-index #admin-menu .finance:after {
  background-image: url(../images/icon-color/finance.svg);
}
#admin-index #admin-menu .people:after {
  background-image: url(../images/icon-color/people.svg);
}
#admin-index #admin-menu .products:after {
  background-image: url(../images/icon-color/products.svg);
}
#admin-index #admin-menu .plugins:after {
  background-image: url(../images/icon-color/plugins.svg);
}
#admin-index #admin-menu .info:after {
  background-image: url(../images/icon-color/info.svg);
}
#admin-index #admin-menu .tags:after {
  background-image: url(../images/icon-color/tags.svg);
}
#admin-index #admin-menu .icon-redminecrm-money:after {
  background-image: url(../images/icon-color/money.svg);
}
#admin-index #admin-menu .vault:after {
  background-image: url(../images/icon-color/keys.svg);
}
#admin-index #admin-menu .cms:after {
  background-image: url(../images/icon-color/cms.svg);
}
#admin-index #admin-menu .release-log-queues:after {
  background-image: url(../images/icon-color/log.svg);
}
#admin-index #admin-menu .release-log-configurations:after {
  background-image: url(../images/icon-color/log-configurations.svg);
}
#admin-index #admin-menu .redmine-git-hosting:after {
  background-image: url(../images/icon-color/git.svg);
}
#admin-index #admin-menu .icon-view_customize:after {
  background-image: url(../images/icon-color/view_customize.svg);
}
#admin-index #admin-menu .additionals:after {
  background-image: url(../images/icon-color/additionals.svg);
}
#admin-index #admin-menu .dmsf-approvalworkflows:after {
  background-image: url(../images/icon-color/dmsf-approvalworkflows.svg);
}
#admin-index #admin-menu .reminder_options_label:after {
  background-image: url(../images/icon-color/reminder.svg);
}
/* END ADMINISTRATION ICON */
/* --------------------- WEBFULLSET.COM -- */
/* START H2 ICON FOR ALL PAGES */
.controller-cms_pages #content h2,
#content > h2,
.top-questions h2,
.action-edit #content > h2,
.controller-projects.action-settings #content > h2,
.controller-settings #content > h2,
.controller-checklist_template_categories #content > h2,
.controller-product_categories #content > h2,
.controller-people_settings #content > h2,
.controller-operation_categories #content > h2,
.action-new #content > h2,
.controller-contact_imports #content > h2 {
  background-image: url(../images/icon-color/settings.svg);
}
.controller-invoice_mails #content > h2 {
  background-image: url(../images/icon-color/mail.svg);
}
.controller-users #content > h2 {
  background-image: url(../images/icon-color/users.svg);
}
.controller-users.action-show #content h2 {
  background: none;
}
.controller-groups #content > h2 {
  background-image: url(../images/icon-color/groups.svg);
}
.controller-roles #content > h2 {
  background-image: url(../images/icon-color/roles.svg);
}
.controller-issue_statuses #content > h2 {
  background-image: url(../images/icon-color/issues.svg);
}
.controller-workflows #content > h2 {
  background-image: url(../images/icon-color/workflow.svg);
}
.controller-enumerations #content > h2 {
  background-image: url(../images/icon-color/enumerations.svg);
}
.controller-auth_sources #content > h2 {
  background-image: url(../images/icon-color/ldap-authentication.svg);
}
.action-info #content > h2 {
  background-image: url(../images/icon-color/info.svg);
}
.controller-admin #content > h2 {
  background-image: url(../images/icon-color/administration.svg);
}
.controller-my #content > h2 {
  background-image: url(../images/icon-color/my-page.svg);
}
.controller-activities #content h2 {
  background-image: url(../images/icon-color/activity.svg);
}
.controller-gantts #content h2,
.controller-orders_charts #content h2 {
  background-image: url(../images/icon-color/gantt.svg);
}
.controller-resource_bookings #content h2 {
  background-image: url(../images/icon-color/resources.svg);
}
.controller-calendars #content h2 {
  background-image: url(../images/icon-color/calendar.svg);
}
.controller-news #content > h2 {
  background-image: url(../images/icon-color/news.svg);
}
.controller-documents #content > h2 {
  background-image: url(../images/icon-color/documents.svg);
}
.controller-wiki #content > h2,
.controller-wiki #content h1:first-of-type {
  background-image: url(../images/icon-color/wiki.svg);
}
.controller-boards #content > h2 {
  background-image: url(../images/icon-color/boards.svg);
}
.controller-files #content > h2,
.controller-attachments #content h2 {
  background-image: url(../images/icon-color/files.svg);
}
.controller-contacts #content h2 {
  background-image: url(../images/icon-color/contacts.svg);
}
.controller-deals #content h2 {
  background-image: url(../images/icon-color/deals.svg);
}
.controller-expenses #content > h2 {
  background-image: url(../images/icon-color/expenses.svg);
}
.controller-people #content #query_form h2,
.controller-people #content > h2 {
  background-image: url(../images/icon-color/people.svg);
}
.controller-admin #content > h2 {
  background-image: url(../images/icon-color/administration.svg);
}
.controller-questions_sections.action-index .top-questions h2,
.controller-questions #content > h2,
.controller-questions_sections #content > h2,
.controller-questions #content .questions > h2,
.controller-questions #content .question-title,
.controller-questions.action-index h2 {
  background-image: url(../images/icon-color/helpdesk.svg);
}
.controller-issues #content > h2 {
  background-image: url(../images/icon-color/issues.svg);
}
.controller-timelog #content > h2,
.controller-trackers #content > h2 {
  background-image: url(../images/icon-color/trackers.svg);
}
.action-plugins #content > h2 {
  background-image: url(../images/icon-color/plugins.svg);
}
.controller-agile_boards #content h2,
.controller-agile_charts #content > h2 {
  background-image: url(../images/icon-color/agile.svg);
}
.controller-invoices #content > h2 {
  background-image: url(../images/icon-color/invoice.svg);
}
.controller-operations #content > h2 {
  background-image: url(../images/icon-color/finance.svg);
}
.controller-products #content h2 {
  background-image: url(../images/icon-color/products.svg);
}
.controller-orders #content h2 {
  background-image: url(../images/icon-color/order.svg);
}
.controller-custom_fields #content > h2 {
  background-image: url(../images/icon-color/custom-fields.svg);
}
.controller-favorite_projects #content h2,
.action-projects #content > h2,
.controller-projects #content > h2 {
  background-image: url(../images/icon-color/projects.svg);
}
.controller-welcome #content > h2 {
  background-image: url(../images/icon-color/home.svg);
}
.controller-search #content > h2 {
  background-image: url(../images/icon-color/search-title.svg);
}
.controller-versions #content > h2,
#roadmap h2 {
  background-image: url(../images/icon-color/roadmap.svg);
}
.controller-agile_versions #content > h2 {
  background-image: url(../images/icon-color/planning.svg);
}
.controller-agile_colors #content > h2 {
  background-image: url(../images/icon-color/color.svg);
}
.controller-report_templates #content > h2 {
  background-image: url(../images/icon-color/import.svg);
}
.controller-messages.action-show #content > h2 {
  background-image: url(../images/icon-color/question.svg);
}
.controller-messages.action-show #content h3 {
  background-image: url(../images/icon-color/answer.svg);
}
.controller-release_log_queues #content > h2 {
  background-image: url(../images/icon-color/log.svg);
}
.controller-release_log_configurations #content > h2 {
  background-image: url(../images/icon-color/log-configurations.svg);
}
.controller-repositories #content > h2 {
  background-image: url(../images/icon-color/repository.svg);
}
.controller-hearts #content > h2 {
  background-image: url(../images/icon-color/like.svg);
}
.controller-kanban #content > h2 {
  background-image: url(../images/icon-color/kanban.svg);
}
.controller-spectator #content > h1 {
  background-image: url(../images/icon-color/change-user.svg);
}
.controller-gitolite_public_keys.action-index #main > #content h3,
.controller-keys.action-new #main > #content h1,
.controller-keys #content > h2 {
  background-image: url(../images/icon-color/keys.svg);
}
.controller-canned_responses.action-index #content > h3 {
  background-image: url(../images/icon-color/settings.svg);
}
/* END ADMINISTRATION ICON */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/*common*/
div.journal ul.details a:hover,
ul.revision-info a:hover,
a,
a:link,
a:visited,
div.journal ul.details a,
ul.revision-info a {
  color: var(--color-link);
  font-style: normal;
}
#issue_tree td.subject,
#relations td.subject {
  width: auto;
}
/* START ISSUES */
.issue-card.context-menu-selection .attributes,
.issue-card.context-menu-selection em.info {
  color: var(--text-color-main);
}
#content table.list:not(.odd-even) tbody tr:nth-child(2n+1),
#content .odd,
#content #issue-changesets div.changeset:nth-child(2n+1) {
  background: none !important;
}
#content #ticket_data {
  position: relative;
  margin: 0 0 10px;
}
#change_author a[style="display: none;"] ~ .jcf-select {
  display: block !important;
}
div.subject a {
  display: inline-block;
  padding: 5px 10px;
  position: relative;
  z-index: 2;
  font-weight: 700;
  color: var(--priority-color);
  text-decoration: none;
}
div.subject a:before {
  content: '';
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0;
  bottom: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  -webkit-transition: opacity var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out;
}
div.subject a:hover:before {
  opacity: 1;
}
div.subject a.priority-1:before {
  background: var(--priority-1);
}
div.subject a.priority-2:before {
  background: var(--priority-2);
}
div.subject a.priority-3:before {
  background: var(--priority-3);
}
div.subject a.priority-4:before {
  background: var(--priority-4);
}
div.subject a.priority-5:before {
  background: var(--priority-5);
}
div.subject a.issue.closed {
  color: var(--priority-color);
}
table.list {
  border-color: var(--border-color-content);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  margin: 0;
  width: 100%;
  border-spacing: 0;
  border-collapse: separate;
  overflow: hidden;
}
table.list thead {
  position: sticky;
  z-index: 3;
  top: 0;
}
table.list.files tbody th {
  border-bottom: 0;
  border-top: 1px solid var(--border-color-content);
}
table.list .id .files {
  display: none;
  padding: 0;
  margin: 0;
}
table.list .icon-checked,
table.list b,
table.list .name {
  vertical-align: middle;
}
table.list .group span.count {
  background: var(--color-main-color);
}
table.list .group.last-group td {
  border-bottom: 0;
}
table.list .group td {
  text-align: center;
  color: var(--color-main-color);
  padding: 13px 14px;
  background: var(--bg-box);
  font-size: 1rem;
  line-height: 1.4;
  font-weight: bold !important;
  vertical-align: middle;
  border-bottom: 0;
}
table.list .group td:first-child {
  text-align: left;
}
table.list .group.open .expander {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
table.list .group.open .expander:after {
  color: var(--color-main-color);
}
table.list .group.open:nth-last-of-type(1) td {
  border-bottom: 0;
}
table.list .group.open:nth-last-of-type(1) td:first-child {
  text-align: left;
}
table.list .expander {
  vertical-align: middle;
  color: var(--text-color-main);
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  min-width: var(--icon-smaller-width);
  margin: -3px 5px 0 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  -webkit-transform: rotate(0);
  -moz-transform: rotate(0);
  -ms-transform: rotate(0);
  -o-transform: rotate(0);
  transform: rotate(0);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
  background: none !important;
}
table.list .expander:after {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  color: var(--icon-color-bg);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
table.list .expander:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
table.list .expander:hover:after,
table.list .expander.selected:after {
  color: var(--icon-color-hover);
}
table.list .expander:hover:before,
table.list .expander.selected:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
table.list .embpty-table th {
  border-bottom: 0;
}
table.list > tbody > tr:last-child > td {
  border-bottom: 0 !important;
}
table.list > tbody > tr:hover > td,
table.list > tbody > tr.issue.context-menu-selection > td,
drdn-items table.list > tbody > tr:hover > td.checkbox,
drdn-items table.list > tbody > tr.issue.context-menu-selection > td.checkbox,
table.list > tbody > tr:hover > td.subject,
table.list > tbody > tr.issue.context-menu-selection > td.subject {
  background: var(--all-hover-bg);
}
table.list > tbody > tr:hover table.progress,
table.list > tbody > tr.issue.context-menu-selection table.progress {
  background: var(--bg-fff);
}
table.list > tbody > tr:hover table.progress td.todo,
table.list > tbody > tr.issue.context-menu-selection table.progress td.todo {
  background: var(--bg-fff);
}
table.list > tbody > tr.context-menu-selection > td,
table.list > tbody > tr.context-menu-selection > td.checkbox {
  background: var(--bg-box);
}
table.list > tbody > tr.context-menu-selection table.progress {
  background: var(--bg-fff);
}
table.list > tbody > tr.context-menu-selection table.progress td.todo {
  background: var(--bg-fff);
}
table.list td.description,
table.list th,
table.list td,
table.list td.checkbox {
  background: var(--bg-fff);
  padding: 7px 14px;
  -webkit-transition: background var(--time-hover) ease-in-out;
  -moz-transition: background var(--time-hover) ease-in-out;
  -ms-transition: background var(--time-hover) ease-in-out;
  -o-transition: background var(--time-hover) ease-in-out;
  transition: background var(--time-hover) ease-in-out;
}
table.list td.description:last-child,
table.list th:last-child,
table.list td:last-child,
table.list td.checkbox:last-child {
  border-right: none;
}
table.list tr.idnt td.name a,
table.list tr.idnt td.subject a {
  position: relative;
  z-index: 1;
}
table.list tr.idnt td.name a:after,
table.list tr.idnt td.subject a:after {
  content: "\E14F";
  display: block;
  clear: both;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size-small);
  line-height: 1;
  position: absolute;
  top: 50%;
  left: calc(0 - var(--icon-width-small));
  margin: -10px 0 0;
  width: var(--icon-width-small);
  height: var(--icon-width-small);
}
table.list tr.idnt td.name span a:after,
table.list tr.idnt td.subject span a:after {
  display: none;
}
table.list tr.idnt-1 td.subject,
table.list tr.idnt-1 td.name {
  padding-left: 28px;
}
table.list tr.idnt-2 td.subject,
table.list tr.idnt-2 td.name {
  padding-left: 42px;
}
table.list tr.idnt-3 td.subject,
table.list tr.idnt-3 td.name {
  padding-left: 58px;
}
table.list tr.idnt-4 td.subject,
table.list tr.idnt-4 td.name {
  padding-left: 74px;
}
table.list tr.idnt-5 td.subject,
table.list tr.idnt-5 td.name {
  padding-left: 80px;
}
table.list tr.idnt-6 td.subject,
table.list tr.idnt-6 td.name {
  padding-left: 106px;
}
table.list tr.idnt-7 td.subject,
table.list tr.idnt-7 td.name {
  padding-left: 122px;
}
table.list tr.idnt-8 td.subject,
table.list tr.idnt-8 td.name {
  padding-left: 138px;
}
table.list tr.idnt-9 td.subject,
table.list tr.idnt-9 td.name {
  padding-left: 154px;
}
table.list th {
  font-weight: 700;
  text-align: center;
  color: var(--color-main-color);
  padding: 13px 14px;
  background: var(--bg-box);
  border-bottom: 1px solid var(--border-color-content);
}
table.list th a {
  color: var(--color-link);
}
table.list th.add_issue_notes_shown {
  border-right: 0;
}
table.list th:first-child {
  -webkit-border-radius: var(--border-radius) 0 0 0;
  -moz-border-radius: var(--border-radius) 0 0 0;
  border-radius: var(--border-radius) 0 0 0;
}
table.list th:last-child {
  -webkit-border-radius: 0 var(--border-radius) 0 0;
  -moz-border-radius: 0 var(--border-radius) 0 0;
  border-radius: 0 var(--border-radius) 0 0;
}
table.list .total th:last-child {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
table.list > tr:first-child td,
table.list tbody tr:first-child td {
  border-top: 0;
}
table.list > tr:first-child th,
table.list tbody tr:first-child th {
  border-bottom: 0;
}
table.list > tr:last-child td:last-child,
table.list tbody tr:last-child td:last-child {
  -webkit-border-radius: 0 0 var(--border-radius) 0;
  -moz-border-radius: 0 0 var(--border-radius) 0;
  border-radius: 0 0 var(--border-radius) 0;
}
table.list thead tr:last-child th,
table.list thead tr:last-child td {
  border-top: 0;
}
table.list td {
  font-weight: 600;
  font-size: 1rem;
  border-color: var(--border-color-content);
  border-top: 1px solid var(--border-color-content);
}
table.list td.add_issue_notes_shown {
  border-right: 0;
}
table.list td.roles .edit_membership p:last-child {
  margin-top: 10px;
}
table.list td.checkbox {
  border-color: var(--border-color-content);
}
table.list td.subject a,
table.list td.assigned_to a {
  color: inherit;
}
table.list td.subject a:hover,
table.list td.assigned_to a:hover {
  text-decoration: none;
}
table.list td.subject a {
  display: inline-block;
  padding: 5px 10px;
  position: relative;
  z-index: 2;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
table.list td.subject a:before {
  content: '';
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0;
  bottom: 0;
  opacity: 0.2;
  z-index: -1;
  width: 100%;
  height: 100%;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  -webkit-transition: opacity var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out;
}
table.list td.subject a:hover:before {
  opacity: 1;
}
table.list td.priority {
  font-weight: 700;
}
table.list td.buttons {
  width: 60px;
  padding-left: 2px;
  padding-right: 14px;
  text-align: right;
}
table.list td.buttons a,
table.list td.buttons .sort-handle {
  margin: 5px 2px!important;
}
table.list .priority-1 .priority {
  color: var(--priority-1);
}
table.list .priority-2 .priority {
  color: var(--priority-2);
}
table.list .priority-3 .priority {
  color: var(--priority-3);
}
table.list .priority-4 .priority {
  color: var(--priority-4);
}
table.list .priority-5 .priority {
  color: var(--priority-5);
}
table.list .priority-1 .subject a:before {
  background: var(--priority-1);
}
table.list .priority-2 .subject a:before {
  background: var(--priority-2);
}
table.list .priority-3 .subject a:before {
  background: var(--priority-3);
}
table.list .priority-4 .subject a:before {
  background: var(--priority-4);
}
table.list .priority-5 .subject a:before {
  background: var(--priority-5);
}
table.list .priority-1 .subject a:hover,
table.list .priority-2 .subject a:hover,
table.list .priority-3 .subject a:hover,
table.list .priority-4 .subject a:hover,
table.list .priority-5 .subject a:hover {
  color: var(--priority-color);
}
table.list tr:last-child td {
  border-bottom: none;
}
table.list thead tr:last-child td,
table.list thead tr td {
  border-bottom: 1px solid var(--border-color);
}
table.list .context-menu-selection,
table.list .context-menu-selection:hover,
table.list .context-menu-selection a,
table.list .context-menu-selection a:hover {
  color: inherit !important;
}
.controller-issues.action-index table.list th,
.controller-issues.action-index table.list td {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.controller-issues.action-index table.list thead tr th:first-child .list-inner-box {
  border-left: 8px solid var(--bg-box);
}
.controller-issues.action-index table.list td:first-child .list-inner-box {
  border-left: 8px solid var(--bg-fff);
}
.controller-issues.action-index table.list .priority-1 td:first-child .list-inner-box {
  border-left-color: var(--priority-1);
}
.controller-issues.action-index table.list .priority-2 td:first-child .list-inner-box {
  border-left-color: var(--priority-2);
}
.controller-issues.action-index table.list .priority-3 td:first-child .list-inner-box {
  border-left-color: var(--priority-3);
}
.controller-issues.action-index table.list .priority-4 td:first-child .list-inner-box {
  border-left-color: var(--priority-4);
}
.controller-issues.action-index table.list .priority-5 td:first-child .list-inner-box {
  border-left-color: var(--priority-5);
}
.controller-issues.action-index table.list .list-inner-box {
  padding: 0 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-issues.action-index table.list .list-inner-box .inner-box {
  display: block;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.controller-issues.action-index table.list .checkbox {
  max-width: 50px;
}
.controller-issues.action-index table.list .checkbox input {
  margin: 0;
}
.controller-issues.action-index table.list.JColResizer th,
.controller-issues.action-index table.list.JColResizer td {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.controller-issues.action-index .JCLRgrips {
  height: 2px;
  margin: 0 0 -2px;
}
.controller-issues.action-index .JCLRgrips .JCLRgrip {
  width: 8px;
}
.controller-issues.action-index .JCLRgrips .JCLRgrip.JCLRLastGrip {
  margin: 0;
  top: -9999999px;
  left: -9999999px;
  height: 0;
  width: 0;
}
.controller-issues.action-index .grip {
  position: sticky;
  top: 0;
  width: 8px;
  height: 47px;
  margin-top: 0;
  background: var(--color-main-color);
  margin-left: 0;
  z-index: 88;
  cursor: e-resize;
  opacity: 0.3;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-transition: opacity var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out;
}
.controller-issues.action-index .grip:hover {
  opacity: 1;
}
.controller-issues.action-index.small-list-view .grip {
  height: 30px;
}
body.controller-issues table.list {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  border-left: 0;
  border-right: 0;
}
body.controller-issues table.list > thead > tr > th:first-child,
body.controller-issues table.list > thead > tr > th:last-child {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
body.controller-issues .query-totals {
  margin: 0;
  padding: 15px 0;
}
body.controller-issues #content h2 + form {
  padding: 0;
  border: 0;
  z-index: 10;
}
body.controller-issues table.list {
  margin: 0;
}
.controller-issues.action-index .autoscroll {
  padding: 0;
  width: calc(100% + 60px);
  margin: 0 -30px;
  height: auto;
  overflow-y: hidden;
}
.controller-issues.action-index #main #content {
  padding-bottom: 76px;
}
.controller-issues.action-index #content {
  display: none;
}
.controller-issues.action-index #content > .nodata,
.controller-issues.action-index #content > .warning {
  margin-right: 30px;
  margin-left: 30px;
}
.controller-issues.action-index #query_form .holder-filters .in-filter {
  margin-bottom: 0;
}
.controller-issues.action-show hr {
  display: none;
}
.controller-issues.action-show div.description,
.controller-issues.action-show #issue_tree,
.controller-issues.action-show #relations,
.controller-issues.action-show #checklist {
  border-top: 1px solid var(--border-color-content);
  padding: 15px 0;
  position: relative;
}
.controller-issues.action-show div.description .value,
.controller-issues.action-show #issue_tree .value,
.controller-issues.action-show #relations .value,
.controller-issues.action-show #checklist .value {
  position: static !important;
}
.controller-issues.action-show div.description .fa-pencil,
.controller-issues.action-show #issue_tree .fa-pencil,
.controller-issues.action-show #relations .fa-pencil,
.controller-issues.action-show #checklist .fa-pencil {
  position: absolute;
  top: 15px;
  right: 48px;
}
.controller-issues.action-show div.description #checklist_items,
.controller-issues.action-show #issue_tree #checklist_items,
.controller-issues.action-show #relations #checklist_items,
.controller-issues.action-show #checklist #checklist_items {
  margin: 0;
  padding: 0;
}
.controller-issues.action-show #checklist p {
  margin: 0;
}
.controller-issues.action-show #checklist #checklist_items {
  padding-top: 15px;
}
.controller-issues.action-show #checklist #checklist_items li {
  margin-left: 0;
}
.controller-issues.action-show #issue_tree,
.controller-issues.action-show #relations {
  background: var(--bg-box);
  padding: 15px 30px ;
  width: calc(100% + 60px) !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: -1px -30px 20px;
  width: 100%;
  border-bottom: 1px solid var(--border-color-content);
  border-top: 1px solid var(--border-color-content);
}
.controller-issues.action-show #issue_tree .autoscroll,
.controller-issues.action-show #relations .autoscroll {
  overflow: visible;
}
.controller-issues.action-show #issue_tree .contextual,
.controller-issues.action-show #relations .contextual {
  right: 30px;
}
.controller-issues.action-show #issue_tree P,
.controller-issues.action-show #relations P {
  margin: 0;
}
.controller-issues.action-show #issue_tree table.list,
.controller-issues.action-show #relations table.list {
  margin: 20px 0 5px;
  background: var(--bg-fff);
  -webkit-border-radius: var(--border-radius-midle);
  -moz-border-radius: var(--border-radius-midle);
  border-radius: var(--border-radius-midle);
  -webkit-box-shadow: var(--table-shadow);
  -moz-box-shadow: var(--table-shadow);
  box-shadow: var(--table-shadow);
}
.controller-issues.action-show #issue_tree table.list tr:first-child td,
.controller-issues.action-show #relations table.list tr:first-child td {
  border-top: 0;
}
.controller-issues.action-show #issue_tree table.list .issue > td a.issue,
.controller-issues.action-show #relations table.list .issue > td a.issue {
  margin: 10px 5px;
}
.controller-issues.action-show #issue_tree .contextual a,
.controller-issues.action-show #relations .contextual a {
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  -webkit-transition: color var(--time-hover) ease-in-out, opacity var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, opacity var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, opacity var(--time-hover) ease-in-out;
}
.controller-issues.action-show #issue_tree .contextual a:after,
.controller-issues.action-show #relations .contextual a:after {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  color: var(--icon-color-bg);
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.controller-issues.action-show #issue_tree .contextual a:before,
.controller-issues.action-show #relations .contextual a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg) !important;
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
.controller-issues.action-show #issue_tree .contextual a:hover,
.controller-issues.action-show #relations .contextual a:hover {
  color: var(--icon-color-hover-bg);
}
.controller-issues.action-show #issue_tree .contextual a:hover:before,
.controller-issues.action-show #relations .contextual a:hover:before {
  background-color: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-issues.action-show #issue_tree .contextual a:hover:after,
.controller-issues.action-show #relations .contextual a:hover:after {
  color: var(--icon-color-hover-bg);
}
.controller-issues.action-show #issue_tree .contextual a.selected,
.controller-issues.action-show #relations .contextual a.selected {
  color: var(--icon_color_active-bg);
}
.controller-issues.action-show #issue_tree .contextual a.selected:before,
.controller-issues.action-show #relations .contextual a.selected:before {
  background-color: var(--icon_bg_active-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-issues.action-show #issue_tree .contextual a.selected:after,
.controller-issues.action-show #relations .contextual a.selected:after {
  color: var(--icon_color_active-bg);
}
.controller-issues.action-show #issue_tree ~ #relations {
  margin-top: -21px;
}
.controller-issues.action-show.loggedas #main #content h2 {
  width: calc(100% + 90px);
}
.controller-issues.action-show #main #content {
  position: relative;
}
.controller-issues.action-show #main #content h2 {
  padding: 15px 75px 15px 45px;
  margin: 0 -60px 20px -30px;
}
.controller-issues.action-show #main #content > .contextual {
  white-space: normal;
  position: absolute;
  width: 56px;
  z-index: 10;
  left: 100%;
  right: 4px;
  top: 94px;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: auto;
  -webkit-transition: right var(--time-main) ease-in-out;
  -moz-transition: right var(--time-main) ease-in-out;
  -ms-transition: right var(--time-main) ease-in-out;
  -o-transition: right var(--time-main) ease-in-out;
  transition: right var(--time-main) ease-in-out;
}
.controller-issues.action-show #main #content > .contextual:nth-of-type(1) {
  display: none;
}
.controller-issues.action-show #main #content > .contextual .icon {
  margin: 0 0 5px;
  display: flex;
}
.controller-issues.action-show #main #content > .contextual.hidden-link .icon:not(.new-icon) {
  opacity: 0.25;
}
.controller-issues.action-show #main #content > .contextual.hidden-link .icon:not(.new-icon):hover {
  opacity: 1;
}
.controller-issues.action-show #main #content > .contextual.hidden-link .new-icon:hover {
  opacity: 1;
  color: var(--bg-fff);
}
.controller-issues.action-show.issues-contextual #main {
  margin: 0 30px 0 0;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START ATTACHMENTS BOX */
#main .issue .attachments {
  padding: 30px 0 0;
}
#main .issue .attachments:after {
  content: '';
  display: block;
  clear: both;
}
#main .issue .attachments .thumbnails {
  display: none;
}
#main .attachments table {
  width: 100%;
}
#main .attachments div.images {
  padding: 0 20px;
  margin: 0 -30px -1px;
  border: none;
  background: var(--bg-box);
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
}
#main .attachments div.images a {
  position: relative;
  overflow: hidden;
  border: 5px solid var(--bg-fff);
  display: flex;
  justify-content: center;
  align-items: center;
  max-height: 100px;
  width: 100px;
  background: var(--bg-fff);
  margin: 10px;
  -webkit-border-radius: var(--border-radius-midle);
  -moz-border-radius: var(--border-radius-midle);
  border-radius: var(--border-radius-midle);
  -webkit-box-shadow: var(--table-shadow);
  -moz-box-shadow: var(--table-shadow);
  box-shadow: var(--table-shadow);
}
#main .attachments div.images a:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: var(--color-main-color);
  opacity: 0;
  -moz-transition: opacity var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out;
}
#main .attachments div.images a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -15px 0 0 -15px;
  width: 30px;
  height: 30px;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 2;
  background-color: var(--bg-fff);
  background-image: url(../images/icon-hover/all/zoom-in.svg);
  background-repeat: no-repeat;
  background-position: 0 0;
  transform: scale(0);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main .attachments div.images a:hover:after {
  opacity: 0.5;
}
#main .attachments div.images a:hover:before {
  transform: scale(1);
}
#main .attachments div.images a img {
  display: block;
  max-width: 100%;
}
#main .attachments table td {
  padding: 0;
  vertical-align: middle;
  font-size: 1rem;
  line-height: 26px;
}
#main .attachments table .size {
  margin: 0 5px 0 0;
}
#main .attachments table .delete {
  margin: 0 0 0 5px;
}
#main .attachments a.icon-attachment {
  width: auto;
  margin: 0 10px 0 0;
  font-size: 1rem;
  line-height: 26px;
  display: inline-block;
  text-decoration: none !important;
  float: left;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#main .attachments a.icon-attachment:before,
#main .attachments a.icon-attachment:after {
  display: none;
}
#main .attachments span.icon-attachment {
  padding: 0;
}
#main .attachments .icon-magnifier {
  display: none;
}
#main #zen-draft {
  padding: 0 0 15px;
  margin: 0 0 15px;
  border-bottom: 1px solid var(--border-color);
}
#main #zen-draft hr {
  display: none;
}
#main #zen-draft #apply-zen-draft,
#main #zen-draft #cancel-zen-draft {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 10px 0 0;
  height: auto;
  width: auto;
}
#main #zen-draft #apply-zen-draft:hover,
#main #zen-draft #cancel-zen-draft:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#main #zen-draft #apply-zen-draft:disabled,
#main #zen-draft #cancel-zen-draft:disabled {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
  cursor: default;
}
#main #zen-draft #apply-zen-draft:disabled:hover,
#main #zen-draft #cancel-zen-draft:disabled:hover {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
}
#main #zen-draft #cancel-zen-draft {
  background: var(--color-fff);
  color: var(--color-main-color);
}
#main #zen-draft #cancel-zen-draft:hover {
  background: var(--color-main-color);
  color: var(--color-fff);
}
#main #zen-draft #cancel-zen-draft:disabled {
  background: var(--color-dark-grey);
  cursor: default;
}
#main #zen-draft #cancel-zen-draft:disabled:hover {
  background: var(--color-dark-grey);
  color: var(--color-fff);
}
#main .tabular #zen-draft #apply-zen-draft {
  background: var(--color-main-color);
  color: var(--bg-fff);
}
#main .tabular #zen-draft #apply-zen-draft:hover {
  background: var(--bg-fff);
  color: var(--color-main-color);
}
/* END ATTACHMENTS BOX */
/* --------------------- https://redmine-evolution.com/ -- */
#new-relation-form p {
  display: flex;
  align-items: center;
  padding-top: 10px;
}
#new-relation-form p input[type="text"] {
  margin: 0 10px 0 10px;
}
#new-relation-form p input[type="submit"] {
  margin: 0 !important;
  -webkit-border-radius: var(--border-radius-small) !important;
  -moz-border-radius: var(--border-radius-small) !important;
  border-radius: var(--border-radius-small) !important;
}
#new-relation-form p input[type="submit"] + a {
  color: var(--button-color);
  background: var(--button-bg);
  -webkit-border-radius: var(--border-radius-small) !important;
  -moz-border-radius: var(--border-radius-small) !important;
  border-radius: var(--border-radius-small) !important;
}
#new-relation-form p input[type="submit"] + a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#main div.issue {
  background: none;
  position: relative;
  z-index: 1;
  padding: 33px 0 0;
  margin: 0;
  border-radius: 7px 7px 0 0;
  border: none;
}
#main div.issue:after {
  display: block;
  clear: both;
  width: 100%;
  height: 1px;
}
#main div.issue p {
  margin: 0 0 15px;
}
#main div.issue p.author {
  margin-bottom: 0;
}
#main div.issue .subject .value {
  display: flex;
  align-items: center;
}
#main div.issue .subject p {
  margin: 0 0 5px;
}
#main div.issue .subject div:first-child {
  display: flex;
  flex: 1 0 auto;
}
#main div.issue .value:hover .fa-pencil:before {
  transform: scale(1);
}
#main div.issue .value:hover .fa-pencil:after {
  color: var(--icon-color-hover);
}
#main div.issue .fa-pencil {
  margin: 0 0 0 10px;
}
#main div.issue .attributes {
  margin: 0;
  padding: 15px 0 14px;
  display: block;
  width: 100%;
}
#main div.issue .attributes:after {
  content: '';
  display: block;
  clear: both;
}
#main div.issue .attributes .splitcontentleft {
  float: none;
  width: auto;
  margin: 0 80px 0 0;
}
#main div.issue .attributes .attribute {
  padding: 0 0 5px;
  display: flex;
}
#main div.issue .attributes .attribute .value {
  overflow: visible;
  flex: 1 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin: 0 0 1px;
}
#main div.issue .attributes .attribute .label {
  float: none;
  margin: 0;
  width: 160px;
}
#main div.issue .contextual {
  position: absolute;
  top: 10px;
  right: 0;
  padding: 0;
  margin: 0 !important;
  min-height: inherit !important;
}
#main div.issue .contextual .journal-actions {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: 10;
}
#main div.issue table.list {
  margin: 0;
}
#main div.issue table.list td {
  padding: 3px 14px;
}
#main div.issue table.list td.subject a {
  margin: 0 5px;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#main div.issue table.list td.buttons {
  padding: 3px 14px 3px 4px;
}
#main div.issue table.list td.buttons a {
  margin: 0 0 0 10px;
}
#main div.issue table.list td.description p {
  margin: 5px 0;
}
#main div.issue table.progress td {
  padding: 0;
  border: none;
}
#main div.issue table.progress + .percent {
  margin: 0 !important;
}
div.issue ~ hr {
  display: none;
}
div.gravatar-with-child > img.gravatar:nth-child(2) {
  display: none;
}
div.gravatar-with-child {
  float: left;
  width: 40px;
  height: 40px;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: -5px 10px 10px 0;
}
div.gravatar-with-child img.gravatar {
  width: 100%;
  height: auto;
  border-radius: 0;
  margin: 0;
}
.next-prev-links.contextual {
  font-size: 0;
  line-height: 0;
  color: var(--bg-body);
}
.next-prev-links.contextual a[accesskey="p"],
.next-prev-links.contextual a[accesskey="n"] {
  display: inline-block;
  vertical-align: top;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  position: relative;
  text-indent: -99999px;
  margin: -2px 0 0;
}
.next-prev-links.contextual a[accesskey="p"]:after,
.next-prev-links.contextual a[accesskey="n"]:after {
  content: "\E168";
  color: var(--icon-color-bg);
  text-indent: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  text-align: center;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.next-prev-links.contextual a[accesskey="p"][accesskey="n"]:after,
.next-prev-links.contextual a[accesskey="n"][accesskey="n"]:after {
  content: "\E14F";
}
.next-prev-links.contextual a[accesskey="p"]:before,
.next-prev-links.contextual a[accesskey="n"]:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
.next-prev-links.contextual a[accesskey="p"]:hover:before,
.next-prev-links.contextual a[accesskey="n"]:hover:before {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.next-prev-links.contextual a[accesskey="p"]:hover:after,
.next-prev-links.contextual a[accesskey="n"]:hover:after {
  color: var(--icon-color-hover);
}
.next-prev-links.contextual .position {
  margin: 0 10px;
}
.next-prev-links.contextual .position a {
  font-size: 1rem;
  line-height: 21px;
  color: var(--text-color-main);
}
.next-prev-links.contextual .position a:hover {
  text-decoration: none;
}
table.progress {
  width: 160px;
  background: var(--bg-box);
  border-radius: 8px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
}
table.progress td {
  height: 10px;
  padding: 0;
  -webkit-border-radius: var(--border-radius) !important;
  -moz-border-radius: var(--border-radius) !important;
  border-radius: var(--border-radius) !important;
}
table.progress td.closed ~ .done,
table.progress td.closed ~ .todo {
  -webkit-border-radius: 0 var(--border-radius) var(--border-radius) 0 !important;
  -moz-border-radius: 0 var(--border-radius) var(--border-radius) 0 !important;
  border-radius: 0 var(--border-radius) var(--border-radius) 0 !important;
}
table.progress td.done ~ .todo {
  -webkit-border-radius: 0 var(--border-radius) var(--border-radius) 0 !important;
  -moz-border-radius: 0 var(--border-radius) var(--border-radius) 0 !important;
  border-radius: 0 var(--border-radius) var(--border-radius) 0 !important;
}
table.progress td.todo {
  background: var(--bg-box);
}
.priority-1 table.progress td.closed {
  background: var(--priority-1);
}
.priority-2 table.progress td.closed {
  background: var(--priority-2);
}
.priority-3 table.progress td.closed {
  background: var(--priority-3);
}
.priority-4 table.progress td.closed {
  background: var(--priority-4);
}
.priority-5 table.progress td.closed {
  background: var(--priority-5);
}
.priority-1 .priority-1 table.progress td.closed,
.priority-2 .priority-1 table.progress td.closed,
.priority-3 .priority-1 table.progress td.closed,
.priority-4 .priority-1 table.progress td.closed,
.priority-5 .priority-1 table.progress td.closed {
  background: var(--priority-1);
}
.priority-1 .priority-2 table.progress td.closed,
.priority-2 .priority-2 table.progress td.closed,
.priority-3 .priority-2 table.progress td.closed,
.priority-4 .priority-2 table.progress td.closed,
.priority-5 .priority-2 table.progress td.closed {
  background: var(--priority-2);
}
.priority-1 .priority-3 table.progress td.closed,
.priority-2 .priority-3 table.progress td.closed,
.priority-3 .priority-3 table.progress td.closed,
.priority-4 .priority-3 table.progress td.closed,
.priority-5 .priority-3 table.progress td.closed {
  background: var(--priority-3);
}
.priority-1 .priority-4 table.progress td.closed,
.priority-2 .priority-4 table.progress td.closed,
.priority-3 .priority-4 table.progress td.closed,
.priority-4 .priority-4 table.progress td.closed,
.priority-5 .priority-4 table.progress td.closed {
  background: var(--priority-4);
}
.priority-1 .priority-5 table.progress td.closed,
.priority-2 .priority-5 table.progress td.closed,
.priority-3 .priority-5 table.progress td.closed,
.priority-4 .priority-5 table.progress td.closed,
.priority-5 .priority-5 table.progress td.closed {
  background: var(--priority-5);
}
body.controller-issues.action-show div.issue.details .attributes {
  display: block !important;
}
body.controller-issues.action-show div.issue.details .splitcontent {
  display: flex !important;
}
/* --------------------- https://redmine-evolution.com/ -- */
/*  START HISTORY */
.info-small-fancybox {
  position: absolute;
  top: -999999px;
  left: -999999px;
}
#history div.thumbnails,
#history_tabs div.thumbnails {
  padding: 10px 0;
  margin: 0 0 10px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
#history div.thumbnails div,
#history_tabs div.thumbnails div {
  margin: 0 5px 5px 0;
  border: 0;
}
#history div.thumbnails div a,
#history_tabs div.thumbnails div a {
  border: 1px solid var(--border-color);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  -webkit-transition: border-color var(--time-hover) ease-in-out;
  -moz-transition: border-color var(--time-hover) ease-in-out;
  -ms-transition: border-color var(--time-hover) ease-in-out;
  -o-transition: border-color var(--time-hover) ease-in-out;
  transition: border-color var(--time-hover) ease-in-out;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
}
#history div.thumbnails div a:after,
#history_tabs div.thumbnails div a:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  -webkit-transition: opacity var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out;
  opacity: 0;
  background: var(--color-main-color);
}
#history div.thumbnails div a:before,
#history_tabs div.thumbnails div a:before {
  color: var(--color-main-color);
  content: "\E181";
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  background: var(--bg-fff);
  display: block;
  clear: both;
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -13px 0 0 -13px;
  text-align: center;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
}
#history div.thumbnails div a:hover,
#history_tabs div.thumbnails div a:hover {
  border-color: var(--color-main-color);
}
#history div.thumbnails div a:hover:after,
#history_tabs div.thumbnails div a:hover:after {
  opacity: 0.2;
}
#history div.thumbnails div a:hover:before,
#history_tabs div.thumbnails div a:hover:before {
  color: var(--color-main-color-text);
  background: var(--color-main-color);
}
#history div.thumbnails div a img,
#history_tabs div.thumbnails div a img {
  display: block;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
#main > #content #history_tabs,
#main > #content #history,
#main > #content + #history {
  padding: 0 0 20px;
  border: none;
  margin: 0;
  position: relative;
  z-index: 2;
}
#main > #content #history_tabs .icon-magnifier,
#main > #content #history .icon-magnifier,
#main > #content + #history .icon-magnifier {
  position: absolute !important;
  top: -9999999px;
  left: -9999999px;
}
#main > #content #history_tabs h3,
#main > #content #history h3,
#main > #content + #history h3 {
  position: relative;
  border-bottom: 1px solid var(--border-color-content);
  padding: 0 0 7px;
  color: var(--color-main-color);
  font-size: 1.1428rem;
  font-weight: 600;
}
#main > #content #history_tabs h3:before,
#main > #content #history h3:before,
#main > #content + #history h3:before {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 60px;
  height: 4px;
  background: var(--color-main-color);
  border-radius: 2px;
}
#main > #content #history_tabs .journal > div,
#main > #content #history .journal > div,
#main > #content + #history .journal > div {
  position: relative;
  padding: 5px 0;
}
#main > #content #history_tabs .journal > div:target,
#main > #content #history .journal > div:target,
#main > #content + #history .journal > div:target {
  position: relative;
}
#main > #content #history_tabs .journal > div:target:after,
#main > #content #history .journal > div:target:after,
#main > #content + #history .journal > div:target:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: -30px;
  width: 100%;
  height: 100%;
  padding: 0 30px;
  background: var(--bg-box);
  z-index: -1;
}
#main > #content #history_tabs .journal > div:target h4,
#main > #content #history .journal > div:target h4,
#main > #content + #history .journal > div:target h4 {
  background: none;
  position: relative;
  min-height: 26px;
}
#main > #content #history_tabs .journal .gravatar,
#main > #content #history .journal .gravatar,
#main > #content + #history .journal .gravatar {
  margin: 0 5px 8px 0;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
}
#main > #content #history_tabs .journal h4,
#main > #content #history .journal h4,
#main > #content + #history .journal h4 {
  font-size: 1rem;
  line-height: 1.4;
  font-weight: 600;
  min-height: 26px;
  border-bottom: 1px solid var(--border-color-content);
}
#main > #content #history_tabs .journal h4 .icon-email,
#main > #content #history .journal h4 .icon-email,
#main > #content + #history .journal h4 .icon-email {
  padding: 0;
}
#main > #content #history_tabs .journal h4 .icon-email:after,
#main > #content #history .journal h4 .icon-email:after,
#main > #content + #history .journal h4 .icon-email:after {
  display: none;
}
#main > #content #history_tabs .journal .details,
#main > #content #history .journal .details,
#main > #content + #history .journal .details {
  padding: 0;
  margin: 0;
  list-style: none;
  color: #373737;
  overflow: hidden;
}
#main > #content #history_tabs .journal .details li,
#main > #content #history .journal .details li,
#main > #content + #history .journal .details li {
  margin: 0 0 10px;
}
#main > #content #history_tabs .journal .details strong,
#main > #content #history .journal .details strong,
#main > #content + #history .journal .details strong,
#main > #content #history_tabs .journal .details b,
#main > #content #history .journal .details b,
#main > #content + #history .journal .details b {
  font-weight: 600;
}
#main > #content #history_tabs .journal .details i,
#main > #content #history .journal .details i,
#main > #content + #history .journal .details i {
  font-style: normal;
  font-weight: 600;
}
#main > #content #history_tabs form[action*="journals"],
#main > #content #history form[action*="journals"],
#main > #content + #history form[action*="journals"] {
  padding: 20px;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  display: block;
  margin: 0 0 20px;
}
#main > #content #history_tabs form[action*="journals"] p,
#main > #content #history form[action*="journals"] p,
#main > #content + #history form[action*="journals"] p {
  margin: 15px 0 0;
}
#main > #content #history_tabs form[action*="journals"] .jstBlock,
#main > #content #history form[action*="journals"] .jstBlock,
#main > #content + #history form[action*="journals"] .jstBlock {
  margin: 0 0 15px;
}
#main > #content #history_tabs form[action*="journals"] input[type="submit"],
#main > #content #history form[action*="journals"] input[type="submit"],
#main > #content + #history form[action*="journals"] input[type="submit"] {
  color: var(--button-main-color);
  background: var(--button-main-bg);
}
#main > #content #history_tabs form[action*="journals"] input[type="submit"]:hover,
#main > #content #history form[action*="journals"] input[type="submit"]:hover,
#main > #content + #history form[action*="journals"] input[type="submit"]:hover {
  color: var(--button-main-color-hover);
  background: var(--button-main-bg-hover);
}
#main > #content #history_tabs form[action*="journals"] input[type="submit"] + a,
#main > #content #history form[action*="journals"] input[type="submit"] + a,
#main > #content + #history form[action*="journals"] input[type="submit"] + a {
  background: var(--button-bg);
  color: var(--button-color);
}
#main > #content #history_tabs form[action*="journals"] input[type="submit"] + a:hover,
#main > #content #history form[action*="journals"] input[type="submit"] + a:hover,
#main > #content + #history form[action*="journals"] input[type="submit"] + a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#main > #content + #history {
  padding: 20px 30px 20px;
  margin: -62px 0 10px;
  background: var(--bg-fff);
  -webkit-border-radius: 0 0 var(--border-radius) var(--border-radius);
  -moz-border-radius: 0 0 var(--border-radius) var(--border-radius);
  border-radius: 0 0 var(--border-radius) var(--border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  position: relative;
  z-index: 11;
}
/*  END HISTORY */
/* --------------------- https://redmine-evolution.com/ -- */
#new-relation-form {
  display: block;
  padding: 15px 0 0;
}
#new-relation-form p {
  display: flex;
  align-items: center;
}
#new-relation-form .jcf-select {
  margin: 0 10px 0 0;
}
#new-relation-form input.autocomplete {
  margin: 0 10px !important;
}
#new-relation-form input[type="submit"] {
  height: 30px !important;
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  border-radius: var(--border-radius-small) !important;
  -moz-border-radius: var(--border-radius-small) !important;
  -webkit-border-radius: var(--border-radius-small) !important;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px 30px !important;
  font-weight: 700;
  margin: 0 20px 0 0 !important;
  font-size: 1rem !important;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
}
#update {
  position: relative;
  z-index: 11;
  margin: 0;
  width: 100%;
  padding: 15px 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#update:after {
  content: '';
  display: block;
  clear: both;
  width: calc(100% + 60px);
  height: 1px;
  background: var(--border-color);
  position: absolute;
  top: 0;
  left: -30px;
}
#update .cc-list-edit .select2 {
  margin-left: 0;
}
#content form .box .cc-list-edit {
  display: flex;
  align-items: center;
}
#content form .box .cc-list-edit .is-cc {
  margin: 0 0 0 -295px !important;
  width: 295px;
  padding: 0 10px 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#content form .box .cc-list-edit .is-cc label {
  margin: 0 !important;
  width: 100% !important;
  padding: 0 !important;
}
#content #update {
  display: block;
  margin: 0 0 20px;
}
#content #update.hidden {
  display: none;
  position: relative;
  top: 0;
  left: 0;
}
#content #update .jstBlock {
  margin: 0 0 10px;
}
#content #update h3 {
  color: var(--text-color-main);
}
#content #update .box {
  background: none;
  border: none;
  margin: 0;
  padding: 0;
}
#content #update .box fieldset {
  overflow: hidden;
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 52px 20px 15px;
  border: none;
  margin-bottom: 20px;
  background: var(--bg-other);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#content #update .box fieldset legend {
  position: absolute;
  top: 17px;
  left: 20px;
  font-weight: 600;
  color: var(--text-color-main);
  margin: 0;
  padding: 0;
}
#content #update label {
  text-align: left;
}
#content #update .jcf-select {
  min-width: 190px;
}
#content #update .attributes .splitcontent {
  display: flex;
  justify-content: space-between;
}
#content #update select#issue_deals_issue_attributes_deal_id + .jcf-select {
  display: none !important;
}
#content #update #checklist_form .checklist-item {
  display: flex;
  align-items: center;
}
#content #update #checklist_form .checklist-subject {
  flex: 1 0 auto;
}
#content #update #checklist_form input[type='checkbox'] {
  margin-right: 15px;
}
#content form.new_issue #checklist_form .checklist-item {
  display: flex;
  align-items: center;
}
#content form.new_issue #checklist_form input[type='checkbox'] {
  margin-right: 15px;
}
span.required {
  color: var(--color-main-color);
}
#issue_is_private_wrap {
  padding: 0 0 0 10px;
  float: none;
  justify-content: flex-end;
}
a.sort {
  position: relative;
  background-image: none !important;
}
a.sort:after {
  color: var(--color-main-color);
  text-align: center;
  position: absolute;
  top: 50%;
  right: 0px;
  display: block;
  clear: both;
  height: 18px;
  width: 18px;
  margin: -9px 0 0;
  overflow: hidden;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 18px;
  line-height: 18px;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START CHECK LIST */
#main #checklist_form_items {
  flex: 1 0 auto;
  width: 100%;
}
#main #checklist_form_items .checklist-item.new {
  width: 100%;
  display: flex;
}
#main #checklist_form_items .checklist-item.new .checklist-new {
  display: block;
  width: calc(100% - 36px);
  flex: 1 0 auto;
}
#main #checklist_form_items .checklist-item.new .checklist-new input {
  width: 100%;
  margin: 0;
}
#main #checklist_form_items .checklist-item.new:hover span.icon:before {
  transform: scale(1);
}
#main #checklist_form_items .checklist-item.new:hover span.icon:after {
  opacity: 1;
}
#main #checklist_form_items .checklist-remove a {
  margin: 0 0 0 5px;
}
#issue-form #watchers_form_container {
  margin-top: 10px;
  border-spacing: 0;
  padding: 0;
  position: relative;
}
#issue-form #watchers_form_container .search_for_watchers {
  position: absolute;
  top: 0;
  right: 0;
  width: 26px;
  height: 26px;
}
#issue-form #watchers_form_container p {
  margin: 0;
}
#issue-form #watchers_form_container #watchers_inputs {
  padding: 0 40px 0 0;
}
#issue-form #watchers_form_container #watchers_inputs label {
  margin-bottom: 5px !important;
}
#issue-form p br {
  content: '';
  display: block;
  clear: both;
  width: 100%;
  margin: 0 0 5px;
}
/* END CHECK LIST */
.attachments_form span.attachments_fields > span {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
@media (max-width: 768px) {
  table.list th,
  table.list td,
  table.list td.checkbox {
    padding: 10px;
  }
  table.list th {
    font-size: 1rem;
  }
}
/* END ISSUES */
/* START PABLIC TICETS */
.controller-public_tickets.action-show #header {
  padding-top: 20px;
}
.controller-public_tickets #main #content .journal {
  display: block;
  padding: 15px 20px 15px 20px;
  margin: 15px 0 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  background: var(--bg-box);
  border: 0;
  position: relative;
}
.controller-public_tickets #main #content .journal:after {
  display: none;
}
.controller-public_tickets #main #content .journal > div {
  padding: 0 !important;
}
.controller-public_tickets #main #content .journal h4 {
  border-bottom: 0 !important;
  padding: 0 !important;
}
.controller-public_tickets #content #update .box {
  color: var(--text-color-main);
  overflow: hidden;
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
  margin: 0 0 20px;
  border: none;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
.controller-public_tickets #content #update .box label {
  margin: 0 0 10px !important;
  font-weight: bold;
  width: 100% !important;
}
/* END PABLIC TICETS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START BADGE */
.controller-issues.action-show #main > #content > .badge {
  position: absolute;
  top: 60px;
  left: 0;
  width: auto !important;
  max-height: 18px;
}
.controller-issues.action-show #main > #content > .badge.badge-private {
  position: static;
  top: 0;
  left: 0;
  margin: 0;
  border: none;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
.controller-issues.action-show #main > #content > .contextual:not(.next-prev-links) .drdn .drdn-content {
  display: block;
  background: none;
  margin: 0;
  position: static;
  border: 0;
  padding: 0;
}
.controller-issues.action-show #main > #content > .contextual:not(.next-prev-links) .drdn .drdn-trigger {
  display: none;
}
.controller-issues.action-show #main > #content > .contextual:not(.next-prev-links) .drdn-items {
  display: block;
  padding: 0;
  margin: 0;
}
.controller-issues.action-show #main > #content > .contextual:not(.next-prev-links) .drdn-items a.icon {
  font-size: 0;
  line-height: 0;
  background: none;
  height: var(--icon-width);
  width: var(--icon-width);
  min-width: var(--icon-width);
  min-height: var(--icon-width);
  padding: 0;
  margin: 0 0 5px;
}
.controller-issues.action-show #main > #content > .contextual:not(.next-prev-links) .drdn-items a.icon:after {
  font-size: var(--icon-font-size) !important;
  line-height: var(--icon-width) !important;
  height: var(--icon-width);
  width: var(--icon-width);
  color: var(--icon-color-bg);
  left: 0;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.controller-issues.action-show #main > #content > .contextual:not(.next-prev-links) .drdn-items a.icon:hover:after {
  color: var(--icon-color-hover-bg);
}
.controller-issues.action-show #main > #content > .contextual:not(.next-prev-links) .drdn-items a.icon:hover:before {
  transform: scale(1);
}
.controller-issues.action-show #main > #content > .contextual:not(.next-prev-links) .drdn-items a.icon:before {
  background: var(--icon_bg-bg);
  width: 100%;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  transform: scale(0);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
/* END BADGE */
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  .controller-issues #main .badge {
    left: 10px;
  }
  .controller-issues #main .badge.badge-private {
    left: 0;
    top: 0;
    position: inherit;
  }
  .controller-issues #main .badge > #content > .contextual:not(.next-prev-links) .drdn-items {
    display: block;
    padding: 0;
    margin: 0;
  }
  .controller-issues #main .badge > #content > .contextual:not(.next-prev-links) .drdn-items a.icon {
    margin: 0 5px;
  }
  .controller-public_tickets.action-show #header {
    padding-top: 20px;
  }
  .controller-public_tickets #content #update .box {
    padding: 20px;
    margin: 0 0 20px;
  }
  .controller-public_tickets #content #update .box p {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
    font-weight: bold;
  }
  .controller-public_tickets #content #update .box p label {
    margin: 0 0 10px !important;
    font-weight: bold;
    width: 100% !important;
  }
  #tab-content-timelog #issue_timelog_table {
    width: 100%;
    margin: 0 0 20px;
    float: none;
  }
  #tab-content-timelog #issue_timelog {
    width: 100%;
    float: none;
  }
  body.controller-issues.action-show div.issue.details .value {
    overflow: hidden;
  }
  body.controller-issues.action-index #main #content {
    padding-left: 10px;
    padding-right: 10PX;
  }
  body.controller-issues.action-index .query-totals {
    padding: 0 0 10px;
  }
  body.controller-issues.action-index .autoscroll {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
  }
  .controller-issues.action-index table.list tr:not(.group) td:not(.id):not(.subject):not(.buttons):not(.assigned_to),
  .controller-issues.action-index table.list tr:not(.group) th:not(.id):not(.subject):not(.buttons):not(.assigned_to) {
    display: none;
  }
  .controller-issues.action-index table.list tr:not(.group) th.subject,
  .controller-issues.action-index table.list tr:not(.group) td.subject,
  .controller-issues.action-index table.list tr:not(.group) th.assigned_to,
  .controller-issues.action-index table.list tr:not(.group) td.assigned_to {
    text-align: left;
  }
  .controller-issues.action-index #query_form .holder-filters .in-filter {
    padding: 0 0 10px;
    margin-bottom: 20px;
  }
  .value .fa,
  .value .dynamicEdit {
    display: none !important;
  }
  .open-sidebar-link {
    display: none;
  }
  .next-prev-links.contextual a[accesskey="p"]:before,
  .next-prev-links.contextual a[accesskey="n"]:before {
    display: none;
  }
  body.controller-issues #query_form_with_buttons .holder-filters .in-filter {
    padding: 0 10px 20px;
  }
  body.controller-issues .query-totals {
    padding: 0 10px 10px;
  }
  body.controller-issues.action-show.loggedas #wrapper2,
  body.controller-issues.action-show.issues-contextual #wrapper2 {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  body.controller-issues.action-show.loggedas #main #content > .contextual,
  body.controller-issues.action-show.issues-contextual #main #content > .contextual {
    position: fixed;
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50px !important;
    margin-top: 0 !important;
    border-top: 1px solid var(--border-color);
    flex-direction: row;
    align-items: center;
    justify-content: center;
    -webkit-transition: left var(--time-main) ease-in-out;
    -moz-transition: left var(--time-main) ease-in-out;
    -ms-transition: left var(--time-main) ease-in-out;
    -o-transition: left var(--time-main) ease-in-out;
    transition: left var(--time-main) ease-in-out;
  }
  body.controller-issues.action-show.loggedas #main #content > .contextual .icon,
  body.controller-issues.action-show.issues-contextual #main #content > .contextual .icon,
  body.controller-issues.action-show.loggedas #main #content > .contextual .assign-to-me,
  body.controller-issues.action-show.issues-contextual #main #content > .contextual .assign-to-me {
    color: var(--icon-color);
    margin: 0 5px;
  }
  body.controller-issues.action-show.loggedas #main #content > .contextual .icon:before,
  body.controller-issues.action-show.issues-contextual #main #content > .contextual .icon:before,
  body.controller-issues.action-show.loggedas #main #content > .contextual .assign-to-me:before,
  body.controller-issues.action-show.issues-contextual #main #content > .contextual .assign-to-me:before {
    background: var(--icon-bg);
  }
  body.controller-issues.action-show.loggedas #main #content > .contextual .drdn-items,
  body.controller-issues.action-show.issues-contextual #main #content > .contextual .drdn-items {
    display: flex;
  }
  body.controller-issues.action-show.loggedas #main #content > .contextual .drdn-items a.icon,
  body.controller-issues.action-show.issues-contextual #main #content > .contextual .drdn-items a.icon {
    margin: 0 5px !important;
  }
  body.controller-issues.action-show.loggedas #main #content > .contextual.hidden-link .icon:not(.new-icon),
  body.controller-issues.action-show.issues-contextual #main #content > .contextual.hidden-link .icon:not(.new-icon) {
    display: none;
  }
  body.controller-issues.action-show #main #content h2 {
    width: calc(100% + 20px);
    padding: 15px 75px 15px 45px;
    margin: 0 -10px 20px;
  }
  body.controller-issues.action-show #main #content p.other-formats {
    position: static;
    width: 100%;
  }
  body.controller-issues.action-show #issue_tree table.list,
  body.controller-issues.action-show #relations table.list {
    border-spacing: 0;
    -webkit-box-shadow: var(--box-shadow-null);
    -moz-box-shadow: var(--box-shadow-null);
    box-shadow: var(--box-shadow-null);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    border-bottom: 1px solid var(--border-color);
    border-right: 1px solid var(--border-color);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  body.controller-issues.action-show #issue_tree table.list > tbody > tr:first-child > td:first-child,
  body.controller-issues.action-show #relations table.list > tbody > tr:first-child > td:first-child {
    -webkit-border-top-left-radius: 0;
    -moz-border-top-left-radius: 0;
    border-top-left-radius: 0;
  }
  body.controller-issues.action-show #issue_tree table.list > tbody > tr:first-child > td:last-child,
  body.controller-issues.action-show #relations table.list > tbody > tr:first-child > td:last-child {
    -webkit-border-top-right-radius: 0;
    -moz-border-top-right-radius: 0;
    border-top-right-radius: 0;
  }
  body.controller-issues.action-show #issue_tree table.list > tbody > tr:last-child > td:first-child,
  body.controller-issues.action-show #relations table.list > tbody > tr:last-child > td:first-child {
    -webkit-border-bottom-left-radius: 0;
    -moz-border-bottom-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  body.controller-issues.action-show #issue_tree table.list > tbody > tr:last-child > td:last-child,
  body.controller-issues.action-show #relations table.list > tbody > tr:last-child > td:last-child {
    -webkit-border-bottom-right-radius: 0;
    -moz-border-bottom-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  body.controller-issues.action-show #issue_tree .contextual a:before,
  body.controller-issues.action-show #relations .contextual a:before {
    display: none !important;
  }
  body.controller-issues tr.issue table.progress {
    width: 100%;
    min-width: 100%;
    max-width: 160px;
  }
  body.controller-issues #issue_tree tr.issue,
  body.controller-issues #relations tr.issue {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  body.controller-issues #issue_tree tr.issue > td,
  body.controller-issues #relations tr.issue > td {
    flex: 1 0 auto;
    border: 0;
    border-top: 1px solid var(--border-color) !important;
    border-left: 1px solid var(--border-color) !important;
    width: 33.3333% !important;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
  }
  body.controller-issues #issue_tree tr.issue > td:not(.checkbox),
  body.controller-issues #relations tr.issue > td:not(.checkbox) {
    display: flex;
    align-items: center;
    vertical-align: center;
    flex-wrap: wrap;
  }
  body.controller-issues #issue_tree tr.issue > td.subject,
  body.controller-issues #relations tr.issue > td.subject {
    width: 100% !important;
    word-break: break-word;
  }
  body.controller-issues #issue_tree tr.issue > td.buttons,
  body.controller-issues #relations tr.issue > td.buttons {
    position: static;
    justify-content: flex-end;
  }
  body.controller-issues.action-index #content {
    display: none;
  }
  body.controller-issues.action-index #content > .nodata,
  body.controller-issues.action-index #content > .warning {
    margin-right: 10px;
    margin-left: 10px;
  }
  #main > #content + #history {
    padding: 10px;
    -webkit-box-shadow: var(--box-shadow-null);
    -moz-box-shadow: var(--box-shadow-null);
    box-shadow: var(--box-shadow-null);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #main > #content #history .journal h4,
  #main > #content + #history .journal h4 {
    padding: 0 0 10px;
    margin: 0 0 10px;
    min-height: 26px;
  }
  #main > #content #history .journal > div:target:after,
  #main > #content + #history .journal > div:target:after {
    left: -10px;
    width: calc(100% + 20px);
  }
  #main .toggle-multiselect,
  #main span.toggle-multiselect.icon-only {
    display: none !important;
  }
  table.list {
    -webkit-box-shadow: var(--box-shadow-null);
    -moz-box-shadow: var(--box-shadow-null);
    box-shadow: var(--box-shadow-null);
  }
  table.list > tbody > tr:hover > td,
  table.list > tbody > tr.issue.idnt > td,
  table.list > tbody > tr.issue.context-menu-selection > td,
  table.list > tbody > tr:hover > td.checkbox,
  table.list > tbody > tr.issue.idnt > td.checkbox,
  table.list > tbody > tr.issue.context-menu-selection > td.checkbox,
  table.list > tbody > tr:hover > td.subject,
  table.list > tbody > tr.issue.idnt > td.subject,
  table.list > tbody > tr.issue.context-menu-selection > td.subject {
    background: var(--bg-fff);
  }
}
@media screen and (max-width: 650px) {
  #main div.issue .subject div:first-child {
    display: block;
  }
  .controller-issues #main .badge {
    top: 54px;
    left: 10px;
  }
  .controller-issues #main .badge.badge-private {
    top: 0;
    left: 0;
  }
  #wrapper tr.group span.totals {
    display: block;
    margin: 0 0 5px;
  }
  #new-relation-form p input[type="submit"] {
    margin: 10px 0 0 !important;
  }
  .controller-issues.action-index table.list tr td.assigned_to,
  .controller-issues.action-index table.list tr th.assigned_to {
    display: none;
  }
  #issue-form #watchers_form_container {
    margin-top: 20px;
  }
  .journal-link {
    display: none;
  }
  body.controller-issues .query-totals .total-for-estimated-hours {
    display: block;
  }
  body.controller-issues .query-totals .total-for-spent-hours {
    display: block;
    margin: 5px 0 0;
  }
  .controller-issues.action-index #main #content,
  .controller-keys.action-index #main #content {
    padding-bottom: 20px;
  }
  #main div.issue {
    padding: 20px 0 0;
  }
  #main #zen-draft #apply-zen-draft {
    width: 100%;
  }
  #main #zen-draft #cancel-zen-draft {
    margin: 10px 0 0;
    width: 100%;
    display: block;
    text-align: center;
  }
  #main > #content #history form[action*="journals"],
  #main > #content + #history form[action*="journals"] {
    padding: 10px;
    margin: 0 -10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #content #update {
    margin: 0 0 10px;
  }
  #content #update .box {
    overflow: inherit;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100%;
  }
  #content #update .box fieldset {
    padding: 15px 10px !important;
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 10px !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    width: calc(100% + 20px);
  }
  #content #update .box fieldset legend {
    display: flex;
    position: relative;
    left: 0 !important;
    top: 0;
    margin: 0 !important;
    width: 100%;
    padding: 10px 0;
    z-index: 2;
  }
  #content #update .box fieldset legend:before {
    content: '';
    display: block;
    clear: both;
    position: absolute;
    top: 0;
    left: -10px;
    width: calc(100% + 20px);
    height: 100%;
    background: var(--bg-mobile);
    z-index: -1;
  }
  #content .box {
    overflow: inherit;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100%;
  }
  #content .box fieldset {
    padding: 15px 10px !important;
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 10px !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    width: calc(100% + 20px);
  }
  #content .box fieldset legend {
    display: flex;
    position: relative;
    z-index: 2;
    left: 0 !important;
    top: 0;
    margin: 0 !important;
    width: 100%;
    padding: 10px 0 0;
  }
  #content .box fieldset legend:before {
    content: '';
    display: block;
    clear: both;
    position: absolute;
    top: 0;
    left: -10px;
    width: calc(100% + 20px);
    height: 100%;
    background: var(--bg-mobile);
    z-index: -1;
  }
  #content .add_attachment {
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  #new-relation-form input.autocomplete {
    margin: 0 0 0 10px !important;
  }
}
@media screen and (max-width: 480px) {
  div.gravatar-with-child {
    width: 40px;
    height: 40px;
  }
  #content #new-relation-form p,
  #content form.new_operation_object p,
  #content form.edit_relation p {
    display: block;
  }
  #content #new-relation-form select,
  #content form.new_operation_object select,
  #content form.edit_relation select {
    margin-bottom: 10px;
  }
  #content #new-relation-form .jcf-select,
  #content form.new_operation_object .jcf-select,
  #content form.edit_relation .jcf-select {
    margin: 0 0 10px;
    width: 100%;
  }
  #content #new-relation-form input[type="text"].autocomplete,
  #content form.new_operation_object input[type="text"].autocomplete,
  #content form.edit_relation input[type="text"].autocomplete {
    width: 100%;
    margin: 5px 0 0 !important;
  }
}
.controller-issues.action-new #change_author > a {
  display: none !important;
}
.controller-issues.action-show .mod-obj {
  display: none;
}
/* 30.03.2022 */
.controller-issues .refreshData {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-width);
  width: var(--icon-width);
  min-width: var(--icon-width);
  min-height: var(--icon-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  vertical-align: middle;
  -webkit-transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  cursor: pointer;
}
.controller-issues .refreshData:after {
  content: "\E171";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.controller-issues .refreshData:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.controller-issues .refreshData:hover {
  color: var(--icon_color_active);
  background-image: none !important;
}
.controller-issues .refreshData:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-issues .list .refreshData {
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  min-width: var(--icon-smaller-width);
}
.controller-issues .list .refreshData:after {
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
}
.controller-issues .list .refreshData:hover {
  color: var(--color-main-color-text);
}
.controller-issues .list .refreshData:hover:before {
  background: var(--color-main-color);
}
#content #change_author .icon-edit {
  margin: 0 10px 0 0;
}
/* START TEST DESCRIPTION */
.controller-issues.action-index table.list td.buttons {
  overflow: visible;
}
.controller-issues.action-index table.list td.buttons .list-inner-box {
  overflow: visible;
}
.controller-issues.action-index table.list td.buttons .inner-box {
  overflow: visible;
  display: flex;
  flex-flow: wrap;
  align-items: center;
}
.holder-description {
  position: relative;
}
.holder-description .open-box-des {
  position: absolute;
  top: 100%;
  right: 0;
  max-height: 0;
  overflow: hidden;
}
.holder-description .open-box-des .open-content {
  padding: 10px;
  text-align: left;
  font-weight: normal;
  border: 1px solid var(--border-color);
  background: var(--bg-fff);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
.holder-description.open {
  z-index: 10;
}
.holder-description.open .open-box-des {
  max-height: 2000px;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* scrollbars */
.jcf-scrollable-wrapper {
  box-sizing: content-box;
  position: relative;
}
.jcf-scrollbar-vertical {
  position: absolute;
  cursor: default;
  background: var(--scroll-bg);
  width: 3px;
  bottom: 0;
  right: 0;
  top: 0;
  z-index: 10;
}
.jcf-select-drop .jcf-scrollbar-vertical {
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
.jcf-scrollbar-vertical .jcf-scrollbar-dec,
.jcf-scrollbar-vertical .jcf-scrollbar-inc {
  background: var(--bg-fff);
  height: 0;
  width: 3px;
  left: 0;
  top: 0;
}
.jcf-scrollbar-vertical .jcf-scrollbar-inc {
  top: auto;
  bottom: 0;
}
.jcf-scrollbar-vertical .jcf-scrollbar-handle {
  background: var(--scroll-handle);
  height: 1px;
  width: 3px;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
.jcf-scrollbar-horizontal {
  position: absolute;
  background: var(--scroll-bg);
  right: auto;
  top: auto;
  left: 0;
  bottom: 0;
  width: 1px;
  height: 14px;
}
.jcf-scrollbar-horizontal .jcf-scrollbar-dec,
.jcf-scrollbar-horizontal .jcf-scrollbar-inc {
  display: inline-block;
  vertical-align: top;
  overflow: hidden;
  background: #bbb;
  height: 14px;
  width: 3px;
}
.jcf-scrollbar-horizontal .jcf-scrollbar-inc {
  left: auto;
  right: 0;
}
.jcf-scrollbar-horizontal .jcf-scrollbar-slider {
  display: inline-block;
  position: relative;
  height: 14px;
}
.jcf-scrollbar-horizontal .jcf-scrollbar-handle {
  position: absolute;
  background: var(--scroll-handle);
  height: 14px;
}
.jcf-scrollbar.jcf-inactive .jcf-scrollbar-handle {
  visibility: hidden;
}
.jcf-scrollbar.jcf-inactive .jcf-scrollbar-dec,
.jcf-scrollbar.jcf-inactive .jcf-scrollbar-inc {
  background: #e3e3e3;
}
.jcf-select {
  font-family: sans-serif;
  display: inline-block;
  vertical-align: top;
  position: relative;
  background: var(--bg-fff);
  margin: 0;
  min-width: 150px;
  height: 30px;
  min-height: 30px;
  line-height: 25px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid var(--border-color);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  cursor: pointer;
  width: 100%;
  flex: 1;
}
.jcf-select select {
  z-index: 1;
  left: 0;
  top: 0;
}
.jcf-select .jcf-select-text {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  display: block;
  font-size: 0.85714286rem;
  line-height: 1.1;
  color: var(--text-color-main);
  padding: 0;
  margin: 8px 44px 8px 10px;
  z-index: 1;
  text-align: left;
}
.jcf-select .jcf-select-text > span {
  overflow: visible;
}
.jcf-select .jcf-select-opener {
  position: absolute;
  text-align: center;
  height: 30px;
  width: 30px;
  right: 0px;
  top: 0;
  z-index: 2;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
.jcf-select .jcf-select-opener:after {
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  color: var(--color-dark-grey);
  -webkit-transition: transform var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  font-family: "WFS-RM-font";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 30px;
  line-height: 1;
}
.jcf-select:hover .jcf-select-opener:after,
.jcf-select.jcf-drop-active .jcf-select-opener:after {
  color: var(--jcf-drop-active);
}
.jcf-select.jcf-drop-active .jcf-select-opener:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
body > .jcf-select-drop {
  position: absolute;
  margin: -1px 0 0;
  padding: 0 0 1px;
  z-index: 9999;
  border: 1px solid var(--border-color);
  font-size: 1rem;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
.jcf-select .jcf-select-drop {
  position: absolute;
  margin-top: 0px;
  z-index: 9999;
  top: 100%;
  left: -1px;
  right: -1px;
}
.jcf-select .jcf-drop-flipped {
  bottom: 100%;
  top: auto;
}
.jcf-select.jcf-compact-multiple {
  max-width: 220px;
}
.jcf-select.jcf-compact-multiple .jcf-select-opener:before {
  display: inline-block;
  padding-top: 2px;
  content: '...';
}
.jcf-select-drop.jcf-compact-multiple .jcf-hover {
  background: none;
}
.jcf-select-drop.jcf-compact-multiple .jcf-selected {
  background: var(--color-dark-grey);
  color: var(--bg-fff);
}
.jcf-select-drop.jcf-compact-multiple .jcf-selected:before {
  display: inline-block;
  content: '';
  height: 4px;
  width: 8px;
  margin: -7px 5px 0 -3px;
  border: 3px solid var(--border-color);
  border-width: 0 0 3px 3px;
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.7071067811865483, M12=0.7071067811865467, M21=-0.7071067811865467, M22=0.7071067811865483, SizingMethod='auto expand')";
}
/* multiple select styles */
.jcf-list-box {
  overflow: hidden;
  display: inline-block;
  border: 1px solid var(--border-color);
  min-width: 200px;
  width: 100%;
  margin: 0;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.jcf-list-box .jcf-scrollbar-horizontal {
  height: 0;
}
/* select options styles */
.jcf-list {
  display: inline-block;
  vertical-align: top;
  position: relative;
  background: var(--bg-fff);
  width: 100%;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  min-height: 30px;
}
.jcf-list .jcf-list-content {
  vertical-align: top;
  display: inline-block;
  overflow: auto;
  width: 100%;
}
.jcf-list ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.jcf-list ul li {
  overflow: hidden;
  display: block;
  position: relative;
  z-index: 1;
}
.jcf-list ul li:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 10px;
  height: 1px;
  width: calc(100% - 20px);
  background: var(--border-color);
}
.jcf-list ul li:first-child:after {
  display: none;
}
.jcf-list .jcf-overflow {
  overflow: auto;
}
.jcf-list .jcf-option {
  overflow: hidden;
  display: block;
  padding: 5px 10px;
  color: var(--text-color-main);
  min-height: 14px;
  font-size: 0.85714286rem;
  line-height: 1.4;
  height: 1%;
  position: relative;
  cursor: pointer;
  font-weight: normal !important;
}
.jcf-list .jcf-option:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 100%;
  background: var(--all-hover-bg);
  z-index: -1;
  -webkit-transition: width var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out;
}
.jcf-list .jcf-option.jcf-disabled {
  color: #aaa !important;
  background: none !important;
}
.jcf-list .jcf-option.jcf-disabled:after {
  width: 100%;
  background: var(--color-grey);
}
.jcf-list .jcf-option:hover:after {
  width: 100%;
}
.jcf-select-drop .jcf-hover,
.jcf-list-box .jcf-selected {
  color: var(--jcf-drop-active);
}
.jcf-select-drop .jcf-hover:after,
.jcf-list-box .jcf-selected:after {
  width: 100%;
}
.jcf-list .jcf-optgroup-caption {
  white-space: nowrap;
  display: block;
  padding: 5px 9px;
  cursor: default;
  color: var(--text-color-main);
}
.jcf-list .jcf-optgroup .jcf-option {
  padding-left: 30px;
}
/* common styles */
.jcf-disabled {
  background: var(--color-dark-grey) !important;
}
/* --------------------- https://redmine-evolution.com/ -- */
.jcf-select-select2-hidden-accessible {
  position: absolute;
  top: -999999px;
  left: -999999px;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START LOGIN + REGISTR + FORGET PASSWORD */
.controller-account {
  display: table;
  width: 100%;
}
.controller-account .tabular p {
  overflow: visible;
  position: relative;
}
.controller-account .tabular p:after {
  content: '';
  display: block;
  clear: both;
}
.controller-account.start:after {
  opacity: 1;
}
.controller-account #header,
.controller-account #sidebar {
  position: absolute;
  top: -999999px;
  left: -999999px;
}
.controller-account #wrapper {
  margin: 0 auto;
  vertical-align: middle;
  text-align: center;
  display: table-cell;
  background: none;
  width: 100%;
}
.controller-account #wrapper #wrapper2 {
  background: none;
  display: flex;
  align-items: stretch;
  width: 100%;
}
.controller-account #wrapper3 {
  padding-top: 80px;
  width: 100%;
  flex-direction: row;
  align-items: center;
  display: flex;
}
.controller-account .box {
  padding: 0;
  margin-bottom: 0;
  background: none;
  border: none;
  word-wrap: initial;
  border-radius: 0;
}
.controller-account #main {
  width: 100%;
  max-width: 440px;
  margin: 0 auto !important;
  padding: 0 !important;
}
.controller-account #main #content {
  text-align: left;
  position: relative;
  background: var(--bg-fff);
  padding: 155px 30px 30px;
  margin: 0;
  max-width: 648px;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--box-shadow-null);
  -moz-box-shadow: var(--box-shadow-null);
  box-shadow: var(--box-shadow-null);
}
.controller-account #main #content:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 30px;
  left: 0;
  background: url("../images/redmine-evolution.svg") 50% 50% no-repeat;
  background-size: contain;
  width: 100%;
  height: 80px;
  margin: 0;
  z-index: 2;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  box-shadow: 0 0 0 var(--bg-fff);
}
.controller-account #main #content h2 {
  margin: 0 0 15px;
  text-align: center;
  font-size: 1.714rem;
  font-weight: 500;
  border: 0;
  padding: 0;
  background-image: none;
  background-color: var(--bg-fff);
  width: 100%;
}
.controller-account #main #content .box {
  background: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
}
.controller-account #main #content .box:after {
  content: '';
  display: block;
  clear: both;
  width: 100%;
}
.controller-account #main #content .tabular label {
  font-weight: 500;
  float: none;
  text-align: left;
  width: 100%;
  display: block;
  margin-left: 0!important;
  padding: 0 !important;
}
.controller-account #main #content .tabular p {
  padding: 0 !important;
  margin: 0;
}
.controller-account #main #content .tabular label[for="user_language"],
.controller-account #main #content .tabular label[for="user_language"] ~ .select2 {
  margin-top: 15px !important;
}
.controller-account .list-buttons {
  width: 100%;
  margin: 0;
  list-style: none;
  padding: 30px 0 0;
  display: inline-flex;
  text-align: left;
}
.controller-account .list-buttons li {
  width: 50%;
}
.controller-account .list-buttons li:last-child {
  text-align: right;
}
.controller-account .list-buttons a {
  font-size: 1rem;
  color: var(--color-link);
  display: inline-block;
  float: none !important;
  text-decoration: none;
  font-weight: 500 !important;
  position: relative;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.controller-account .list-buttons a:after {
  background: var(--color-link);
  content: '';
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0px;
  left: 0;
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
.controller-account .list-buttons a:hover:after {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-account .holder-botton-login {
  padding: 15px 0 0;
  width: 100%;
  margin: 0 !important;
}
.controller-account .holder-botton-login > input[type="submit"] {
  display: block;
  vertical-align: top;
  max-width: 100% !important;
  width: 100% !important;
  height: auto !important;
  background: var(--button-main-bg);
  font-size: 1.2857rem;
  font-weight: bold;
  color: var(--button-main-color);
  border: 0 none;
  padding: 12px 12px !important;
  margin: 0 !important;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
  outline: 0 none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-account .holder-botton-login > input[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
.controller-account label[for="user_language"] {
  float: left;
  margin: 0 0 10px 0;
}
.controller-account a.login,
.controller-account a.register {
  display: inline-block;
}
#login-form {
  margin: 0;
  padding: 0;
  width: 100%;
  border: none;
  background: none;
  border-radius: 0;
  box-sizing: border-box;
}
#login-form .holder-login {
  position: relative;
  width: 100%;
  overflow: hidden;
}
#login-form .holder-login.holder-botton-login {
  overflow: visible;
}
#login-form .holder-login.holder-botton-login:after {
  content: '';
  display: block;
  clear: both;
}
.action-register #new_user input[type="text"],
.action-lost_password #content form input[type="text"],
#wrapper #login-form input[type="text"],
.action-register #new_user input[type="email"],
.action-lost_password #content form input[type="email"],
#wrapper #login-form input[type="email"],
.action-register #new_user input[type="password"],
.action-lost_password #content form input[type="password"],
#wrapper #login-form input[type="password"],
.action-register #new_user input[type="tel"],
.action-lost_password #content form input[type="tel"],
#wrapper #login-form input[type="tel"] {
  width: 100% !important;
  max-width: inherit;
  height: auto;
  font-size: 1rem;
  color: var(--text-color-main);
  background: none;
  outline: none;
  outline: 0;
  padding: 5px 0 5px 0;
  margin: 20px 0 15px;
  border: 0 none;
  border-bottom: 1px solid var(--color-grey);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  box-shadow: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: border-bottom var(--time-hover) ease-in-out;
  -moz-transition: border-bottom var(--time-hover) ease-in-out;
  transition: border-bottom var(--time-hover) ease-in-out;
}
.action-register #new_user label,
.action-lost_password #content form label,
#wrapper #login-form label {
  width: auto;
  float: none;
  font-weight: 500;
  font-size: 1rem;
  margin: 0 0 5px !important;
  display: block;
  left: 0;
  position: absolute;
  top: 15px;
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
.action-register #new_user label[for="pref_hide_mail"],
.action-lost_password #content form label[for="pref_hide_mail"],
#wrapper #login-form label[for="pref_hide_mail"],
.action-register #new_user label[for="user_language"],
.action-lost_password #content form label[for="user_language"],
#wrapper #login-form label[for="user_language"] {
  position: static;
}
.action-register #new_user label[for="autologin"],
.action-lost_password #content form label[for="autologin"],
#wrapper #login-form label[for="autologin"] {
  position: static;
}
.action-register #new_user input[type="text"]:valid,
.action-lost_password #content form input[type="text"]:valid,
#wrapper #login-form input[type="text"]:valid,
.action-register #new_user input[type="email"]:valid,
.action-lost_password #content form input[type="email"]:valid,
#wrapper #login-form input[type="email"]:valid,
.action-register #new_user input[type="password"]:valid,
.action-lost_password #content form input[type="password"]:valid,
#wrapper #login-form input[type="password"]:valid,
.action-register #new_user input[type="tel"]:valid,
.action-lost_password #content form input[type="tel"]:valid,
#wrapper #login-form input[type="tel"]:valid,
.action-register #new_user input[type="text"]:focus,
.action-lost_password #content form input[type="text"]:focus,
#wrapper #login-form input[type="text"]:focus,
.action-register #new_user input[type="email"]:focus,
.action-lost_password #content form input[type="email"]:focus,
#wrapper #login-form input[type="email"]:focus,
.action-register #new_user input[type="password"]:focus,
.action-lost_password #content form input[type="password"]:focus,
#wrapper #login-form input[type="password"]:focus,
.action-register #new_user input[type="tel"]:focus,
.action-lost_password #content form input[type="tel"]:focus,
#wrapper #login-form input[type="tel"]:focus {
  border-bottom: 1px solid var(--color-main-color);
}
.action-register #new_user input[type="text"]:valid + label,
.action-lost_password #content form input[type="text"]:valid + label,
#wrapper #login-form input[type="text"]:valid + label,
.action-register #new_user input[type="email"]:valid + label,
.action-lost_password #content form input[type="email"]:valid + label,
#wrapper #login-form input[type="email"]:valid + label,
.action-register #new_user input[type="password"]:valid + label,
.action-lost_password #content form input[type="password"]:valid + label,
#wrapper #login-form input[type="password"]:valid + label,
.action-register #new_user input[type="tel"]:valid + label,
.action-lost_password #content form input[type="tel"]:valid + label,
#wrapper #login-form input[type="tel"]:valid + label,
.action-register #new_user input[type="text"]:focus + label,
.action-lost_password #content form input[type="text"]:focus + label,
#wrapper #login-form input[type="text"]:focus + label,
.action-register #new_user input[type="email"]:focus + label,
.action-lost_password #content form input[type="email"]:focus + label,
#wrapper #login-form input[type="email"]:focus + label,
.action-register #new_user input[type="password"]:focus + label,
.action-lost_password #content form input[type="password"]:focus + label,
#wrapper #login-form input[type="password"]:focus + label,
.action-register #new_user input[type="tel"]:focus + label,
.action-lost_password #content form input[type="tel"]:focus + label,
#wrapper #login-form input[type="tel"]:focus + label {
  top: 0px;
  color: var(--color-main-color);
}
.action-register #new_user input[type="text"]:-webkit-autofill,
.action-lost_password #content form input[type="text"]:-webkit-autofill,
#wrapper #login-form input[type="text"]:-webkit-autofill,
.action-register #new_user input[type="email"]:-webkit-autofill,
.action-lost_password #content form input[type="email"]:-webkit-autofill,
#wrapper #login-form input[type="email"]:-webkit-autofill,
.action-register #new_user input[type="password"]:-webkit-autofill,
.action-lost_password #content form input[type="password"]:-webkit-autofill,
#wrapper #login-form input[type="password"]:-webkit-autofill,
.action-register #new_user input[type="tel"]:-webkit-autofill,
.action-lost_password #content form input[type="tel"]:-webkit-autofill,
#wrapper #login-form input[type="tel"]:-webkit-autofill {
  border-bottom: 1px solid var(--color-main-color);
}
.action-register #new_user input[type="text"]:-webkit-autofill + label,
.action-lost_password #content form input[type="text"]:-webkit-autofill + label,
#wrapper #login-form input[type="text"]:-webkit-autofill + label,
.action-register #new_user input[type="email"]:-webkit-autofill + label,
.action-lost_password #content form input[type="email"]:-webkit-autofill + label,
#wrapper #login-form input[type="email"]:-webkit-autofill + label,
.action-register #new_user input[type="password"]:-webkit-autofill + label,
.action-lost_password #content form input[type="password"]:-webkit-autofill + label,
#wrapper #login-form input[type="password"]:-webkit-autofill + label,
.action-register #new_user input[type="tel"]:-webkit-autofill + label,
.action-lost_password #content form input[type="tel"]:-webkit-autofill + label,
#wrapper #login-form input[type="tel"]:-webkit-autofill + label {
  top: 0px;
  color: var(--color-main-color);
}
.action-register #new_user input[type="text"]:-webkit-autofill,
.action-lost_password #content form input[type="text"]:-webkit-autofill,
#wrapper #login-form input[type="text"]:-webkit-autofill,
.action-register #new_user input[type="email"]:-webkit-autofill,
.action-lost_password #content form input[type="email"]:-webkit-autofill,
#wrapper #login-form input[type="email"]:-webkit-autofill,
.action-register #new_user input[type="password"]:-webkit-autofill,
.action-lost_password #content form input[type="password"]:-webkit-autofill,
#wrapper #login-form input[type="password"]:-webkit-autofill,
.action-register #new_user input[type="tel"]:-webkit-autofill,
.action-lost_password #content form input[type="tel"]:-webkit-autofill,
#wrapper #login-form input[type="tel"]:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px var(--color-fff) inset !important;
  -webkit-text-fill-color: var(--text-color-main) !important;
}
.action-register p,
.action-lost_password p {
  position: relative;
}
.action-register #content form em.info {
  font-size: 11px;
  line-height: 13px;
  padding: 0;
  margin: -8px 0 8px;
}
.action-register #content form label[for="pref_hide_mail"] {
  flex: 1 !important;
  margin: 15px 0 15px !important;
}
.action-register #content form label[for="user_language"] {
  flex: 1 !important;
  margin: 0 !important;
}
.action-register #content form .jcf-select {
  flex: 1;
  width: 100%;
  margin: 15px 0 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.action-register #content form span.required {
  color: var(--color-main-color);
}
/* --------------------- https://redmine-evolution.com/ -- */
.action-logout #content form p {
  text-align: center;
}
.action-logout #content form input[type="submit"] {
  margin: 0 auto;
}
/* START MEDIA */
@media screen and (max-width: 1024px) {
  .controller-account #main #content {
    width: calc(100% - 20px) !important;
    margin: 20px auto !important;
  }
}
@media screen and (max-width: 768px) {
  .controller-account #main #content {
    padding: 90px 20px 30px;
  }
  .controller-account #main #content:after {
    top: 15px;
    width: 100%;
    height: 60px;
    background-size: contain;
    margin: 0;
  }
}
@media screen and (max-width: 650px) {
  .controller-account #main #content h2 {
    font-size: 1.28571429rem;
    line-height: 1.4;
    background: none;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
  }
  .controller-account #main #login-form {
    width: calc(100% + 20px);
    margin-left: -10px;
    margin-right: -10px;
  }
  .controller-account #main #new_user .holder-botton-login {
    width: calc(100% + 20px);
    margin-left: -10px !important;
    margin-right: -10px !important;
  }
}
@media screen and (max-width: 500px) {
  .controller-account #main {
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
/* START LOGIN + REGISTR + FORGET PASSWORD */
.controller-account.action-logout #main {
  z-index: 14;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MAIN MENU */
#wrapper3 > #main-menu,
#wrapper3 > #admin-menu {
  position: absolute;
  top: -999999px;
  left: -999999px;
}
.has-main-menu.big-menu #wrapper3 > #main-menu .open-main-menu,
.has-main-menu.big-menu #wrapper3 > #admin-menu .open-main-menu {
  position: absolute;
  top: -999999px;
  left: -9999999px;
}
.has-main-menu.big-menu #wrapper3 > #main-menu .open-main-menu .nav-icon span:nth-child(1),
.has-main-menu.big-menu #wrapper3 > #admin-menu .open-main-menu .nav-icon span:nth-child(1) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 0px;
  left: 3px;
}
.has-main-menu.big-menu #wrapper3 > #main-menu .open-main-menu .nav-icon span:nth-child(2),
.has-main-menu.big-menu #wrapper3 > #admin-menu .open-main-menu .nav-icon span:nth-child(2) {
  width: 0%;
  opacity: 0;
}
.has-main-menu.big-menu #wrapper3 > #main-menu .open-main-menu .nav-icon span:nth-child(3),
.has-main-menu.big-menu #wrapper3 > #admin-menu .open-main-menu .nav-icon span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 14px;
  left: 2px;
}
.has-main-menu.big-menu #wrapper3 > #main-menu .jcf-scrollbar-horizontal,
.has-main-menu.big-menu #wrapper3 > #admin-menu .jcf-scrollbar-horizontal {
  display: none;
}
#wrapper3 > #admin-menu a.selected {
  padding: 0 !important;
}
.has-main-menu #wrapper {
  padding-left: 60px;
}
.has-main-menu #top-menu {
  width: calc(100% - 60px);
}
.has-main-menu #wrapper3 > #main-menu,
.has-main-menu #wrapper3 > #admin-menu {
  background: var(--bg);
  position: fixed;
  left: 0;
  top: 0;
  width: auto;
  height: 100%;
  margin: 0;
  padding: 50px 0 0;
  z-index: 12;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: var(--font-weight);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.has-main-menu #wrapper3 > #main-menu .jcf-scrollable-wrapper,
.has-main-menu #wrapper3 > #admin-menu .jcf-scrollable-wrapper {
  width: 100% !important;
}
.has-main-menu #wrapper3 > #main-menu .jcf-scrollable-wrapper .jcf-scrollable,
.has-main-menu #wrapper3 > #admin-menu .jcf-scrollable-wrapper .jcf-scrollable {
  width: 100% !important;
}
.has-main-menu #wrapper3 > #main-menu .tabs-buttons,
.has-main-menu #wrapper3 > #admin-menu .tabs-buttons {
  display: none !important;
}
.has-main-menu #wrapper3 > #main-menu .open-menu-box,
.has-main-menu #wrapper3 > #admin-menu .open-menu-box {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  padding: 5px 5px 10px;
  height: 45px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.has-main-menu #wrapper3 > #main-menu .open-menu-box:before,
.has-main-menu #wrapper3 > #admin-menu .open-menu-box:before {
  content: '';
  display: block;
  clear: both;
  width: 50px;
  height: 40px;
  position: absolute;
  top: 0;
  left: 5px;
  background: url(../images/redmine-evolution-menu.svg) 0 0 no-repeat;
  -webkit-background-size: contain;
  background-size: contain;
}
.has-main-menu #wrapper3 > #main-menu .open-menu-box:after,
.has-main-menu #wrapper3 > #admin-menu .open-menu-box:after {
  content: '';
  display: block;
  clear: both;
  height: 1px;
  width: 50px;
  background: var(--border-color-logo);
  position: absolute;
  bottom: -1px;
  left: 5px;
}
.has-main-menu #wrapper3 > #main-menu .open-main-menu,
.has-main-menu #wrapper3 > #admin-menu .open-main-menu {
  width: var(--icon-width);
  height: var(--icon-width);
  display: flex;
  align-items: center;
  position: absolute;
  top: -999999px;
  left: -9999999px;
}
.has-main-menu #wrapper3 > #main-menu .open-main-menu:after,
.has-main-menu #wrapper3 > #admin-menu .open-main-menu:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
}
.has-main-menu #wrapper3 > #main-menu .open-main-menu .nav-icon,
.has-main-menu #wrapper3 > #admin-menu .open-main-menu .nav-icon {
  display: block;
  width: 20px;
  height: 16px;
  position: relative;
  margin: 0 auto;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: transform var(--time-main) ease-in-out;
  -moz-transition: transform var(--time-main) ease-in-out;
  -o-transition: transform var(--time-main) ease-in-out;
  transition: transform var(--time-main) ease-in-out;
  cursor: pointer;
}
.has-main-menu #wrapper3 > #main-menu .open-main-menu .nav-icon span,
.has-main-menu #wrapper3 > #admin-menu .open-main-menu .nav-icon span {
  display: block;
  position: absolute;
  height: 3px;
  width: 100%;
  background: var(--icon-color);
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  opacity: 1;
  left: 0;
  top: 7px;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
.has-main-menu #wrapper3 > #main-menu .open-main-menu .nav-icon span:nth-child(1),
.has-main-menu #wrapper3 > #admin-menu .open-main-menu .nav-icon span:nth-child(1) {
  top: 0px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}
.has-main-menu #wrapper3 > #main-menu .open-main-menu .nav-icon span:nth-child(2),
.has-main-menu #wrapper3 > #admin-menu .open-main-menu .nav-icon span:nth-child(2) {
  top: 6px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}
.has-main-menu #wrapper3 > #main-menu .open-main-menu .nav-icon span:nth-child(3),
.has-main-menu #wrapper3 > #admin-menu .open-main-menu .nav-icon span:nth-child(3) {
  top: 13px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}
.has-main-menu #wrapper3 > #main-menu:after,
.has-main-menu #wrapper3 > #admin-menu:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  right: 0px;
  width: 1px;
  height: 100%;
  background: var(--border-color);
  z-index: 2;
}
.has-main-menu #wrapper3 > #main-menu > ul,
.has-main-menu #wrapper3 > #admin-menu > ul,
.has-main-menu #wrapper3 > #main-menu .jcf-scrollable,
.has-main-menu #wrapper3 > #admin-menu .jcf-scrollable {
  width: 100%;
  white-space: initial;
  overflow-y: auto;
  height: 100%;
}
.has-main-menu #wrapper3 > #main-menu > ul > li,
.has-main-menu #wrapper3 > #admin-menu > ul > li,
.has-main-menu #wrapper3 > #main-menu .jcf-scrollable > li,
.has-main-menu #wrapper3 > #admin-menu .jcf-scrollable > li {
  padding: 0;
  margin: 0;
  overflow: hidden;
  display: block;
  width: 100%;
  position: relative;
}
.has-main-menu #wrapper3 > #main-menu > ul > li:last-child,
.has-main-menu #wrapper3 > #admin-menu > ul > li:last-child,
.has-main-menu #wrapper3 > #main-menu .jcf-scrollable > li:last-child,
.has-main-menu #wrapper3 > #admin-menu .jcf-scrollable > li:last-child {
  margin-bottom: 20px;
}
.has-main-menu #wrapper3 > #main-menu > ul > li > a,
.has-main-menu #wrapper3 > #admin-menu > ul > li > a,
.has-main-menu #wrapper3 > #main-menu .jcf-scrollable > li > a,
.has-main-menu #wrapper3 > #admin-menu .jcf-scrollable > li > a {
  font-size: 1rem;
  line-height: 40px;
  color: var(--link-color);
  height: 40px;
  width: 60px;
  display: block;
  white-space: nowrap;
  padding: 0;
  margin: 0;
  background-size: 34px 34px;
  background-repeat: no-repeat;
  background-position: 13px 50%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  overflow: hidden;
  background-image: none;
}
.has-main-menu #wrapper3 > #main-menu > ul > li > a.new-object,
.has-main-menu #wrapper3 > #admin-menu > ul > li > a.new-object,
.has-main-menu #wrapper3 > #main-menu .jcf-scrollable > li > a.new-object,
.has-main-menu #wrapper3 > #admin-menu .jcf-scrollable > li > a.new-object {
  text-indent: -99999px;
  overflow: hidden;
  width: 100%;
}
.has-main-menu #wrapper3 > #main-menu > ul > li > a span,
.has-main-menu #wrapper3 > #admin-menu > ul > li > a span,
.has-main-menu #wrapper3 > #main-menu .jcf-scrollable > li > a span,
.has-main-menu #wrapper3 > #admin-menu .jcf-scrollable > li > a span {
  white-space: nowrap;
  padding: 0 10px 0 60px;
  float: left;
  display: block;
  width: auto;
}
.has-main-menu #wrapper3 > #main-menu ul a,
.has-main-menu #wrapper3 > #admin-menu ul a {
  background-size: 34px 34px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  position: relative;
  display: block;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.has-main-menu #wrapper3 > #main-menu ul a:before,
.has-main-menu #wrapper3 > #admin-menu ul a:before {
  content: '';
  display: block;
  clear: both;
  width: 2px;
  height: 100%;
  background: var(--link-color-hover);
  margin: 0 0 0 -2px;
  position: absolute;
  top: 0px;
  left: 0px;
  padding: 0 !important;
  -webkit-transition: margin var(--time-hover) ease-in-out;
  -moz-transition: margin var(--time-hover) ease-in-out;
  -ms-transition: margin var(--time-hover) ease-in-out;
  -o-transition: margin var(--time-hover) ease-in-out;
  transition: margin var(--time-hover) ease-in-out;
}
.has-main-menu #wrapper3 > #main-menu ul a:after,
.has-main-menu #wrapper3 > #admin-menu ul a:after {
  position: absolute;
  top: 0px;
  left: 0px;
  clear: both;
  height: 100%;
  margin: 0;
  width: 60px;
  overflow: hidden;
  z-index: 1;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--link-color);
}
.has-main-menu #wrapper3 > #main-menu ul a.new-object,
.has-main-menu #wrapper3 > #admin-menu ul a.new-object {
  background-color: var(--bg);
}
.has-main-menu #wrapper3 > #main-menu ul a.selected:not(.new-object),
.has-main-menu #wrapper3 > #admin-menu ul a.selected:not(.new-object) {
  background-color: var(--icon_bg_active);
  color: var(--link-color-active);
}
.has-main-menu #wrapper3 > #main-menu ul a.selected:not(.new-object):after,
.has-main-menu #wrapper3 > #admin-menu ul a.selected:not(.new-object):after {
  color: var(--link-color-active);
}
.has-main-menu #wrapper3 > #main-menu ul a.selected:not(.new-object):before,
.has-main-menu #wrapper3 > #admin-menu ul a.selected:not(.new-object):before {
  margin: 0;
  background: var(--link-color-active);
}
.has-main-menu #wrapper3 > #main-menu ul li:hover > a,
.has-main-menu #wrapper3 > #admin-menu ul li:hover > a {
  background-color: var(--icon_bg_hover);
  color: var(--link-color-hover);
}
.has-main-menu #wrapper3 > #main-menu ul li:hover > a:after,
.has-main-menu #wrapper3 > #admin-menu ul li:hover > a:after {
  color: var(--link-color-hover);
}
.has-main-menu #wrapper3 > #main-menu ul li:hover > a:before,
.has-main-menu #wrapper3 > #admin-menu ul li:hover > a:before {
  margin: 0;
}
.has-main-menu #wrapper3 > #main-menu ul li.oprn-new-object .new-object,
.has-main-menu #wrapper3 > #admin-menu ul li.oprn-new-object .new-object {
  background-color: var(--icon_bg_active);
  color: var(--link-color-active);
}
.has-main-menu #wrapper3 > #main-menu ul li.oprn-new-object .new-object:after,
.has-main-menu #wrapper3 > #admin-menu ul li.oprn-new-object .new-object:after {
  color: var(--link-color-active);
}
.has-main-menu #wrapper3 > #main-menu ul li.oprn-new-object .new-object:before,
.has-main-menu #wrapper3 > #admin-menu ul li.oprn-new-object .new-object:before {
  margin: 0;
}
.has-main-menu #wrapper3 > #main-menu ul li.oprn-new-object .new-object:hover,
.has-main-menu #wrapper3 > #admin-menu ul li.oprn-new-object .new-object:hover {
  background-color: var(--icon_bg_hover);
  color: var(--link-color-hover);
}
.has-main-menu #wrapper3 > #main-menu ul li.oprn-new-object .new-object:hover:after,
.has-main-menu #wrapper3 > #admin-menu ul li.oprn-new-object .new-object:hover:after {
  color: var(--link-color-hover);
}
.has-main-menu #wrapper3 > #main-menu ul li.oprn-new-object .new-object:hover:before,
.has-main-menu #wrapper3 > #admin-menu ul li.oprn-new-object .new-object:hover:before {
  margin: 0;
}
.has-main-menu #wrapper3 > #main-menu ul.menu-children,
.has-main-menu #wrapper3 > #admin-menu ul.menu-children {
  padding: 1px 0;
  color: var(--link-color);
  opacity: 1;
  font-size: 0.85714286rem;
  line-height: 1.4;
  font-weight: var(--menu-children-font-weight);
  display: block;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  border: none !important;
  z-index: 1;
  background: var(--bg);
}
.has-main-menu #wrapper3 > #main-menu ul.menu-children li,
.has-main-menu #wrapper3 > #admin-menu ul.menu-children li {
  display: block;
  width: 100%;
}
.has-main-menu #wrapper3 > #main-menu ul.menu-children:after,
.has-main-menu #wrapper3 > #admin-menu ul.menu-children:after,
.has-main-menu #wrapper3 > #main-menu ul.menu-children:before,
.has-main-menu #wrapper3 > #admin-menu ul.menu-children:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 20px;
  height: 1px;
  background: var(--border-color);
  width: calc(100% - 40px);
  z-index: 2;
}
.has-main-menu #wrapper3 > #main-menu ul.menu-children:before,
.has-main-menu #wrapper3 > #admin-menu ul.menu-children:before {
  top: auto;
  bottom: 0;
}
.has-main-menu #wrapper3 > #main-menu ul.menu-children a,
.has-main-menu #wrapper3 > #admin-menu ul.menu-children a {
  display: block;
  width: 100%;
  padding: 5px 20px;
  color: var(--link-color);
  background: var(--menu-bg);
  position: relative;
  overflow: hidden;
  z-index: 2;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.has-main-menu #wrapper3 > #main-menu ul.menu-children a:before,
.has-main-menu #wrapper3 > #admin-menu ul.menu-children a:before {
  display: none;
}
.has-main-menu #wrapper3 > #main-menu ul.menu-children a:after,
.has-main-menu #wrapper3 > #admin-menu ul.menu-children a:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  width: 0;
  height: 100%;
  background: var(--icon_bg);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  z-index: -1;
  -webkit-transition: width var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out;
}
.has-main-menu #wrapper3 > #main-menu ul.menu-children a:hover,
.has-main-menu #wrapper3 > #admin-menu ul.menu-children a:hover {
  color: var(--link-color-hover);
  text-decoration: none;
}
.has-main-menu #wrapper3 > #main-menu ul.menu-children a:hover:after,
.has-main-menu #wrapper3 > #admin-menu ul.menu-children a:hover:after {
  background: var(--icon_bg_hover);
  width: 100%;
}
.has-main-menu #wrapper3 > #main-menu .holder-children,
.has-main-menu #wrapper3 > #admin-menu .holder-children {
  overflow: hidden;
  width: 0;
  height: 0;
}
.flyout-is-active #wrapper .flyout-menu {
  right: 0;
}
.flyout-is-active body.controller-issues.action-show.loggedas #main #content > .contextual {
  left: -250px;
}
#wrapper .flyout-menu {
  overflow-x: hidden;
  position: fixed;
  right: -250px;
  width: 249px;
  display: block;
  border-left: 1px solid var(--main_menu_border);
  z-index: 10;
  background: var(--flyout_menu_bg);
  -webkit-transition: right var(--time-main) ease-in-out;
  -moz-transition: right var(--time-main) ease-in-out;
  -ms-transition: right var(--time-main) ease-in-out;
  -o-transition: right var(--time-main) ease-in-out;
  transition: right var(--time-main) ease-in-out;
  height: 100%;
  color: var(--flyout_menu_color);
}
#wrapper .flyout-menu hr {
  padding: 0;
  margin: 0;
  height: 0;
}
#wrapper .flyout-menu .sidebar-additionals {
  border-top: 1px solid var(--main_menu_border);
}
#wrapper .flyout-menu a.repository {
  padding: 10px;
  font-weight: var(--flyout-menu-font-weight);
  height: auto;
  line-height: inherit;
  color: var(--flyout_menu_color);
  border-top: 1px solid var(--flyout_menu_border);
  display: block;
  overflow: hidden;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: left;
}
#wrapper .flyout-menu p a.repository:first-child {
  margin-top: -10px;
}
#wrapper .flyout-menu p a.repository:last-child {
  margin-bottom: -10px;
}
#wrapper .flyout-menu p a.repository + br {
  display: none !important;
}
#wrapper .flyout-menu form[action*="roadmap"] {
  padding-left: 0;
}
#wrapper .flyout-menu form[action*="roadmap"] ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
#wrapper .flyout-menu form[action*="roadmap"] ul li label {
  padding: 10px;
  border-top: 1px solid var(--flyout_menu_border);
  display: block;
}
#wrapper .flyout-menu form[action*="roadmap"] input[type="submit"] {
  background: var(--flyout_menu_button_bg);
  width: 100%;
  color: var(--flyout_menu_button_color);
  text-align: center;
  padding: 10px 10px;
  font-size: 1rem;
  line-height: 1rem;
  height: auto;
  border: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 0 !important;
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--submit-font-weight);
}
#wrapper .flyout-menu div a[href="/my/api_key"] {
  display: block;
  border-bottom: 1px solid var(--flyout_menu_border);
  padding: 10px;
  text-decoration: none !important;
  font-weight: var(--flyout-menu-font-weight);
}
#wrapper .flyout-menu div #api-access-key {
  margin-top: 10px;
  padding: 10px;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#wrapper .flyout-menu form > ul li {
  line-height: 1;
  min-height: 36px;
  padding-left: 0;
}
#wrapper .flyout-menu #activity_scope_form {
  padding: 0;
  margin: 0;
}
#wrapper .flyout-menu #activity_scope_form ul {
  margin: 0;
}
#wrapper .flyout-menu #activity_scope_form ul li {
  padding: 0;
  margin: 0;
  position: relative;
  display: flex;
  align-items: center;
  border-top: 1px solid var(--flyout_menu_border);
}
#wrapper .flyout-menu #activity_scope_form ul li input[type="checkbox"] {
  position: absolute;
  top: 50%;
  left: 10px;
  margin: -9px 0 0 !important;
}
#wrapper .flyout-menu #activity_scope_form ul li label {
  padding: 0 0 0 26px;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#wrapper .flyout-menu #activity_scope_form ul li a {
  padding: 0 0 0 10px;
  border: 0;
  width: auto;
  display: inline-block;
  float: left;
}
#wrapper .flyout-menu #activity_scope_form input[type="submit"] {
  background: var(--flyout_menu_button_bg);
  width: 100%;
  color: var(--flyout_menu_button_color);
  text-align: center;
  padding: 10px 10px;
  font-size: 1rem;
  line-height: 1rem;
  height: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 0 !important;
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--submit-font-weight);
}
#wrapper .flyout-menu a {
  color: var(--flyout_menu_color);
}
#wrapper .flyout-menu ul {
  padding: 0 !important;
  margin: 0 !important;
  list-style: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#wrapper .flyout-menu ul li {
  display: block;
  overflow: hidden;
  height: auto;
}
#wrapper .flyout-menu ul li a,
#wrapper .flyout-menu ul li:first-child a {
  padding: 10px;
  font-weight: var(--flyout-menu-font-weight);
  height: auto;
  line-height: inherit;
  color: var(--flyout_menu_color);
  border-top: 1px solid var(--flyout_menu_border);
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-align: left;
}
#wrapper .flyout-menu ul li a:after,
#wrapper .flyout-menu ul li:first-child a:after {
  display: none;
}
#wrapper .flyout-menu ul li a.selected,
#wrapper .flyout-menu ul li:first-child a.selected {
  background: var(--flyout_menu_bg_selected);
}
#wrapper .flyout-menu ul a[href*="/people"] {
  flex: 1 0 auto;
}
#wrapper .flyout-menu ul .icon-del {
  margin: 5px 10px;
}
#wrapper .flyout-menu ul li:last-child {
  border-bottom: 1px solid var(--flyout_menu_border);
}
#wrapper .flyout-menu h3 {
  background: var(--flyout_menu_title_bg);
  color: var(--flyout_menu_title_color);
  padding: 10px 10px;
  margin: 0 !important;
  font-size: 1rem;
  line-height: 1rem;
  height: auto;
  border: 0;
  border-top: 1px solid var(--flyout_menu_border);
  text-align: left;
}
#wrapper .flyout-menu #admin-menu li {
  padding: 0;
}
#wrapper .flyout-menu #admin-menu a {
  background: var(--flyout_menu_admin_menu_bg);
  color: var(--flyout_menu_admin_menu_color) !important;
}
#wrapper .flyout-menu #admin-menu a.selected {
  background: var(--flyout_menu_bg_selected);
  color: var(--flyout_menu_color_selected);
  padding: 10px !important;
}
#wrapper .flyout-menu #admin-menu a.redmine-git-hosting:before {
  display: none;
}
#wrapper .flyout-menu #cms-settings-menu li {
  padding: 0;
}
#wrapper .flyout-menu #cms-settings-menu a {
  background: var(--flyout_menu_admin_menu_bg);
  color: var(--flyout_menu_admin_menu_color) !important;
}
#wrapper .flyout-menu #cms-settings-menu a.selected {
  background: var(--flyout_menu_bg_selected);
  color: var(--flyout_menu_color_selected);
  padding-left: 10px !important;
}
#wrapper .flyout-menu .js-general-menu a {
  background: var(--flyout_menu_general-menu_bg);
  color: var(--flyout_menu_general-menu_color) !important;
}
#wrapper .flyout-menu .js-profile-menu a {
  background: var(--flyout_menu_profile-menu_bg);
  color: var(--flyout_menu_profile-menu_color) !important;
}
#wrapper .flyout-menu .js-project-menu .menu-children a {
  background: var(--mobile-menu-children-bg);
  color: var(--mobile-menu-children-color);
}
#wrapper .flyout-menu #contact_issues {
  margin: 0;
}
#wrapper .flyout-menu .attachments table {
  table-layout: fixed;
  width: 100%;
  border-collapse: collapse;
}
#wrapper .flyout-menu .attachments table tr td {
  display: none;
}
#wrapper .flyout-menu .attachments table tr td:first-child {
  display: block;
  width: 100%;
  position: relative;
  padding: 10px 35px 10px 10px;
  border-top: 1px solid var(--flyout_menu_border);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#wrapper .flyout-menu .attachments table tr td:first-child:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  right: 35px;
  width: 1px;
  height: 100%;
  background: var(--flyout_menu_button_bg);
}
#wrapper .flyout-menu .attachments .icon-attachment {
  padding: 0;
  min-height: auto;
  line-height: 1;
}
#wrapper .flyout-menu .attachments .size {
  font-size: 0.85714286rem;
}
#wrapper .flyout-menu .attachments .icon-only {
  position: absolute;
  top: 50%;
  right: 5px;
  border: none;
  display: block;
  background: none;
  padding: 0;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: -13px 0 0;
  overflow: hidden;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--flyout-text-color);
  vertical-align: middle;
  min-width: 26px;
  min-height: 26px;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu .attachments .icon-only:after {
  content: "\E110";
  text-align: center;
  position: absolute;
  color: var(--flyout_menu_color);
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu .wiki {
  padding: 10px !important;
  border-top: 1px solid var(--flyout_menu_border);
}
#wrapper .flyout-menu #watchers {
  background: var(--flyout_menu_watchers-menu_bg);
  color: var(--flyout_menu_watchers-menu_color);
  padding: 0;
  display: block !important;
}
#wrapper .flyout-menu #watchers h3 {
  margin-left: 0;
}
#wrapper .flyout-menu #watchers a {
  background: none;
  border: 0;
  padding: 0;
}
#wrapper .flyout-menu #watchers ul {
  padding: 0;
}
#wrapper .flyout-menu #watchers ul li {
  border-top: 1px solid var(--flyout_menu_border);
  position: relative;
  padding: 10px 40px 10px 36px;
}
#wrapper .flyout-menu #watchers ul li:after {
  content: '';
  display: block;
  clear: both;
  width: 1px;
  height: 100%;
  position: absolute;
  top: 0;
  right: 35px;
  background: var(--flyout_menu_button_bg);
}
#wrapper .flyout-menu #watchers ul li .gravatar {
  position: absolute;
  top: 50%;
  left: 10px;
  width: 16px;
  height: 16px;
  margin: -8px 0 0;
}
#wrapper .flyout-menu #watchers ul li a[href*="people"] {
  padding-left: 36px;
  margin: 0 -5px 0 -36px;
}
#wrapper .flyout-menu #watchers ul li .delete {
  position: absolute;
  top: 50%;
  right: 5px;
  margin: -13px 0 0;
  border: none;
  display: block;
  background: none;
  padding: 0;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  overflow: hidden;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--flyout-text-color);
  vertical-align: middle;
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu #watchers ul li .delete:after {
  content: "\E104";
  text-align: center;
  position: absolute;
  color: var(--flyout_menu_color);
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu .contextual #add_issue_link,
#wrapper .flyout-menu .contextual a[href*="projects/new"],
#wrapper .flyout-menu .contextual a[href*="watchers"] {
  border: none;
  display: block;
  background: none;
  padding: 0;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 5px 5px 0 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--flyout-text-color);
  vertical-align: middle;
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu .contextual #add_issue_link:after,
#wrapper .flyout-menu .contextual a[href*="projects/new"]:after,
#wrapper .flyout-menu .contextual a[href*="watchers"]:after {
  content: "\E14D";
  text-align: center;
  position: absolute;
  color: var(--flyout_menu_color);
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu .flyout-menu__avatar {
  height: var(--icon-width);
  align-items: center;
  border-top: 1px solid var(--flyout_menu_border);
  display: flex;
}
#wrapper .flyout-menu .flyout-menu__avatar a {
  width: 100%;
  height: var(--icon-width);
  line-height: var(--icon-width);
  padding: 0 10px;
  font-weight: var(--flyout-menu-font-weight);
  text-overflow: ellipsis;
  color: var(--flyout_menu_color);
  display: flex;
  align-items: center;
}
#wrapper .flyout-menu .flyout-menu__avatar a img {
  display: block;
  width: 22px;
  height: 22px;
}
#wrapper .flyout-menu .flyout-menu__avatar a.user {
  flex: 1 0 auto;
  padding: 0 10px;
}
#wrapper .flyout-menu .flyout-menu__avatar a[href*="/users/"] {
  width: 42px;
  padding-right: 0;
}
#wrapper .flyout-menu #admin-menu a {
  padding: 10px !important;
  background-image: none;
}
#wrapper .flyout-menu .flyout-menu__sidebar > div {
  padding-left: 0;
}
#wrapper .flyout-menu .flyout-menu__sidebar br {
  display: none;
}
#wrapper .flyout-menu .flyout-menu__sidebar > a {
  font-weight: var(--flyout-menu-font-weight);
  display: block;
  padding: 10px 10px;
  border-top: 1px solid var(--flyout_menu_border);
}
#wrapper .flyout-menu .flyout-menu__sidebar h3 ~ a {
  font-weight: var(--flyout-menu-font-weight);
  display: block;
  padding: 10px 10px;
  border-top: 1px solid var(--flyout_menu_border);
}
#wrapper .flyout-menu .flyout-menu__sidebar p:not(.icon) {
  margin: 0;
  padding: 0;
}
#wrapper .flyout-menu .flyout-menu__sidebar span.icon {
  display: block;
  padding: 5px 10px;
  height: auto;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#wrapper .flyout-menu .flyout-menu__sidebar span.icon.icon-helpdesk {
  line-height: 1rem;
}
#wrapper .flyout-menu .flyout-menu__sidebar span.icon:after {
  display: none;
}
#wrapper .flyout-menu table.note_data .content.preview {
  color: var(--flyout_menu_color);
}
#wrapper .flyout-menu .icon:not(td):not([href*="/cms"]),
#wrapper .flyout-menu a[href*="questions_sections/new"] {
  padding: 0 0 0 var(--icon-width);
}
#wrapper .flyout-menu .icon:not(td):not([href*="/cms"]):before,
#wrapper .flyout-menu a[href*="questions_sections/new"]:before {
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
}
#wrapper .flyout-menu .icon:not(td):not([href*="/cms"]).tags:before,
#wrapper .flyout-menu a[href*="questions_sections/new"].tags:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 30px;
  width: 1px;
  background: var(--flyout_menu_color);
  height: 100%;
}
#wrapper .flyout-menu .icon:not(td):not([href*="/cms"]):after,
#wrapper .flyout-menu a[href*="questions_sections/new"]:after {
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
}
#wrapper .flyout-menu .icon:not(td):not([href*="/cms"]).icon-phone,
#wrapper .flyout-menu a[href*="questions_sections/new"].icon-phone,
#wrapper .flyout-menu .icon:not(td):not([href*="/cms"]).icon-email,
#wrapper .flyout-menu a[href*="questions_sections/new"].icon-email {
  line-height: var(--icon-width-small);
  min-height: var(--icon-width-small);
  padding: 0 0 0 var(--icon-width-small);
}
#wrapper .flyout-menu .icon:not(td):not([href*="/cms"]).icon-phone:after,
#wrapper .flyout-menu a[href*="questions_sections/new"].icon-phone:after,
#wrapper .flyout-menu .icon:not(td):not([href*="/cms"]).icon-email:after,
#wrapper .flyout-menu a[href*="questions_sections/new"].icon-email:after {
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
}
#wrapper .flyout-menu div.contact {
  padding: 5px;
  border: 0;
  margin: 0;
}
#wrapper .flyout-menu div.contact .gravatar {
  width: 40px;
  height: 40px;
  float: left;
}
#wrapper .flyout-menu .subject_header td {
  padding-left: 5px !important;
  padding-right: 5px !important;
}
#wrapper .flyout-menu .contextual {
  padding: 0;
  margin: 0;
  float: right !important;
}
#wrapper .flyout-menu #customer_previous_issues .contextual,
#wrapper .flyout-menu #customer_profile .contextual {
  padding: 0;
  margin: 0;
}
#wrapper .flyout-menu #customer_previous_issues .contextual a,
#wrapper .flyout-menu #customer_profile .contextual a {
  font-weight: var(--flyout-menu-font-weight);
  display: block;
  padding: 10px 10px;
  border-top: 1px solid var(--flyout_menu_border);
  font-size: 1rem;
  line-height: 1.14;
}
#wrapper .flyout-menu .flyout-menu__sidebar {
  position: relative;
}
#wrapper .flyout-menu .flyout-menu__sidebar span.icon.tag_list {
  margin: 5px 0 0;
  padding: 0 0 0 26px;
  display: block;
  position: relative;
  font-size: 0;
  line-height: 0;
  width: calc(100% + 10px);
}
#wrapper .flyout-menu .flyout-menu__sidebar span.icon.tag_list:after {
  content: "\E18F";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  clear: both;
  height: 20px;
  width: 20px;
  margin: 0;
  overflow: hidden;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 26px;
  line-height: 1;
  color: var(--flyout-text-color);
}
#wrapper .flyout-menu .flyout-menu__sidebar span.icon.tag_list a {
  background: var(flyout_menu_bg);
  color: var(--flyout_menu_color);
  padding: 5px 10px;
  font-weight: var(--flyout-menu-font-weight);
  font-size: 1rem;
  line-height: 1.14;
}
#wrapper .flyout-menu .flyout-menu__sidebar h3 ~ p:not(.icon) {
  padding: 10px;
}
#wrapper .flyout-menu .flyout-menu__sidebar h3 ~ p:not(.icon) br {
  display: block;
}
#wrapper .flyout-menu .flyout-menu__sidebar h3 ~ p:not(.icon) .icon-helpdesk,
#wrapper .flyout-menu .flyout-menu__sidebar h3 ~ p:not(.icon) .icon-company-contact {
  margin: -10px;
  padding: 10px;
  border-top: 1px solid var(--flyout_menu_border);
}
#wrapper .flyout-menu .flyout-menu__sidebar h3 ~ p:not(.icon):empty {
  display: none;
}
#wrapper .flyout-menu .flyout-menu__sidebar h3 ~ p:not(.icon) #toggle-completed-versions {
  display: block;
  width: calc(100% + 20px);
  padding: 10px 10px 10px 36px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: -10px;
  font-weight: var(--flyout-menu-font-weight);
  text-decoration: none;
  min-height: auto;
  height: auto;
  line-height: 1;
  position: relative;
  background: none !important;
}
#wrapper .flyout-menu .flyout-menu__sidebar h3 ~ p:not(.icon) #toggle-completed-versions:after {
  content: "\E155";
  position: absolute;
  top: 50%;
  left: 5px;
  display: block;
  clear: both;
  height: 20px;
  width: 20px;
  margin: -10px 0 0;
  overflow: hidden;
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 20px;
  line-height: 1;
  color: var(--flyout_menu_color);
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
}
#wrapper .flyout-menu .flyout-menu__sidebar h3 ~ p:not(.icon) #toggle-completed-versions.collapsible:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#wrapper .flyout-menu .flyout-menu__sidebar h3 ~ p:not(.icon) #toggle-completed-versions.collapsible.icon-expended:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#wrapper .flyout-menu .flyout-menu__sidebar h3 ~ p:not(.icon) #toggle-completed-versions.collapsible.collapsed:after,
#wrapper .flyout-menu .flyout-menu__sidebar h3 ~ p:not(.icon) #toggle-completed-versions.collapsible.icon-collapsed:after {
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
}
#wrapper .flyout-menu .flyout-menu__sidebar a[href*="/my/account/destroy"] {
  font-size: 0px;
  line-height: 0px;
  position: absolute;
  top: 5px;
  left: 213px;
}
#wrapper .flyout-menu .flyout-menu__sidebar > h4 {
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 5px;
  border-color: var(--flyout_menu_border);
  color: var(--flyout_menu_color);
  margin: 0;
}
#wrapper .flyout-menu #issue_contacts {
  padding: 0;
}
#wrapper .flyout-menu .in-mobile {
  max-height: 0;
  overflow: hidden;
  display: block;
  -webkit-transition: max-height var(--time-main) ease-in-out;
  -moz-transition: max-height var(--time-main) ease-in-out;
  -ms-transition: max-height var(--time-main) ease-in-out;
  -o-transition: max-height var(--time-main) ease-in-out;
  transition: max-height var(--time-main) ease-in-out;
}
#wrapper .flyout-menu .open > .in-mobile {
  max-height: 100%;
}
#wrapper .flyout-menu ul li a.new-object,
#wrapper .new-object ~ .menu-children {
  display: block;
}
#wrapper .flyout-menu #new-object {
  display: none;
}
.mod-obj {
  position: fixed;
  top: -99999px;
  left: -99999px;
  height: auto;
  background: var(--bg);
  padding: 0;
  opacity: 0;
  z-index: 11;
  border: 1px solid var(--border-color);
  border-left: none;
  border-top: none;
}
.mod-obj .holder-children {
  overflow: hidden;
  width: 100%;
}
.mod-obj .menu-children {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 0.85714286rem;
  line-height: 1.4;
  font-weight: var(font-weight);
  display: block;
  background: var(--bg);
}
.mod-obj .menu-children a {
  display: block;
  width: 100%;
  padding: 5px 10px;
  color: var(--link-color);
  position: relative;
  overflow: hidden;
  z-index: 2;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.mod-obj .menu-children a:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 100%;
  background: var(--icon_bg_hover);
  z-index: -1;
  -webkit-transition: width var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out;
}
.mod-obj .menu-children a:hover {
  text-decoration: none;
  color: var(--link-color-hover);
}
.mod-obj .menu-children a:hover:after {
  width: 100%;
}
@media screen and (max-width: 1024px) {
  html.flyout-is-active {
    overflow: hidden;
  }
  html.flyout-is-active body {
    overflow: hidden;
  }
  html.flyout-is-active #wrapper {
    overflow: visible;
    height: 100%;
  }
  .has-main-menu #wrapper {
    padding-left: 0 !important;
  }
  .has-main-menu #wrapper3 > #admin-menu,
  .has-main-menu #wrapper3 > #main-menu {
    top: -9999999px;
    left: -999999px;
  }
}
/* --------------------- https://redmine-evolution.com/ -- */
#main-menu .jcf-scrollbar-vertical,
#admin-menu .jcf-scrollbar-vertical {
  background: var(--scrollbar);
}
#main-menu .jcf-scrollbar-vertical .jcf-scrollbar-handle,
#admin-menu .jcf-scrollbar-vertical .jcf-scrollbar-handle {
  background: var(--scrollbar_handle);
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START MAY PAGE */
.controller-welcome #block-select,
.controller-my #block-select,
.controller-projects #block-select {
  position: absolute;
  left: -99999px;
  top: -99999px;
}
.controller-welcome select[id*="settings_issuequery_"] + .select2,
.controller-my select[id*="settings_issuequery_"] + .select2,
.controller-projects select[id*="settings_issuequery_"] + .select2 {
  margin-left: 10px;
}
.controller-welcome #block-form,
.controller-my #block-form,
.controller-projects #block-form {
  margin-right: 10px;
  order: -3;
}
.controller-welcome #block-form .select2,
.controller-my #block-form .select2,
.controller-projects #block-form .select2 {
  margin-left: 10px;
}
.controller-welcome #content > .contextual form,
.controller-my #content > .contextual form,
.controller-projects #content > .contextual form {
  display: flex;
}
.controller-welcome #main > #content h3,
.controller-my #main > #content h3,
.controller-projects #main > #content h3 {
  padding-top: 0;
  margin: 0 0 15px;
}
.controller-welcome #main > #content h3 .icon-only,
.controller-my #main > #content h3 .icon-only,
.controller-projects #main > #content h3 .icon-only {
  width: var(--icon-smaller-width) !important;
  height: var(--icon-smaller-width) !important;
}
.controller-welcome #main > #content h3 .icon-only:after,
.controller-my #main > #content h3 .icon-only:after,
.controller-projects #main > #content h3 .icon-only:after {
  font-size: var(--icon-smaller-font-size) !important;
  line-height: var(--icon-smaller-width) !important;
}
.controller-welcome .block-receiver,
.controller-my .block-receiver,
.controller-projects .block-receiver {
  padding: 0;
  margin: 0;
  border: 0;
  width: 100%;
}
.controller-welcome .mypage-box,
.controller-my .mypage-box,
.controller-projects .mypage-box {
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 15px 15px 15px;
  margin: 20px 0;
  border: none;
  background: var(--bg-box);
  overflow: hidden;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
.controller-welcome .mypage-box .contextual,
.controller-my .mypage-box .contextual,
.controller-projects .mypage-box .contextual {
  padding: 0;
  margin: 0 0 10px;
  opacity: 1;
}
.controller-welcome .mypage-box .box,
.controller-my .mypage-box .box,
.controller-projects .mypage-box .box {
  padding: 0;
  margin: 0;
}
.controller-welcome div[id*="-settings"][style*="display"],
.controller-my div[id*="-settings"][style*="display"],
.controller-projects div[id*="-settings"][style*="display"] {
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  display: block !important;
  position: fixed;
  top: -9999999px;
  left: -9999999px;
}
.controller-welcome div[id*="-settings"][style*="display"].open-settings,
.controller-my div[id*="-settings"][style*="display"].open-settings,
.controller-projects div[id*="-settings"][style*="display"].open-settings {
  position: static;
}
.controller-welcome #content .mypage-box form,
.controller-my #content .mypage-box form,
.controller-projects #content .mypage-box form {
  margin: 0 0 20px ;
}
.controller-welcome #content .mypage-box form .box,
.controller-my #content .mypage-box form .box,
.controller-projects #content .mypage-box form .box {
  padding: 0;
  margin: 0;
}
.controller-welcome #content .mypage-box form .box + p,
.controller-my #content .mypage-box form .box + p,
.controller-projects #content .mypage-box form .box + p {
  margin: 0 0 0 10px;
}
.controller-welcome #content .mypage-box form input[type="submit"] + a,
.controller-my #content .mypage-box form input[type="submit"] + a,
.controller-projects #content .mypage-box form input[type="submit"] + a,
.controller-welcome #content .mypage-box form input[type="submit"] + input[type="button"],
.controller-my #content .mypage-box form input[type="submit"] + input[type="button"],
.controller-projects #content .mypage-box form input[type="submit"] + input[type="button"] {
  background: var(--button-bg);
  color: var(--button-color);
}
.controller-welcome #content .mypage-box form input[type="submit"] + a:hover,
.controller-my #content .mypage-box form input[type="submit"] + a:hover,
.controller-projects #content .mypage-box form input[type="submit"] + a:hover,
.controller-welcome #content .mypage-box form input[type="submit"] + input[type="button"]:hover,
.controller-my #content .mypage-box form input[type="submit"] + input[type="button"]:hover,
.controller-projects #content .mypage-box form input[type="submit"] + input[type="button"]:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
.controller-welcome #content .mypage-box form #settings_timelog_days,
.controller-my #content .mypage-box form #settings_timelog_days,
.controller-projects #content .mypage-box form #settings_timelog_days {
  margin-left: 10px;
  margin-right: 10px;
}
.controller-welcome div[id*="-settings"] form,
.controller-my div[id*="-settings"] form,
.controller-projects div[id*="-settings"] form {
  flex-wrap: wrap;
}
.controller-welcome div[id*="-settings"] .box + p,
.controller-my div[id*="-settings"] .box + p,
.controller-projects div[id*="-settings"] .box + p {
  display: block;
  width: 100%;
  flex: 1 0 auto;
  margin: 20px 0 0 !important;
}
.controller-welcome #my-page,
.controller-my #my-page,
.controller-projects #my-page {
  overflow: hidden;
}
.controller-welcome #my-page #list-top .mypage-box:first-child,
.controller-my #my-page #list-top .mypage-box:first-child,
.controller-projects #my-page #list-top .mypage-box:first-child,
.controller-welcome #my-page #list-left .mypage-box:first-child,
.controller-my #my-page #list-left .mypage-box:first-child,
.controller-projects #my-page #list-left .mypage-box:first-child,
.controller-welcome #my-page #list-right .mypage-box:first-child,
.controller-my #my-page #list-right .mypage-box:first-child,
.controller-projects #my-page #list-right .mypage-box:first-child {
  margin-top: 0;
}
.controller-welcome .dragging .block-receiver,
.controller-my .dragging .block-receiver,
.controller-projects .dragging .block-receiver {
  border: 1px dashed var(--color-main-color);
  margin: 15px 0;
  padding: 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
.controller-welcome table.list > thead > tr:first-child .id,
.controller-my table.list > thead > tr:first-child .id,
.controller-projects table.list > thead > tr:first-child .id {
  -webkit-border-top-left-radius: var(--border-radius);
  -moz-border-top-left-radius: var(--border-radius);
  border-top-left-radius: var(--border-radius);
}
.controller-welcome table.list > tbody > tr:last-child .id,
.controller-my table.list > tbody > tr:last-child .id,
.controller-projects table.list > tbody > tr:last-child .id {
  -webkit-border-bottom-left-radius: var(--border-radius);
  -moz-border-bottom-left-radius: var(--border-radius);
  border-bottom-left-radius: var(--border-radius);
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START CONTACTS ASSIGNED TO ME */
#block-my_contacts {
  background: var(--bg-box);
}
#block-my_contacts .box {
  padding: 0;
  margin: 0;
  visibility: visible;
}
#block-my_contacts .box ul {
  margin: 0 -7px;
  padding: 0;
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
}
#block-my_contacts .box ul li {
  width: 160px;
  background: var(--bg-fff);
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  margin: 0 7px 15px 7px;
  padding: 15px 10px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: box-shadow var(--time-hover) ease-in-out;
  font-size: 1rem;
  line-height: 1.4;
  -webkit-box-shadow: var(--box-shadow-null);
  -moz-box-shadow: var(--box-shadow-null);
  box-shadow: var(--box-shadow-null);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
#block-my_contacts .box ul li .contact {
  display: block;
}
#block-my_contacts .box ul li .contact a {
  display: flex;
  justify-content: center;
  text-align: center;
  margin-bottom: 5px;
  color: var(--color-link);
  font-size: 1rem;
  line-height: 1.1;
  font-weight: 700;
}
#block-my_contacts .box ul li .contact #avatar {
  margin-bottom: 10px;
  position: relative;
  display: flex;
  transform: scale(1);
  transition: transform var(--time-hover) ease-in-out;
}
#block-my_contacts .box ul li .contact #avatar img.gravatar {
  margin: 0 auto 0;
}
#block-my_contacts .box ul li .contact #avatar:hover {
  transform: scale(1.2);
}
#block-my_contacts .box ul li:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
#block-my_contacts .small {
  margin-top: 0;
}
#block-my_contacts .small a {
  display: inline-block;
  padding: 8px 10px 8px;
  box-sizing: border-box;
  text-align: center;
  background: var(--button-main-bg);
  color: var(--button-main-color);
  font-weight: bold;
  min-width: 160px;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  position: relative;
  transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  font-size: 1rem;
  line-height: 1rem;
}
#block-my_contacts .small a:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
  text-decoration: none;
}
#block-my_contacts_stats .list tbody tr:first-child td {
  border-top: 0;
}
#block-my_contacts_avatars {
  background: var(--bg-box);
}
#block-my_contacts_avatars .box {
  padding: 0;
  margin: 0 -7px;
  display: flex;
  align-items: stretch;
  visibility: visible;
}
#block-my_contacts_avatars .box .tooltip {
  width: calc(25% - 14px);
  background: var(--bg-fff);
  display: flex;
  justify-content: center;
  align-items: center;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  margin: 0 7px 15px;
  padding: 10px;
  box-sizing: border-box;
  -webkit-box-shadow: var(--box-shadow-null);
  -moz-box-shadow: var(--box-shadow-null);
  box-shadow: var(--box-shadow-null);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
#block-my_contacts_avatars .box .tooltip #avatar {
  display: block;
  margin-bottom: 15px;
}
#block-my_contacts_avatars .box .tooltip #avatar img {
  display: block;
}
#block-my_contacts_avatars .box .tooltip .tip {
  display: block;
  width: 100% !important;
  font-size: 1rem !important;
  line-height: 1.4 !important;
}
#block-my_contacts_avatars .box .tooltip .tip a {
  color: var(--color-link) !important;
}
#block-my_contacts_avatars .box .tooltip .tip a:first-child {
  color: var(--color-link) !important;
  font-size: 1rem;
  line-height: 1.1;
  font-weight: 700;
  display: block;
}
#block-my_contacts_avatars .box .tooltip .tip a:first-child + br {
  display: none;
}
#block-my_contacts_avatars .box .tooltip .tip a[href^="mailto"],
#block-my_contacts_avatars .box .tooltip .tip a[href^="tel"] {
  font-size: 1rem;
  line-height: 1.4;
  display: inline-block;
  font-weight: 400;
}
#block-my_contacts_avatars .box .tooltip:hover span.tip {
  position: relative;
  top: auto;
  left: auto;
  bottom: auto;
  right: auto;
  padding: 0;
  border: none;
  width: 100%;
  margin: 0;
}
#block-my_contacts_avatars .box .tooltip:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
#block-my_contacts_avatars .small {
  margin-top: 0;
}
#block-my_contacts_avatars .small a {
  display: inline-block;
  padding: 8px 10px 8px;
  box-sizing: border-box;
  text-align: center;
  background: var(--button-main-bg);
  color: var(--button-main-color);
  font-weight: bold;
  min-width: 160px;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  position: relative;
  transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  font-size: 1rem;
  line-height: 1rem;
}
#block-my_contacts_avatars .small a:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
  text-decoration: none;
}
/* END CONTACTS ASSIGNED TO ME*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START HELP TICKETS */
#block-my_helpdesk_tickets .small a {
  display: inline-block;
  padding: 8px 10px 8px;
  box-sizing: border-box;
  text-align: center;
  background: var(--button-main-bg);
  color: var(--button-main-color);
  font-weight: bold;
  min-width: 160px;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  position: relative;
  transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  font-size: 1rem;
  line-height: 1rem;
}
#block-my_helpdesk_tickets .small a:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
  text-decoration: none;
}
/* END HELP TICKETS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START CUSTOM QUERY */
#content #block-issuequery__2 .box,
#content #block-issuequery .box,
#content #block-issuequery__1 .box {
  padding: 0;
  margin-bottom: 0;
}
#content #block-issuequery__2 .box + p,
#content #block-issuequery .box + p,
#content #block-issuequery__1 .box + p {
  margin-top: 0;
}
#content #block-issuequery__2 form input[type="submit"],
#content #block-issuequery form input[type="submit"],
#content #block-issuequery__1 form input[type="submit"] {
  background-color: var(--button-main-bg);
  color: var(--button-main-color);
}
#content #block-issuequery__2 form input[type="submit"]:hover,
#content #block-issuequery form input[type="submit"]:hover,
#content #block-issuequery__1 form input[type="submit"]:hover {
  background-color: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
/* END CUSTOM QUERY */
/* --------------------- https://redmine-evolution.com/ -- */
/* START DEALS BOX */
#block-my_deals .box {
  padding: 0;
  margin: 0;
}
#block-my_deals #duplicates ul {
  margin: 0 -7px;
  padding: 0;
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
}
#block-my_deals #duplicates ul li {
  position: relative;
  width: 160px;
  background: var(--bg-fff);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  margin: 0 7px 15px 7px;
  padding: 15px 10px 35px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  text-align: center;
  font-size: 1rem;
  line-height: 1.4;
  -webkit-box-shadow: var(--box-shadow-null);
  -moz-box-shadow: var(--box-shadow-null);
  box-shadow: var(--box-shadow-null);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
#block-my_deals #duplicates ul li:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
#block-my_deals #duplicates ul li img {
  margin: 0 auto 10px;
}
#block-my_deals #duplicates ul li a {
  display: inline-block;
  margin: 0 0 10px;
  font-weight: bold;
}
#block-my_deals #duplicates ul li .tag-label-color {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  text-align: center;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
  padding: 5px 10px;
  -webkit-border-radius: 0 0 var(--border-radius) var(--border-radius);
  -moz-border-radius: 0 0 var(--border-radius) var(--border-radius);
  border-radius: 0 0 var(--border-radius) var(--border-radius);
}
#block-my_deals .small {
  margin-top: 0;
}
#block-my_deals .small a {
  display: inline-block;
  padding: 8px 10px 8px;
  box-sizing: border-box;
  text-align: center;
  background: var(--button-main-bg);
  color: var(--button-main-color);
  font-weight: bold;
  min-width: 160px;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  position: relative;
  transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  font-size: 1rem;
  line-height: 1rem;
}
#block-my_deals .small a:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
  text-decoration: none;
}
/* END DEALS BOX */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MY RESOURCE BOOKINGS */
#block-my_resource_bookings .my-resource-bookings-chart .cal {
  margin-top: 0;
}
#block-my_resource_bookings .my-resource-bookings-chart .workload-card {
  padding: 8px 10px;
  margin: 0;
  border-width: 4px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
  font-weight: bold;
}
#block-my_resource_bookings .my-resource-bookings-chart .workload-card .spent {
  order: 2;
  padding: 5px 10px;
  background-color: var(--bg-fff);
  color: var(--text-color-main);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#block-my_resource_bookings .my-resource-bookings-chart .workload-card p {
  order: 1;
}
#block-my_resource_bookings .my-resource-bookings-chart .workload-card.green {
  background: var(--color-green);
  border-color: var(--color-green);
  color: #fff;
}
#block-my_resource_bookings .my-resource-bookings-chart .workload-card.red {
  background: var(--notice-error-bg);
  border-color: var(--notice-error-main);
  color: var(--notice-error-main);
}
#block-my_resource_bookings .my-resource-bookings-chart table th:first-child {
  -webkit-border-radius: var(--border-radius) 0 0 0;
  -moz-border-radius: var(--border-radius) 0 0 0;
  border-radius: var(--border-radius) 0 0 0;
}
#block-my_resource_bookings .my-resource-bookings-chart table th:last-child {
  -webkit-border-radius: 0 var(--border-radius) 0 0;
  -moz-border-radius: 0 var(--border-radius) 0 0;
  border-radius: 0 var(--border-radius) 0 0;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card {
  margin: 0 0 2px;
  padding: 0 0 10px;
  min-height: 100px;
  border: 0;
  border-left: 4px solid var(--color-main-color);
  background-color: var(--light-bg);
  position: relative;
  z-index: 1;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card:hover {
  z-index: 2;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .log-time {
  padding: 0;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .log-time .icon {
  height: 30px;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .log-time .icon:after,
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .log-time .icon:before {
  left: 10px;
  margin: -12px 0 0 0;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .project-name {
  border: 0;
  font-weight: bold;
  font-size: 0.85714286rem;
  line-height: 1.1428rem;
  background: var(--color-main-color);
  color: var(--bg-fff);
  padding: 8px 10px;
  border-left: 4px solid var(--color-main-color);
  margin: 0;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .progress.spent {
  width: calc(100% - 20px) !important;
  margin: 0 10px 0;
  border: 0;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .progress.spent tr {
  border: 0;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .progress.spent td {
  padding: 0 10px;
  border: 0;
  margin: 0;
  height: 30px;
  vertical-align: middle;
  color: var(--text-color-main);
  font-weight: bold;
  background: var(--bg-fff);
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card.spent {
  border-color: #6ac259;
  background: #e1f3de;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card.spent .tooltip,
#block-my_resource_bookings .my-resource-bookings-chart .booking-card.spent .tooltip:hover {
  border-color: var(--notice-successfu-main);
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card.spent .tooltip span.tip,
#block-my_resource_bookings .my-resource-bookings-chart .booking-card.spent .tooltip:hover span.tip {
  border-color: var(--notice-successfu-main);
  background: var(--notice-successfu-bg);
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card.spent .project-name {
  background: var(--notice-successfu-main);
  color: var(--notice-successfu-main-text);
  border-color: var(--notice-successfu-main);
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .tooltip span.tip {
  display: block;
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: 45px;
  left: 0;
  margin: 0 0 0 -4px;
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .tooltip strong {
  flex: 1;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .tooltip:hover span.tip {
  top: 30px;
  visibility: visible;
  opacity: 1;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .tooltip,
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .tooltip:hover {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 10px 10px 5px;
  position: relative;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .tooltip span.tip,
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .tooltip:hover span.tip {
  padding: 10px;
  background: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 0.85714286rem;
  line-height: 1.1428rem;
  font-weight: normal;
  border: 0;
  background: var(--light-bg);
  border-left: 4px solid var(--color-main-color);
  width: calc(100% + 4px);
  -webkit-box-shadow: var(--small-box-shadow);
  -moz-box-shadow: var(--small-box-shadow);
  box-shadow: var(--small-box-shadow);
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .tooltip span.tip strong,
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .tooltip:hover span.tip strong {
  font-weight: bold;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .tooltip span.tip a,
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .tooltip:hover span.tip a {
  color: var(--link_color) !important;
  font-weight: bold;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .icon {
  overflow: visible;
  position: relative;
  padding-top: 0;
  padding-bottom: 0;
  background: none;
  display: flex;
  flex: 1 0 auto;
  align-items: center;
  padding-left: 24px;
  width: 100%;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  font-size: 1rem;
  line-height: 1.4;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: var(--icon-color-bg);
  text-decoration: none;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .icon:after {
  width: 24px;
  height: 24px;
  font-size: 20px;
  line-height: 24px;
  position: absolute;
  top: 50%;
  left: 0;
  margin: -12px 0 0 -5px;
  color: var(--icon-color-bg);
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .icon:before {
  width: 24px;
  height: 24px;
  top: 50%;
  left: 0;
  margin: -12px 0 0 -5px;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .icon .issue {
  margin: 0 0 0 5px;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .icon.icon-project:after {
  content: "\E133";
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .icon.icon-time-add {
  width: 100%;
  font-size: 1rem;
  line-height: 1rem;
  justify-content: center;
  text-decoration: none;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .description-box {
  height: auto !important;
  min-height: 0;
  padding: 0 10px 10px;
  font-weight: bold;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .description-box .text-box {
  padding-right: 0;
  padding: 0;
}
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .description-box .text-box:after,
#block-my_resource_bookings .my-resource-bookings-chart .booking-card .description-box .text-box:before {
  display: none;
}
#block-my_resource_bookings .my-resource-bookings-chart .spent.group-name {
  padding: 10px 0;
  background: var(--notice-successfu-bg);
  margin: 0 0 2px;
  border: none;
}
#block-my_resource_bookings table.cal {
  -webkit-border-radius: var(--border-radius) var(--border-radius) 0 0;
  -moz-border-radius: var(--border-radius) var(--border-radius) 0 0;
  border-radius: var(--border-radius) var(--border-radius) 0 0;
}
#block-my_resource_bookings table.cal > tbody {
  border: 0;
}
#block-my_resource_bookings table.cal > tbody .week-end {
  background-color: var(--color-fff);
}
#block-my_resource_bookings table.cal > tbody > tr {
  border: 0;
}
#block-my_resource_bookings table.cal > tbody > tr td {
  border-bottom: 0;
  border-right: 0;
}
#block-my_resource_bookings table.cal > tbody > tr td:last-child {
  border-right: 0;
}
#block-my_resource_bookings table.cal > tbody > tr:last-child > td {
  border-bottom: 0;
}
#block-my_resource_bookings table.cal > tbody > tr:last-child > td:first-child {
  -webkit-border-radius: 0 0 0 var(--border-radius);
  -moz-border-radius: 0 0 0 var(--border-radius);
  border-radius: 0 0 0 var(--border-radius);
}
/* END MY RESOURCE BOOKINGS */
#content form[action="/my/page"] {
  display: flex;
  width: 100%;
}
#content form[action="/my/page"] .box {
  width: auto;
}
#content form[action="/my/page"] .box p {
  padding: 0;
}
#content form[action="/my/page"] .box p label {
  width: auto;
  margin: 0 !important;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}
#content form[action="/my/page"] .box p label .jcf-select,
#content form[action="/my/page"] .box p label .select2 {
  margin: 0 0 0 10px;
}
/* START  */
#content #block-calendar table.cal tr td {
  border-bottom: 0;
}
#content #block-calendar table.cal tr td:last-child {
  border-right: 0;
}
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  .controller-welome .mypage-box,
  .controller-projects .mypage-box {
    padding: 15px 10px;
    margin: 0 0 20px;
  }
  .controller-welome .mypage-box > .contextual,
  .controller-projects .mypage-box > .contextual {
    opacity: 1 !important;
    margin-top: 0;
    margin-bottom: 0;
  }
  .controller-welome #main > #content div#activity dl dt,
  .controller-projects #main > #content div#activity dl dt {
    background: var(--color-fff);
  }
  .controller-welome #main > #content div#activity dl dd,
  .controller-projects #main > #content div#activity dl dd {
    background: var(--color-fff);
  }
  #block-my_deals #duplicates ul li {
    width: calc(33% - 14px);
  }
  #block-my_contacts_avatars .box {
    padding: 0;
    flex-wrap: wrap;
  }
  #block-my_contacts_avatars .box .tooltip {
    width: calc(50% - 14px);
  }
  #block-my_contacts .box ul li {
    width: calc(33% - 14px);
  }
  /* START MY RESOURCE BOOKINGS */
  #block-my_resource_bookings h3 {
    position: relative;
    padding-left: 35px !important;
    min-height: 30px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }
  #block-my_resource_bookings h3 > * {
    margin: 0 5px 0 0;
  }
  #block-my_resource_bookings h3 .icon-time-add {
    position: absolute;
    top: 0;
    left: 0;
  }
  #block-timelog h3 {
    position: relative;
    padding-left: 35px !important;
    min-height: 30px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }
  #block-timelog h3 > * {
    margin: 0 5px 0 0;
  }
  #block-timelog h3 .icon-add {
    position: absolute;
    top: 0;
    left: 0;
  }
}
@media screen and (max-width: 650px) {
  #block-my_contacts .small a,
  #block-my_deals .small a,
  #block-my_contacts_avatars .small a,
  #block-my_helpdesk_tickets .small a {
    width: 100%;
  }
  .controller-welcome div[id*="-settings"] .box + p,
  .controller-projects div[id*="-settings"] .box + p,
  .controller-my div[id*="-settings"] .box + p {
    margin: 0 !important;
  }
  .controller-welcome #my-page,
  .controller-projects #my-page,
  .controller-my #my-page {
    overflow: visible;
  }
  .controller-welcome .mypage-box,
  .controller-projects .mypage-box,
  .controller-my .mypage-box {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
  }
  .controller-welcome #main > #content > .contextual:not(.next-prev-links),
  .controller-projects #main > #content > .contextual:not(.next-prev-links),
  .controller-my #main > #content > .contextual:not(.next-prev-links) {
    width: 100%;
    position: static;
    /*margin-top: 20px;*/
    margin-bottom: 20px;
  }
  .controller-welcome #main > #content > .contextual:not(.next-prev-links) form,
  .controller-projects #main > #content > .contextual:not(.next-prev-links) form,
  .controller-my #main > #content > .contextual:not(.next-prev-links) form {
    width: 100%;
  }
  .controller-welcome #main > #content #block-activity div#activity,
  .controller-projects #main > #content #block-activity div#activity,
  .controller-my #main > #content #block-activity div#activity {
    margin-bottom: 0;
    padding-bottom: 1px;
  }
  .controller-welcome #main > #content #block-activity div#activity dl dd:last-child,
  .controller-projects #main > #content #block-activity div#activity dl dd:last-child,
  .controller-my #main > #content #block-activity div#activity dl dd:last-child {
    border-bottom: 0;
  }
  .controller-welcome #main > #content .mypage-box form #settings_timelog_days,
  .controller-projects #main > #content .mypage-box form #settings_timelog_days,
  .controller-my #main > #content .mypage-box form #settings_timelog_days {
    margin-top: 5px;
    margin-bottom: 5px;
  }
  #content #block-issuequery__2 form,
  #content #block-issuequery form,
  #content #block-issuequery__1 form {
    display: block;
  }
  #content #block-issuequery__2 form label,
  #content #block-issuequery form label,
  #content #block-issuequery__1 form label {
    padding: 0;
  }
  #content #block-issuequery__2 form .box,
  #content #block-issuequery form .box,
  #content #block-issuequery__1 form .box {
    width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  #block-my_deals #duplicates ul li {
    width: calc(50% - 14px);
  }
  #block-my_deals .small a {
    display: block;
    width: 100%;
    text-align: center;
  }
  #main > #content #block-my_contacts_avatars .box,
  #main > #content #block-my_deals .box {
    padding-top: 0;
    padding-bottom: 0;
  }
  #block-my_contacts_avatars .small a {
    display: block;
    width: 100%;
    text-align: center;
  }
  #block-my_contacts .box ul li {
    width: calc(50% - 14px);
  }
  #block-my_contacts .small a {
    display: block;
    width: 100%;
    text-align: center;
  }
}
@media screen and (max-width: 480px) {
  #content form[action="/my/page"] .box p label {
    flex-wrap: wrap;
  }
  #content form[action="/my/page"] .box p label .jcf-select {
    width: 100%;
    flex: 1 0 auto;
    margin: 5px 0 0 !important;
  }
  #block-my_deals #duplicates ul li {
    width: calc(100% - 14px);
  }
  #block-my_contacts_avatars .box .tooltip {
    width: 100%;
    margin: 0 0 15px;
  }
  #block-my_contacts .box ul li {
    width: calc(100% - 14px);
  }
}
/* END MAY PAGE */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START NEWS */
.controller-news #main #content h2 img.gravatar {
  display: none;
}
.controller-news.action-index #main > #content {
  padding: 0 0 43px;
}
.controller-news.action-index #main > #content > h2 {
  width: 100%;
  margin: 0 0 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-news.action-index #main > #content p.other-formats {
  margin: 0;
}
.controller-news.action-index #main > #content > .contextual {
  margin-right: 0;
}
.controller-news.action-index #main > #content header h3 {
  font-weight: 400;
  width: 100%;
  font-family: sans-serif;
  font-size: 0.85714286rem;
  line-height: 1.4;
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
  margin: 0 0 10px;
  padding: 0;
  align-items: center;
}
.controller-news.action-index #main > #content header h3 img {
  display: block;
  margin: 0 5px 0 0;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
}
.controller-news.action-index #main > #content header h3 a {
  font-size: 1.1428rem;
  line-height: 1.4;
  font-weight: 700;
  margin: 0 5px 0 0;
}
.controller-news.action-show #main > #content h3.comments {
  width: 100%;
  padding: 10px 30px;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
  background: var(--bg-box);
  margin: 0 -30px 20px;
}
.controller-news.action-show #main > #content h3.comments:before {
  display: none;
}
.controller-news.action-show #main > #content #comments h4 {
  font-size: 1rem;
  line-height: 1.4;
  font-weight: 600;
  border-bottom: 1px solid var(--border-color-content);
  padding: 8px 30px 8px 0;
  margin: 0 0 10px;
}
.controller-news.action-show #main > #content #comments h4 .gravatar {
  margin: 0 5px 5px 0;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
}
.controller-news.action-show #edit-news {
  margin: 0 0 20px;
}
.controller-news .news-article {
  background: var(--bg-other);
  margin: 0 0 15px;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  -webkit-transition: box-shadow var(--time-hover) ease-in-out;
  -moz-transition: box-shadow var(--time-hover) ease-in-out;
  -ms-transition: box-shadow var(--time-hover) ease-in-out;
  -o-transition: box-shadow var(--time-hover) ease-in-out;
  transition: box-shadow var(--time-hover) ease-in-out;
}
.controller-news .news-article:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
.controller-news .news-article .open-box-news {
  height: 0;
  overflow: hidden;
  width: 100%;
}
.controller-news .news-article header {
  display: block;
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-family: sans-serif;
  overflow: hidden;
  font-size: 1.1428rem;
  line-height: 1.4;
  padding: 15px 60px 15px 20px;
  font-weight: 600;
}
.controller-news .news-article header:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  margin: -15px 0 0;
  right: 60px;
  height: 30px;
  width: 1px;
  background: var(--border-color);
}
.controller-news .news-article header p {
  margin: 0;
}
.controller-news .news-article header p.author {
  font-size: 0.85714286rem;
  line-height: 1.4;
}
.controller-news .news-article .open-news-link {
  position: absolute;
  top: 50%;
  right: 15px;
  cursor: pointer !important;
  padding: 0;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: -15px 0 0;
  overflow: hidden;
  z-index: 2;
  background-size: var(--icon-width) var(--icon-width);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
.controller-news .news-article .open-news-link:after {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
.controller-news .news-article .open-news-link:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.controller-news .news-article .open-news-link:hover {
  color: var(--icon-color-hover);
}
.controller-news .news-article .open-news-link:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-news .news-article .open-news-link.selected {
  color: var(--icon_color_active);
}
.controller-news .news-article .open-news-link.selected:before {
  background: var(--icon_bg_active);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-news .news-article .wiki {
  overflow: hidden;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 15px 20px;
  position: relative;
  border-top: 1px solid var(--border-color);
}
.controller-news .news-article .wiki p {
  margin: 0 0 10px;
}
.controller-news .news-article .wiki p:last-of-type {
  margin: 0;
}
.controller-news .news-article.open-news .open-news-link {
  color: var(--icon_color_active);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
.controller-news #add-news {
  position: relative;
  z-index: 5;
  padding: 20px 30px;
  margin: 0 0 30px;
  background: var(--bg-fff);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
}
/* START NEWS FOR MAY PAGE */
.news.box p:not(.nodata),
#block-news p:not(.nodata) {
  background: var(--bg-fff);
  display: block;
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  padding: 15px 20px;
  font-family: sans-serif;
  font-size: 0.85714286rem;
  line-height: 1.4;
  font-weight: 700;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--box-shadow-null);
  -moz-box-shadow: var(--box-shadow-null);
  box-shadow: var(--box-shadow-null);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
.news.box p:not(.nodata):hover,
#block-news p:not(.nodata):hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
.news.box p:not(.nodata) a,
#block-news p:not(.nodata) a {
  font-size: 1rem;
  line-height: 1.4;
  margin: 0 5px 0 0;
}
.news.box p:not(.nodata) .summary,
#block-news p:not(.nodata) .summary {
  display: block;
  margin: 10px 0 0;
  font-size: 1rem;
  line-height: 1.4;
  font-style: normal;
}
.news.box > a,
#block-news > a {
  margin: 20px 0 0;
  display: inline-block;
  padding: 8px 10px 8px;
  box-sizing: border-box;
  text-align: center;
  background: var(--button-main-bg);
  color: var(--button-main-color);
  font-weight: bold;
  border-radius: var(--icon-border-radius);
  position: relative;
  transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  font-size: 1rem;
  line-height: 1rem;
}
.news.box > a:hover,
#block-news > a:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
  text-decoration: none;
}
/* END NEWS FOR MAY PAGE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  .controller-news .attachments .contextual {
    margin: 0 -40px 0 0 !important;
  }
  .controller-news .news-article .wiki {
    padding: 10px;
  }
  .controller-news.action-show #main > #content h3.comments {
    padding: 10px 10px;
    margin: 0 -10px 20px;
    width: calc(100% + 20px);
  }
  .controller-news.action-show #main > #content h3.comments:before {
    left: 10px;
  }
  .controller-news.action-show #main tr .icon,
  .controller-news.action-show #main tr .icon-only {
    color: var(--icon-color);
  }
  .controller-news.action-show #main tr .icon:before,
  .controller-news.action-show #main tr .icon-only:before {
    background: var(--icon_bg);
  }
  .controller-news.action-show #main tr .icon:hover,
  .controller-news.action-show #main tr .icon-only:hover {
    color: var(--icon-color-hover);
  }
  .controller-news.action-show #main tr .icon:hover:before,
  .controller-news.action-show #main tr .icon-only:hover:before {
    background: var(--icon_bg_hover);
  }
  .controller-news.action-show #comments .contextual a {
    color: var(--icon-color);
  }
  .controller-news.action-show #comments .contextual a:before {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    background: var(--icon_bg) !important;
  }
  .controller-news.action-show #comments .contextual a:hover {
    color: var(--icon-color-hover);
  }
  .controller-news.action-show #comments .contextual a:hover:before {
    background: var(--icon_bg_hover);
  }
  .controller-news.action-index #main > #content {
    padding: 0 10px 56px;
  }
  .controller-news.action-index #main > #content > h2 {
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 20px;
    width: calc(100% + 20px);
  }
  .controller-news.action-index h3.comments {
    margin: 0 -10px 20px;
    padding: 10px 10px;
    width: calc(100% + 20px);
  }
  .controller-news #add-news {
    padding: 0 10px;
  }
  .controller-news #add-news h2 {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .controller-news .news-article {
    background: var(--bg-box);
  }
  .controller-news .news-article header {
    padding: 10px 60px 10px 10px;
  }
  .controller-news .news-article header:after {
    right: 50px;
    background: var(--border-color);
  }
  .controller-news #add-news {
    padding: 0;
    margin: 0 0 20px;
    -webkit-box-shadow: var(--box-shadow-null);
    -moz-box-shadow: var(--box-shadow-null);
    box-shadow: var(--box-shadow-null);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
}
@media screen and (max-width: 650px) {
  .controller-news.action-show .attachments {
    padding: 0;
  }
  .controller-news.action-show .attachments table tr {
    display: block;
    width: 100%;
  }
  .controller-news.action-show .attachments table tr td {
    display: block;
    width: 100%;
  }
  .controller-news.action-show .attachments table tr td:last-child {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid var(--border-color);
  }
  .controller-news.action-show .attachments table tr:last-child td {
    padding: 0;
    border-bottom: 0;
  }
  .controller-news.action-index #add-news h2 {
    font-size: 1.1428rem;
    line-height: 1.1428rem;
  }
  .controller-news .news-article {
    margin: 0 -10px 10px;
    width: calc(100% + 20px) !important;
    -webkit-box-shadow: var(--box-shadow-null) !important;
    -moz-box-shadow: var(--box-shadow-null) !important;
    box-shadow: var(--box-shadow-null) !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  .news.box > a,
  #block-news > a {
    display: block;
    width: 100%;
    text-align: center;
  }
}
@media screen and (max-width: 480px) {
  .controller-news.action-show .attachments table tr[id*="attachment-"] {
    display: block;
  }
  .controller-news.action-show .attachments table tr[id*="attachment-"] td {
    display: block;
    width: 100%;
  }
  .controller-news.action-show .attachments table tr[id*="attachment-"] td:first-child {
    padding-right: 0;
    padding-bottom: 10px;
    border-bottom: 0;
  }
  .controller-news.action-show .attachments table tr[id*="attachment-"] td:last-child {
    padding-left: 0;
  }
}
/* END NEWS */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START OVERVIEW */
.controller-projects.action-show #content div.box,
.controller-projects.action-show #content .splitcontentleft .wiki {
  color: var(--text-color-main);
  overflow: hidden;
  position: relative;
  width: 100% !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
  margin: 0 0 20px;
  border: none;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
.controller-projects.action-show #content div.box p,
.controller-projects.action-show #content .splitcontentleft .wiki p {
  margin: 10px 0 0;
}
.controller-projects.action-show #content div.box p:first-of-type,
.controller-projects.action-show #content .splitcontentleft .wiki p:first-of-type {
  margin: 0;
}
.controller-projects.action-show #content div.box p a,
.controller-projects.action-show #content .splitcontentleft .wiki p a {
  font-weight: 600;
}
.controller-projects.action-show #content div.box .list,
.controller-projects.action-show #content .splitcontentleft .wiki .list {
  margin: 0 0 15px;
}
.controller-projects.action-show #content .splitcontentleft {
  padding: 0 10px 0 0;
}
.controller-projects.action-show #content .splitcontentright {
  padding: 0 0 0 10px;
}
.controller-projects.action-show #content .splitcontentleft,
.controller-projects.action-show #content .splitcontentright {
  width: 50%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-projects.action-show #content .splitcontentleft .box:last-of-type,
.controller-projects.action-show #content .splitcontentright .box:last-of-type {
  margin-bottom: 10px;
}
.controller-projects.action-show #content .splitcontentleft .wiki:last-of-type,
.controller-projects.action-show #content .splitcontentright .wiki:last-of-type {
  margin-bottom: 10px;
}
.controller-projects.action-show #content .contextual #block-form {
  margin-right: 10px;
  order: -3;
}
.controller-projects.action-show #content .contextual #block-form .select2 {
  max-width: 150px;
}
.controller-projects.action-show table.list th {
  color: var(--text-color-main);
}
.controller-projects.action-show table.list td {
  font-size: 14px;
}
.controller-projects.action-show table.list td:first-child a {
  font-size: 12px;
  line-height: 15px;
  display: inline-block;
  vertical-align: top;
  min-width: 109px;
  padding: 4px 5px 5px;
  text-align: center;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  color: var(--bg-fff);
  background: var(--tracker-1);
  -webkit-transition: opacity var(--time-hover) ease;
  -moz-transition: opacity var(--time-hover) ease;
  -ms-transition: opacity var(--time-hover) ease;
  -o-transition: opacity var(--time-hover) ease;
  transition: opacity var(--time-hover) ease;
}
.controller-projects.action-show table.list td:first-child a[href*="tracker_id=1"] {
  background: var(--tracker-1);
}
.controller-projects.action-show table.list td:first-child a[href*="tracker_id=2"] {
  background: var(--tracker-2);
}
.controller-projects.action-show table.list td:first-child a[href*="tracker_id=3"] {
  background: var(--tracker-3);
}
.controller-projects.action-show table.list td:first-child a:hover {
  text-decoration: none;
  opacity: 0.9;
}
/* START OVERVIEW */
/* --------------------- https://redmine-evolution.com/ -- */
/* START CONTACTS*/
#duplicates {
  overflow: visible !important;
}
#duplicates .icon-vcard {
  background-image: none;
  position: relative;
}
#duplicates .icon-vcard:after {
  content: "\E01A";
  position: absolute;
  top: 0;
  left: 0;
  width: 22px;
  height: 22px;
  font-size: 22px;
}
#duplicates #duplicates {
  margin: 0 -7px;
  padding: 0;
  display: flex;
  align-items: stretch;
}
#duplicates #duplicates .avatar {
  width: 64px;
  height: 64px;
  background: var(--bg-fff);
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
  margin: 0 7px 15px 7px;
  padding: 0;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  box-shadow: none;
  transition: box-shadow var(--time-hover) ease-in-out;
  font-size: 1rem;
  line-height: 1.4;
}
#duplicates #duplicates .avatar a {
  display: block;
}
#duplicates #duplicates .avatar a img {
  margin: 0 auto;
  width: 100%;
  display: block;
  height: auto;
}
#duplicates #duplicates .avatar span.tip {
  position: relative;
  top: auto;
  left: 50%;
  bottom: -26px;
  right: auto;
  border: none;
  box-sizing: border-box;
  width: 160px !important;
  margin: 0 0 0 -80px;
  padding: 10px;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  background: var(--bg-fff);
  font-size: 0.85714286rem !important;
  line-height: 1.3 !important;
  visibility: hidden;
  opacity: 0;
  transition: visibility var(--time-hover) ease-in-out, opacity var(--time-hover) ease-in-out, bottom var(--time-hover) ease-in-out;
}
#duplicates #duplicates .avatar span.tip:after {
  content: '';
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 8px solid var(--bg-fff);
  position: absolute;
  top: -5px;
  left: 50%;
  margin: 0 0 0 -8px;
}
#duplicates #duplicates .avatar span.tip a:first-child {
  display: block;
  font-weight: 700;
  font-size: 0.85714286rem !important;
  line-height: 1.1 !important;
}
#duplicates #duplicates .avatar span.tip a:first-child + br {
  display: none;
}
#duplicates #duplicates .avatar span.tip a {
  color: var(--tooltip-bg) !important;
}
#duplicates #duplicates .avatar span.tip a[href^="mailto"],
#duplicates #duplicates .avatar span.tip a[href^="tel"] {
  font-size: 0.85714286rem !important;
  line-height: 1.3 !important;
  display: inline-block;
  font-weight: 400;
}
#duplicates #duplicates .avatar:hover span.tip {
  opacity: 1;
  visibility: visible;
  bottom: -6px;
}
#duplicates #duplicates .avatar:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
/* END CONTACTS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 899px) {
  .mypage-box > .contextual {
    opacity: 1;
  }
}
@media screen and (max-width: 650px) {
  .controller-projects.action-show #content div.box,
  .controller-projects.action-show #content .splitcontentleft .wiki {
    width: calc(100% + 20px) !important;
    padding: 15px 10px;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    margin-bottom: 20px !important;
  }
  .controller-projects.action-show #content #block-form .select2 {
    max-width: 100%;
    margin-left: 0 !important;
  }
  .controller-projects.action-show table.list td:first-child a {
    min-width: auto;
  }
}
/* END MEDIA*/
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/*START PAGINATION*/
#main > #content span.pagination {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
#main > #content span.pagination .pages {
  display: flex;
  align-items: center;
  margin: 0 15px 0 0;
}
#main > #content span.pagination .pages li {
  margin: 0 3px;
  border: none;
  width: auto !important;
  min-width: 30px;
  background: none;
}
#main > #content span.pagination .pages li a,
#main > #content span.pagination .pages li span {
  padding: 8px 10px;
  font-size: 1rem;
  line-height: 1;
  height: auto;
  background: none;
  color: var(--pagination-color);
  font-weight: 400;
  margin: 0;
  display: block;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: background var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -moz-transition: background var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -ms-transition: background var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -o-transition: background var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  transition: background var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
}
#main > #content span.pagination .pages li a {
  background: var(--pagination-bg);
}
#main > #content span.pagination .pages li a:hover {
  color: var(--pagination-color-hover);
  background: var(--pagination-bg-hover);
}
#main > #content span.pagination .pages li.current {
  background: none;
  border: none;
}
#main > #content span.pagination .pages li.current span {
  color: var(--pagination-color-avtive);
  background: var(--pagination-bg-active);
  font-weight: var(--pagination-font-weight);
}
#main > #content span.pagination .pages li.next a,
#main > #content span.pagination .pages li.previous a,
#main > #content span.pagination .pages li.next span,
#main > #content span.pagination .pages li.previous span {
  width: var(--icon-width);
  height: var(--icon-width);
  border-radius: var(--icon-border-radius);
  padding: 0;
  text-indent: -99999px;
  display: block;
  position: relative;
}
#main > #content span.pagination .pages li.next a:after,
#main > #content span.pagination .pages li.previous a:after,
#main > #content span.pagination .pages li.next span:after,
#main > #content span.pagination .pages li.previous span:after {
  text-indent: 0;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  transition: color var(--time-hover) ease-in-out;
  border-radius: var(--icon-border-radius);
  z-index: 1;
  background-size: var(--icon-width) var(--icon-width);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  opacity: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-width);
  line-height: 1;
}
#main > #content span.pagination .pages li.next a,
#main > #content span.pagination .pages li.previous a {
  background: none;
}
#main > #content span.pagination .pages li.next a:before,
#main > #content span.pagination .pages li.previous a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--pagination-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main > #content span.pagination .pages li.next a:hover:before,
#main > #content span.pagination .pages li.previous a:hover:before {
  background: var(--pagination-bg-hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
table a[href*="gantt?action=show"] {
  display: inline-block;
  margin: 0 0 20px;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  .controller-issues.action-show.loggedas #main {
    margin: 0 0 10px;
  }
  .controller-issues.action-show #issue_tree,
  .controller-issues.action-show #relations {
    width: calc(100% + 20px) !important;
    margin: -1px -10px 20px;
    padding: 15px 10px;
  }
  .controller-issues.action-show #main div.issue .contextual {
    right: 10px;
    top: 10px;
  }
  .controller-issues.action-index #main > #content {
    padding: 0;
  }
  .controller-issues.action-index #main > #content span.pagination {
    width: 100%;
    margin: 20px 0 0;
  }
  .controller-issues.action-index #main > #content p.other-formats {
    margin-top: 20px;
    width: 100%;
    position: static;
  }
  #main > #content span.pagination {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main > #content span.pagination .pages li.next,
  #main > #content span.pagination .pages li.previous {
    width: auto;
  }
  #main > #content span.pagination .pages li.next a:before,
  #main > #content span.pagination .pages li.previous a:before {
    display: none;
  }
}
@media screen and (max-width: 650px) {
  #main > #content span.pagination {
    margin: 10px 0 0;
    position: static;
    padding: 0;
    width: 100%;
  }
}
/* END MEDIA*/
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* 21.03.2022 */
/* START ALL VARIABLES FOR WORK LESS */
/* END ALL VARIABLES FOR WORK LESS */
/* START PROJECTS */
.controller-projects.action-index {
  /* START TABLE LIST */
  /* END TABLE LIST */
}
.controller-projects.action-index:not(.loggedas) #main #content {
  padding-bottom: 30px;
}
.controller-projects.action-index #content #query_form {
  padding: 0 20px;
  width: calc(100% + 40px);
  margin-left: -20px;
  margin-right: -20px;
}
.controller-projects.action-index #content #query_form .holder-filters {
  padding: 0 20px;
  width: calc(100% + 40px);
  margin-left: -20px;
  margin-right: -20px;
}
.controller-projects.action-index #content #query_form .holder-filters .in-filter {
  border: 0;
  background: var(--bg-fff);
  padding: 15px 32px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
}
.controller-projects.action-index #content #query_form #query_form_with_buttons {
  overflow: visible;
}
.controller-projects.action-index #main #content {
  padding: 0;
}
.controller-projects.action-index #main #content > h2 {
  width: 100%;
  margin: 0 0 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-projects.action-index #main #content p.other-formats {
  margin: 0;
}
.controller-projects.action-index #main #content p[style="text-align:right;"] {
  display: flex;
  margin: 0;
  font-size: 0.85714286rem;
  line-height: 1.1428rem;
}
.controller-projects.action-index #main #content p[style="text-align:right;"] .icon-fav {
  padding: 8px 0 8px 50px;
  margin: 0;
  overflow: hidden;
  position: relative;
  background-position: 10px 0px;
  background-size: 20px 20px;
  z-index: 2;
  background-repeat: no-repeat;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.controller-projects.action-index #main #content p[style="text-align:right;"] .icon-fav:after {
  position: absolute;
  display: block;
  clear: both;
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  top: 50%;
  left: 15px;
  margin: -10px 0 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
}
.controller-projects.action-index #main #content p[style="text-align:right;"] .icon-fav.my-project:after {
  color: var(--icon-star);
}
.controller-projects.action-index #main #content p[style="text-align:right;"] a.icon-fav {
  cursor: pointer !important;
}
.controller-projects.action-index #main #content #projects-index {
  width: 100%;
  position: relative;
  z-index: 2;
  column-count: inherit;
  column-width: inherit;
  -webkit-column-count: inherit;
  -webkit-column-width: inherit;
  -webkit-column-gap: inherit;
  -moz-column-count: inherit;
  -moz-column-width: inherit;
  -moz-column-gap: inherit;
}
.controller-projects.action-index #main #content #projects-index > ul.projects {
  margin: 0;
  padding: 0;
  list-style: none;
  width: 100%;
  border: none;
  column-count: inherit;
  column-width: inherit;
  -webkit-column-count: inherit;
  -webkit-column-width: inherit;
  -webkit-column-gap: inherit;
  -moz-column-count: inherit;
  -moz-column-width: inherit;
  -moz-column-gap: inherit;
}
.controller-projects.action-index #main #content #projects-index > ul.projects ul.projects {
  overflow: hidden;
  border: none;
  position: relative;
  margin: 0 0 0 50px;
  padding: 0;
  width: calc(100% - 25px);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  column-count: inherit;
  column-width: inherit;
  -webkit-column-count: inherit;
  -webkit-column-width: inherit;
  -webkit-column-gap: inherit;
  -moz-column-count: inherit;
  -moz-column-width: inherit;
  -moz-column-gap: inherit;
}
.controller-projects.action-index #main #content #projects-index > ul.projects ul.projects:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--border-color-content);
}
.controller-projects.action-index #main #content #projects-index > ul.projects ul.projects a.project {
  margin: 0;
  padding: 15px 30px 15px 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-projects.action-index #main #content #projects-index > ul.projects ul.projects > li {
  margin: 0;
}
.controller-projects.action-index #main #content #projects-index > ul.projects ul.projects > li.child {
  border-top: 1px solid var(--border-color-content);
  display: block !important;
}
.controller-projects.action-index #main #content #projects-index > ul.projects ul.projects > li.child.first-child {
  border: none;
}
.controller-projects.action-index #main #content #projects-index > ul.projects li > div {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.controller-projects.action-index #main #content #projects-index > ul.projects li > div а {
  flex: 1;
}
.controller-projects.action-index #main #content #projects-index > ul.projects li.root {
  padding: 0;
  border: none;
  background: var(--bg-box);
  width: 100%;
  margin: 0 0 15px;
  -webkit-box-sizing: inherit;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  break-inside: inherit;
  -webkit-break-inside: inherit;
  -moz-break-inside: inherit;
  page-break-inside: inherit;
  -webkit-column-break-inside: inherit;
  -moz-column-break-inside: inherit;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--box-shadow-null);
  -moz-box-shadow: var(--box-shadow-null);
  box-shadow: var(--box-shadow-null);
  -webkit-transition: box-shadow var(--time-hover) ease-in-out;
  -moz-transition: box-shadow var(--time-hover) ease-in-out;
  -ms-transition: box-shadow var(--time-hover) ease-in-out;
  -o-transition: box-shadow var(--time-hover) ease-in-out;
  transition: box-shadow var(--time-hover) ease-in-out;
}
.controller-projects.action-index #main #content #projects-index > ul.projects li.root:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
.controller-projects.action-index #main #content #projects-index > ul.projects li.root div.root {
  padding: 0;
  display: flex;
  align-items: center;
}
.controller-projects.action-index #main #content #projects-index > ul.projects li.root div.child {
  padding: 0;
}
.controller-projects.action-index #main #content #projects-index > ul.projects .projects-open > div.root > .project,
.controller-projects.action-index #main #content #projects-index > ul.projects .projects-open > div.child > .project {
  color: var(--color-main-color);
}
.controller-projects.action-index #main #content #projects-index > ul.projects .projects-open > div.root .holder-mainlink > .list-buttons .open-projects,
.controller-projects.action-index #main #content #projects-index > ul.projects .projects-open > div.child .holder-mainlink > .list-buttons .open-projects {
  color: var(--color-main-color);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
.controller-projects.action-index #main #content #projects-index > ul.projects .wiki-open .list-buttons .open-wiki {
  color: var(--icon_color_active-bg);
}
.controller-projects.action-index #main #content #projects-index > ul.projects .projects-open > .holder-mainlink .project {
  color: var(--color-main-color);
}
.controller-projects.action-index #main #content #projects-index > ul.projects .holder-mainlink {
  width: 100%;
  display: flex;
  align-items: center;
  position: relative;
}
.controller-projects.action-index #main #content #projects-index > ul.projects .project {
  flex: 1;
  width: 100%;
  margin: 0;
  padding: 15px 20px 15px 50px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  height: auto;
  font-family: sans-serif;
  overflow: hidden;
  font-size: 1.1428rem;
  line-height: 1.4;
  font-weight: 600;
  color: var(--text-color-main);
  background-position: 10px 50%;
  background-repeat: no-repeat;
  text-decoration: none;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
.controller-projects.action-index #main #content #projects-index > ul.projects .project:hover {
  color: var(--color-main-color);
  text-decoration: none;
}
.controller-projects.action-index #main #content #projects-index > ul.projects .project.my-project:after {
  opacity: 1;
  color: var(--icon-star);
}
.controller-projects.action-index #main #content #projects-index > ul.projects .project:after {
  width: 30px;
  height: 30px;
  top: 50%;
  left: 10px;
  margin: -15px 0 0;
  color: var(--icon-color-bg);
  font-size: 30px;
  line-height: 30px;
}
.controller-projects.action-index #main #content #projects-index > ul.projects .project:before {
  width: 30px;
  height: 30px;
  background: var(--icon_bg-bg);
  top: 50%;
  left: 10px;
  margin: -15px 0 0;
}
.controller-projects.action-index #main #content #projects-index > ul.projects > li > ul.projects {
  margin: 0 30px;
  width: calc(100% - 60px);
  position: relative;
}
.controller-projects.action-index #main #content #projects-index > ul.projects > li > ul.projects:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--border-color);
}
.controller-projects.action-index #main #content #projects-index .holder-wiki,
.controller-projects.action-index #main #content #projects-index .holder-projects {
  overflow: hidden;
  width: 100%;
  height: 0;
}
.controller-projects.action-index #main #content #projects-index .holder-wiki-inner {
  width: 100%;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 20px;
  margin: 0;
}
.controller-projects.action-index #main #content #projects-index .child .holder-wiki-inner {
  padding: 0;
}
.controller-projects.action-index #main #content #projects-index div.wiki {
  width: 100%;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}
.controller-projects.action-index #main #content #projects-index .open-projects {
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
.controller-projects.action-index #main #content #projects-index .open-wiki,
.controller-projects.action-index #main #content #projects-index .open-projects {
  cursor: pointer !important;
  padding: 0;
  float: right;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  background-repeat: no-repeat;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
}
.controller-projects.action-index #main #content #projects-index .open-wiki:after,
.controller-projects.action-index #main #content #projects-index .open-projects:after {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
.controller-projects.action-index #main #content #projects-index .open-wiki:before,
.controller-projects.action-index #main #content #projects-index .open-projects:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
.controller-projects.action-index #main #content #projects-index .open-wiki:hover:before,
.controller-projects.action-index #main #content #projects-index .open-projects:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-projects.action-index #main #content #projects-index .open-wiki:hover:after,
.controller-projects.action-index #main #content #projects-index .open-projects:hover:after {
  color: var(--icon-color-hover-bg);
}
.controller-projects.action-index #main #content #projects-index .open-wiki.selected:before,
.controller-projects.action-index #main #content #projects-index .open-projects.selected:before {
  background: var(--icon_bg_active-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-projects.action-index #main #content #projects-index .open-wiki.selected:after,
.controller-projects.action-index #main #content #projects-index .open-projects.selected:after {
  color: var(--icon_color_active-bg);
}
.controller-projects.action-index #main #content #projects-index .list-buttons {
  margin: 0;
  padding: 0 15px 0 10px;
  list-style: none;
  white-space: nowrap;
  position: relative;
  display: flex;
  align-items: center;
}
.controller-projects.action-index #main #content #projects-index .list-buttons:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  margin: -10px 0 0;
  left: 0;
  height: 20px;
  width: 1px;
  border-left: 1px solid var(--border-color);
}
.controller-projects.action-index #main #content #projects-index .list-buttons li {
  display: inline-block;
  margin: 0 0 0 5px;
}
.controller-projects.action-index #main #content #projects-index .list-buttons li:first-child {
  margin: 0;
}
.controller-projects.action-index .list.projects.odd-even {
  margin: 0 0 10px;
}
.controller-projects.action-index .list.projects.odd-even .icon {
  min-height: var(--icon-width-small) !important;
  line-height: var(--icon-width-small) !important;
}
.controller-projects.action-index .list.projects.odd-even .icon.my-project {
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  padding: 0 !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: var(--color-main-color) !important;
}
.controller-projects.action-index .list.projects.odd-even .icon.my-project:after,
.controller-projects.action-index .list.projects.odd-even .icon.my-project:before {
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  color: var(--color-main-color) !important;
}
.controller-projects.action-index p .icon.my-project {
  min-height: var(--icon-width-small) !important;
  line-height: var(--icon-width-small) !important;
}
.controller-projects.action-index p .icon.my-project:after,
.controller-projects.action-index p .icon.my-project:before {
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  color: var(--icon-star) !important;
  left: 10px;
}
.controller-projects.action-index #main #content .pagination ~ p[style="text-align:right;"] {
  margin: 0 0 40px;
}
#projects-index + p .my-project {
  padding: 8px 0 8px 50px;
  margin: 0;
  overflow: hidden;
  position: relative;
  background-position: 10px 0px;
  background-size: 20px 20px;
  z-index: 2;
  background-repeat: no-repeat;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#projects-index + p .my-project:after {
  position: absolute;
  display: block;
  clear: both;
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  top: 50%;
  left: 15px;
  margin: -10px 0 0;
  overflow: hidden;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  z-index: 1;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  color: var(--icon-star);
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  #projects-index + p .my-project {
    padding: 8px 0 8px 40px;
  }
  #projects-index + p .my-project:after {
    left: 10px;
  }
  .controller-projects.action-index form[action="/projects"] label[for="closed"] {
    position: absolute;
    top: 100%;
    right: 0;
    box-sizing: border-box;
    margin: 20px 0 0 0;
    padding: 0 0 0 20px;
    white-space: nowrap;
  }
  .controller-projects.action-index #content #query_form {
    padding: 0;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  .controller-projects.action-index #content #query_form .holder-filters {
    padding: 0;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  .controller-projects.action-index #content #query_form .holder-filters .in-filter {
    padding: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -webkit-box-shadow: var(--box-shadow-null);
    -moz-box-shadow: var(--box-shadow-null);
    box-shadow: var(--box-shadow-null);
  }
  .controller-projects.action-index #main #content {
    padding: 0 10px;
  }
  .controller-projects.action-index #main #content > h2 {
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 20px;
    width: calc(100% + 20px);
  }
  .controller-projects.action-index #main #content p.other-formats {
    position: static;
    width: 100%;
  }
  .controller-projects.action-index #main #content p[style="text-align:right;"] {
    margin: 20px 0;
  }
  .controller-projects.action-index #main #content .project:after {
    color: var(--icon-color-bg);
  }
  .controller-projects.action-index #main #content #projects-index {
    padding-top: 20px;
  }
  .controller-projects.action-index #main #content #projects-index > ul.projects li.root {
    background: var(--bg-box);
  }
  .controller-projects.action-index #main #content #projects-index > ul.projects .project {
    padding: 15px 20px 15px 40px;
    font-size: 1rem;
    line-height: 1.4;
  }
  .controller-projects.action-index #main #content #projects-index > ul.projects .project:after {
    width: var(--icon-width-small);
    height: var(--icon-width-small);
    font-size: var(--icon-font-size-small);
    line-height: var(--icon-width-small);
    margin: -10px 0 0;
  }
  .controller-projects.action-index #main #content #projects-index > ul.projects ul.projects {
    margin: 0 0 0 40px;
  }
  .controller-projects.action-index #main #content #projects-index > ul.projects ul.projects a.project {
    padding: 15px 30px 15px 30px;
  }
  .controller-projects.action-index #main #content #projects-index > ul.projects ul.projects a.project:after {
    left: 0;
  }
  .controller-projects.action-index #main #content #projects-index > ul.projects ul.projects ul.projects {
    margin: 0 0 0 30px;
  }
  .controller-projects.action-index #main #content #projects-index .list-buttons {
    padding: 0 10px 0 10px;
  }
  .controller-projects.action-index #main #content #projects-index .open-wiki,
  .controller-projects.action-index #main #content #projects-index .open-projects {
    color: var(--icon-color-bg);
  }
  .controller-projects.action-index #main #content p[style="text-align:right;"] .icon-fav {
    padding-left: 30px;
  }
  .controller-projects.action-index #main #content p[style="text-align:right;"] .icon-fav:after {
    left: 10px;
  }
  .controller-projects.action-index #main #content .pagination ~ p[style="text-align:right;"] {
    margin: 10px 0;
  }
}
@media screen and (max-width: 650px) {
  .controller-projects.action-index #query_form_with_buttons .buttons,
  .controller-projects.action-index #query_form_content .buttons,
  .controller-projects.action-index #eq-filter-controls .buttons {
    padding-left: 10px;
    padding-right: 10px;
  }
  #projects-index + p .my-project {
    padding: 8px 0 8px 30px;
  }
  #projects-index + p .my-project:after {
    left: 0;
  }
  .controller-projects.action-index #main #content #query_form .holder-filters {
    width: calc(100% + 20px);
  }
  .controller-projects.action-index #main #content #query_form fieldset.filter-box {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
  }
  .controller-projects.action-index #main #content #projects-index {
    padding-top: 0;
  }
  .controller-projects.action-index #main #content #projects-index > ul.projects {
    margin: 0 0 10px;
  }
  .controller-projects.action-index #main #content #projects-index > ul.projects li.root {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -webkit-box-shadow: var(--box-shadow-null) !important;
    -moz-box-shadow: var(--box-shadow-null) !important;
    box-shadow: var(--box-shadow-null) !important;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    margin-bottom: 10px;
  }
  .controller-projects.action-index #main #content p[style="text-align:right;"] {
    margin: 0 0 10px;
  }
  .controller-projects.action-index #main #content p[style="text-align:right;"] .icon-fav {
    padding-left: 30px;
  }
  .controller-projects.action-index #main #content p[style="text-align:right;"] .icon-fav:after {
    left: 0;
  }
}
/* END PROJECTS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START VARS FOR SIDEBAR */
/* END VARS FOR SIDEBAR */
/* START SIDEBAR */
#main #sidebar .contextual a {
  height: var(--icon-smaller-width) !important;
  width: var(--icon-smaller-width) !important;
}
#main #sidebar .contextual a:after {
  font-size: var(--icon-smaller-font-size) !important;
  line-height: var(--icon-smaller-width) !important;
}
#main #sidebar #toggle-completed-versions {
  position: relative;
  background: none !important;
  padding: 0 36px 0 0;
  min-height: var(--icon-smaller-width);
  display: flex !important;
  flex: 1;
  width: 100% !important;
  align-items: center;
  color: var(--icon-color);
  text-decoration: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-weight: bold;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  font-size: 1rem;
  line-height: 1.4;
}
#main #sidebar #toggle-completed-versions:after {
  content: "\E155";
  position: absolute;
  top: 50%;
  left: auto;
  right: 0;
  display: block;
  clear: both;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: -13px 0 0;
  overflow: hidden;
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: 1;
  color: var(--icon-color);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#main #sidebar #toggle-completed-versions:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  left: auto;
  right: 0px;
  height: 26px;
  width: 26px;
  margin: -13px 0 0;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main #sidebar #toggle-completed-versions:hover {
  color: var(--icon_color_active);
}
#main #sidebar #toggle-completed-versions:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main #sidebar #toggle-completed-versions.icon-collapsed:after,
#main #sidebar #toggle-completed-versions.collapsed:after {
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
}
#sidebar {
  width: 0;
}
#sidebar .question-meta .icon {
  border: none;
  background: none;
  padding: 0 0 0 30px;
  display: inline-block;
  min-height: 26px;
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  color: var(--main_text_color);
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  vertical-align: middle;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#sidebar .question-meta .icon:after {
  color: var(--icon-color);
  text-align: center;
  position: absolute;
  top: 50%;
  left: 0px;
  display: block;
  clear: both;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: -13px 0 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#sidebar .question-meta .icon.icon-vote:after {
  content: "\E19E";
}
#sidebar .question-meta .icon.icon-view:after {
  content: "\E11D";
}
#sidebar .icon-email {
  padding: 0 0 0 25px;
  min-height: 20px;
  line-height: 20px;
}
#sidebar .icon-email:after {
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  height: var(--icon-width-small);
  width: var(--icon-width-small);
}
#sidebar span.icon-email {
  display: inline;
  color: var(--icon-color);
}
#sidebar:after {
  content: '';
  display: block;
  clear: both;
}
#sidebar a.selected {
  padding: 5px 10px;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  box-sizing: border-box;
  background: var(--icon_bg_active);
  border: none;
  color: var(--icon_color_active);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: 600;
}
#sidebar a.selected:hover {
  background: var(--icon_bg_hover);
  color: var(--icon-color-hover);
}
#sidebar .button-small {
  padding: 5px 10px;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: 600;
}
#sidebar .button-small:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#sidebar .assignable-user {
  display: block;
  margin: 5px 0 0;
}
#sidebar .assignable-user:first-child {
  margin: 0;
}
#sidebar .project-members {
  margin: 0 0 10px;
}
#sidebar span.tag_list {
  display: block;
  overflow: hidden;
}
#sidebar table.note_data td.avatar {
  padding-top: 0;
}
#sidebar .in > a {
  margin: 2px !important;
}
#sidebar div {
  position: relative;
}
#sidebar #attributes .attributes {
  display: block;
}
#sidebar #attributes .attributes tbody {
  display: block;
}
#sidebar #attributes .attributes tr {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  padding: 0 0 10px;
}
#sidebar #attributes .attributes td,
#sidebar #attributes .attributes th {
  display: block;
  padding: 0 10px 0 0;
}
#sidebar #attributes .attributes a {
  margin: 0;
}
#wrapper #sidebar table.note_data td.name h4 {
  margin: 0 0 3px!important;
  padding-right: 30px;
  font-size: 0.85714286rem;
  line-height: 1.4;
  position: relative;
}
#wrapper #sidebar table.note_data td.name h4 a {
  font-size: 1rem;
  line-height: 1.4;
}
#wrapper #sidebar table.note_data td.name h4 a.wiki-anchor {
  position: absolute;
  top: 0;
  right: 0;
}
#main #sidebar a.icon,
#main #sidebar a.icon-only {
  color: var(--icon-color);
  opacity: 1;
}
#main #sidebar a.icon:after,
#main #sidebar a.icon-only:after {
  color: var(--icon-color);
}
#main #sidebar a.icon:before,
#main #sidebar a.icon-only:before {
  background: var(--icon_bg);
}
#main #sidebar a.icon:hover,
#main #sidebar a.icon-only:hover {
  color: var(--icon-color-hover);
}
#main #sidebar a.icon:hover:after,
#main #sidebar a.icon-only:hover:after {
  color: var(--icon-color-hover);
}
#main #sidebar a.icon:hover:before,
#main #sidebar a.icon-only:hover:before {
  background: var(--icon_bg_hover);
}
#main #sidebar .attachments table {
  padding: 0;
}
#main #sidebar .attachments table td {
  display: none;
}
#main #sidebar .attachments table td:first-child {
  display: block;
  width: 100%;
  position: relative;
  padding: 2px 35px 2px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#main #sidebar .attachments table .icon-download {
  position: absolute;
  top: 50%;
  right: 0;
  margin: -13px 0 0;
}
#main #sidebar .attachments .size {
  font-size: 0.85714286rem;
  margin: 0 0 0 5px;
}
#main #sidebar .attachments .icon-attachment {
  color: var(--icon-color);
  min-height: auto;
  line-height: var(--icon-smaller-width);
  margin: 0;
  padding: 0;
}
.has-sidebar #sidebar .select2 ~ h3 {
  margin: 15px 0 !important;
}
.has-sidebar #wrapper {
  padding-left: 37px;
}
.has-sidebar #wrapper #sidebar {
  border: 0;
  position: fixed;
  top: 0 !important;
  left: -223px;
  width: 260px;
  height: 100%;
  padding: 40px 0 20px 20px !important;
  color: var(--text-color-main);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: left var(--time-main) ease-in-out;
  -moz-transition: left var(--time-main) ease-in-out;
  -ms-transition: left var(--time-main) ease-in-out;
  -o-transition: left var(--time-main) ease-in-out;
  transition: left var(--time-main) ease-in-out;
  z-index: 12;
  background: var(--bg);
  border-right: 1px solid var(--border-color);
}
.has-sidebar #wrapper #sidebar:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  right: -1px;
  width: 36px;
  height: 100%;
  background: var(--bg);
  border-right: 1px solid var(--border-color);
  -webkit-transition: width var(--time-main) ease-in-out;
  -moz-transition: width var(--time-main) ease-in-out;
  -ms-transition: width var(--time-main) ease-in-out;
  -o-transition: width var(--time-main) ease-in-out;
  transition: width var(--time-main) ease-in-out;
  z-index: 10;
}
.has-sidebar #wrapper #sidebar .holder-sidebar {
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow: auto;
}
.has-sidebar #wrapper #sidebar .holder-sidebar .in {
  margin: 0 10px 0 0;
  position: relative;
}
.has-sidebar #wrapper #sidebar > * {
  position: relative;
  overflow: hidden;
}
.has-sidebar #wrapper #sidebar ul {
  margin: 0 0 10px;
}
.has-sidebar #wrapper #sidebar ul li {
  margin: 0 0 5px;
}
.has-sidebar #wrapper #sidebar > span {
  display: block;
}
.has-sidebar #wrapper #sidebar h3 {
  font-size: 1.1428rem;
  line-heightp: 1.1428rem;
  color: var(--text-color-main);
  margin: 15px 0;
  padding: 0;
}
.has-sidebar #wrapper #sidebar h3:first-child {
  border: none;
}
.has-sidebar #wrapper #sidebar > h3:nth-of-type(1) {
  margin: 0 0 10px;
  border: none;
}
.has-sidebar #wrapper #sidebar a {
  display: inline-block;
  margin: 2px 0;
}
.has-sidebar #wrapper #sidebar .contextual {
  position: absolute;
  top: -4px;
  right: 0;
  margin: 0;
  padding: 0;
}
.has-sidebar #wrapper #sidebar .contextual a {
  margin: 0;
  display: block;
  padding: 0;
  color: var(--icon-color);
}
.has-sidebar #wrapper #sidebar .contextual a:before {
  background: var(--icon_bg);
}
.has-sidebar #wrapper #sidebar .contextual a:hover {
  color: var(--icon-color-hover);
}
.has-sidebar #wrapper #sidebar .contextual a:hover:before {
  background: var(--icon_bg_hover);
}
.has-sidebar #wrapper #sidebar ul.watchers {
  margin: 0 0 10px;
}
.has-sidebar #wrapper #sidebar ul.watchers li {
  display: flex;
  align-items: center;
  margin: 5px 0 0;
  padding: 0 40px 0 26px;
  position: relative;
  min-height: 30px;
}
.has-sidebar #wrapper #sidebar ul.watchers li a {
  margin: 0;
}
.has-sidebar #wrapper #sidebar ul.watchers li:first-child {
  margin: 0;
}
.has-sidebar #wrapper #sidebar ul.watchers li > * {
  margin: 0 5px 0 0;
}
.has-sidebar #wrapper #sidebar ul.watchers img {
  position: absolute;
  top: 50%;
  left: 0;
  margin: -8px 0 0;
}
.has-sidebar #wrapper #sidebar ul.watchers a.delete {
  opacity: 1;
  flex: 1 0 auto;
  position: absolute;
  top: 50%;
  margin: -15px 0 0;
  right: 0;
}
.has-sidebar #wrapper #sidebar .tag_list:empty {
  display: none;
}
.has-sidebar #wrapper #main .open-sidebar-link {
  position: fixed;
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  left: 23px;
  z-index: 13;
  top: 6px;
  background-color: var(--sidebar-open-button-bg);
  color: var(--sidebar-open-button-color);
  margin: 0;
  border: 1px solid var(--sidebar-open-button-border);
  -webkit-border-radius: var(--icon-width);
  -moz-border-radius: var(--icon-width);
  border-radius: var(--icon-width);
  -webkit-transition: left var(--time-main) ease-in-out, border-color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, width var(--time-hover) ease-in-out, margin var(--time-hover) ease-in-out;
  -moz-transition: left var(--time-main) ease-in-out, border-color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, width var(--time-hover) ease-in-out, margin var(--time-hover) ease-in-out;
  -ms-transition: left var(--time-main) ease-in-out, border-color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, width var(--time-hover) ease-in-out, margin var(--time-hover) ease-in-out;
  -o-transition: left var(--time-main) ease-in-out, border-color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, width var(--time-hover) ease-in-out, margin var(--time-hover) ease-in-out;
  transition: left var(--time-main) ease-in-out, border-color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, width var(--time-hover) ease-in-out, margin var(--time-hover) ease-in-out;
}
.has-sidebar #wrapper #main .open-sidebar-link:after {
  text-align: center;
  position: absolute;
  top: 0;
  right: 1px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 16px;
  line-height: var(--icon-smaller-width);
}
.has-sidebar #wrapper #main .open-sidebar-link:hover {
  color: var(--sidebar-open-button-color-hover);
  background-color: var(--sidebar-open-button-bg-hover);
  border-color: var(--sidebar-open-button-border-hover);
  width: 40px;
}
.has-sidebar #top-menu {
  width: calc(100% - 37px);
}
.has-sidebar.open-sidebar #top-menu {
  right: -223px;
  padding-right: 254px;
}
.has-sidebar.open-sidebar #wrapper #sidebar {
  left: 0;
  height: 100%;
}
.has-sidebar.open-sidebar #wrapper #sidebar:after {
  width: 0;
}
.has-sidebar.open-sidebar #wrapper #header {
  margin: 0 0 0 223px;
}
.has-sidebar.open-sidebar #wrapper #main {
  margin-left: 223px;
}
.has-sidebar.open-sidebar #wrapper #main .open-sidebar-link {
  left: 242px;
  margin: 0;
}
.has-sidebar.open-sidebar #wrapper #main .open-sidebar-link:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
.has-sidebar.open-sidebar #wrapper #footer {
  padding-left: 223px;
}
.has-sidebar.has-main-menu #wrapper {
  padding-left: 96px;
}
.has-sidebar.has-main-menu #wrapper #sidebar {
  left: -164px;
}
.has-sidebar.has-main-menu #wrapper #main .open-sidebar-link {
  left: 82px;
}
.has-sidebar.has-main-menu #top-menu {
  width: calc(100% - 96px);
}
.has-sidebar.has-main-menu.open-sidebar #top-menu {
  right: -224px;
  padding-right: 254px;
}
.has-sidebar.has-main-menu.open-sidebar #wrapper #sidebar {
  left: 60px;
  height: 100%;
}
.has-sidebar.has-main-menu.open-sidebar #wrapper #sidebar:after {
  width: 0;
}
.has-sidebar.has-main-menu.open-sidebar #wrapper #header {
  margin: 0 0 0 224px;
}
.has-sidebar.has-main-menu.open-sidebar #wrapper #main {
  margin-left: 224px;
}
.has-sidebar.has-main-menu.open-sidebar #wrapper #main .open-sidebar-link {
  left: 306px;
  margin: 0;
}
.has-sidebar.has-main-menu.open-sidebar #wrapper #main .open-sidebar-link:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
.has-sidebar.has-main-menu.open-sidebar #wrapper #footer {
  padding-left: 224px;
}
@media screen and (max-width: 1024px) {
  #wrapper #sidebar {
    top: -99999px !important;
    left: -9999px !important;
    position: absolute;
  }
}
/* START SIDEBAR SCROLL */
#sidebar .jcf-scrollbar-vertical {
  background: var(--scroll-bg);
}
#sidebar .jcf-scrollbar-vertical .jcf-scrollbar-handle {
  background: var(--scroll-handle);
  width: 3px;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
/* END SIDEBAR SCROLL */
#sidebar ul.dashboards li.global {
  display: flex;
  align-items: center;
}
body span.dashboard-system-default.global {
  color: var(--color-error);
}
.flyout-menu span.dashboard-system-default.global {
  display: none;
}
/* END SIDEBAR */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START TOP MENU */
body #top-menu {
  position: fixed;
  left: auto;
  right: 0;
  top: 0;
  padding: 5px 30px 5px 30px;
  height: auto;
  background: var(--bg);
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 13;
  border-bottom: 1px solid var(--border-color);
  -webkit-transition: right var(--time-main) ease-in-out, padding-right var(--time-main) ease-in-out;
  -moz-transition: right var(--time-main) ease-in-out, padding-right var(--time-main) ease-in-out;
  -ms-transition: right var(--time-main) ease-in-out, padding-right var(--time-main) ease-in-out;
  -o-transition: right var(--time-main) ease-in-out, padding-right var(--time-main) ease-in-out;
  transition: right var(--time-main) ease-in-out, padding-right var(--time-main) ease-in-out;
}
body #top-menu a.top-submenu {
  padding-bottom: 0;
}
body #top-menu .dropdown-menu > li > a,
body #top-menu .dropdown-menu > li a {
  background: none;
  position: relative;
  font-size: 0.85714286rem;
  line-height: 1.4;
  color: var(--link-color);
  padding: 4px 5px 4px 30px;
}
body #top-menu .dropdown-menu > li > a:after,
body #top-menu .dropdown-menu > li a:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  width: 0;
  height: 100%;
  background: var(--link-bg);
  z-index: -1;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-transition: width var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out;
  margin: 0 !important;
}
body #top-menu .dropdown-menu > li a:hover,
body #top-menu .dropdown-menu > li a:focus,
body #top-menu .dropdown-submenu:hover a,
body #top-menu .dropdown-submenu:focus a {
  background: none;
  color: var(--link-color-hover) !important;
}
body #top-menu .dropdown-menu > li a:hover:after,
body #top-menu .dropdown-menu > li a:focus:after,
body #top-menu .dropdown-submenu:hover a:after,
body #top-menu .dropdown-submenu:focus a:after {
  background: var(--link-bg-hover);
  width: 100%;
}
body #top-menu #loggedas {
  font-size: 0;
  line-height: 0;
}
body #top-menu ul:after {
  content: '';
  display: block;
  clear: both;
}
body #top-menu ul li {
  float: left;
  position: relative;
  z-index: 1;
  margin: 0 3px 0 0;
}
body #top-menu ul li:first-child {
  position: absolute;
  top: -9999999px;
  left: -9999999px;
}
body #top-menu #account li {
  margin: 0 0 0 3px;
}
body #top-menu > ul > li > a:after {
  content: "\E19F";
}
body #top-menu > ul > li > a.all-issues-top:after {
  content: "\E191";
}
body #top-menu > ul > li > a,
body #top-menu #account a:not(#time-logger-menu),
body #top-menu #loggedas a,
body #top-menu .holder-search-link a,
body #top-menu .revo-user-menu > .icon-user {
  cursor: pointer !important;
  padding: 0;
  float: right;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body #top-menu > ul > li > a:after,
body #top-menu #account a:not(#time-logger-menu):after,
body #top-menu #loggedas a:after,
body #top-menu .holder-search-link a:after,
body #top-menu .revo-user-menu > .icon-user:after {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-width);
  line-height: 1;
}
body #top-menu > ul > li > a:before,
body #top-menu #account a:not(#time-logger-menu):before,
body #top-menu #loggedas a:before,
body #top-menu .holder-search-link a:before,
body #top-menu .revo-user-menu > .icon-user:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  height: 30px;
  width: 30px;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
body #top-menu > ul > li > a:hover,
body #top-menu #account a:not(#time-logger-menu):hover,
body #top-menu #loggedas a:hover,
body #top-menu .holder-search-link a:hover,
body #top-menu .revo-user-menu > .icon-user:hover {
  color: var(--icon-color-hover);
}
body #top-menu > ul > li > a:hover:before,
body #top-menu #account a:not(#time-logger-menu):hover:before,
body #top-menu #loggedas a:hover:before,
body #top-menu .holder-search-link a:hover:before,
body #top-menu .revo-user-menu > .icon-user:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
body #top-menu > ul > li > a.selected,
body #top-menu #account a:not(#time-logger-menu).selected,
body #top-menu #loggedas a.selected,
body #top-menu .holder-search-link a.selected,
body #top-menu .revo-user-menu > .icon-user.selected {
  color: var(--icon_color_active);
}
body #top-menu > ul > li > a.selected:before,
body #top-menu #account a:not(#time-logger-menu).selected:before,
body #top-menu #loggedas a.selected:before,
body #top-menu .holder-search-link a.selected:before,
body #top-menu .revo-user-menu > .icon-user.selected:before {
  background: var(--icon_bg_active);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
body #top-menu .menu-children {
  top: 100%;
  padding: 2px;
  -webkit-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  -moz-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  font-size: 0.85714286rem;
  line-height: 1.4;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  border: 1px solid var(--border-color) !important;
}
body #top-menu .menu-children li a {
  background-color: var(--link-bg) !important;
  display: block;
  position: relative;
  font-size: 0.85714286rem;
  line-height: 1.4;
  height: auto;
  min-height: auto;
  width: 100%;
  color: var(--link-color);
  padding: 4px 5px;
  background-image: none !important;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  z-index: 2;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body #top-menu .menu-children li a:after {
  position: absolute;
  top: 50%;
  margin: -10px 0 0;
  left: 5px;
  display: block;
  clear: both;
  height: var(--icon-width-small);
  width: var(--icon-width-small);
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  color: var(--icon-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body #top-menu .menu-children li a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  width: 0;
  height: 100%;
  background: var(--link-bg);
  z-index: -1;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-transition: width var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out;
  margin: 0 !important;
}
body #top-menu .menu-children li a:hover {
  text-decoration: none;
  color: var(--icon-color-hover);
  border: 0;
}
body #top-menu .menu-children li a:hover:after {
  color: var(--icon-color-hover);
}
body #top-menu .menu-children li a:hover:before {
  background: var(--icon_bg_hover);
  width: 100%;
}
body #top-menu .menu-children hr {
  margin: 0;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  body #top-menu {
    padding: 0;
    width: auto;
    background: none;
    border: 0;
  }
  body #top-menu .revo-user-menu {
    display: none;
  }
  body #top-menu,
  body #header #main-menu {
    display: block;
    position: fixed;
    top: 10px;
    right: 40px;
    z-index: 101;
  }
  body #top-menu {
    padding: 0;
    border: 0;
  }
  body #top-menu #loggedas {
    display: none;
  }
}
@media screen and (max-width: 650px) {
  body #top-menu,
  body.has-main-menu #top-menu,
  .has-sidebar.has-main-menu #top-menu,
  .has-sidebar #top-menu {
    width: 64px;
    right: 40px;
    background: var(--bg-fff);
  }
}
/* START USER LIST */
#top-menu #account,
#top-menu #loggedas {
  position: absolute;
  top: -99999999px;
  left: -99999999px;
}
#top-menu .open-box {
  display: none;
}
#top-menu .revo-user-menu {
  float: right;
  padding: 0 0 0 40px;
  position: relative;
}
#top-menu .revo-user-menu.open .drdn-content {
  display: block;
}
#top-menu .revo-user-menu .drdn-content {
  top: 100%;
  border-color: var(--border-color);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
#top-menu .revo-user-menu .drdn-content .drdn-items {
  min-width: 10px;
  display: block;
  padding: 2px;
}
#top-menu .revo-user-menu .drdn-content .drdn-items a {
  background-image: none;
  background-color: var(--bg-fff);
  display: block;
  position: relative;
  font-size: 0.85714286rem;
  line-height: 1.4;
  height: auto !important;
  min-height: auto;
  margin: 0;
  width: 100% !important;
  color: var(--drop-text-color);
  padding: 4px 5px 4px 30px;
  background-image: none !important;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  z-index: 2;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  border: 0 !important;
  font-weight: normal;
}
#top-menu .revo-user-menu .drdn-content .drdn-items a:after {
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  top: 0;
  left: 5px;
  margin: 0;
  color: var(--drop-icon-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  width: var(--icon-width-small);
  height: 100%;
  font-size: var(--icon-font-size-small) !important;
  line-height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
#top-menu .revo-user-menu .drdn-content .drdn-items a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  width: 0;
  height: 100%;
  background: var(--drop-bg-hover);
  z-index: -1;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-transition: width var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out;
  margin: 0 !important;
}
#top-menu .revo-user-menu .drdn-content .drdn-items a:hover {
  text-decoration: none;
  color: var(--icon-color-hover-bg);
  border: 0;
}
#top-menu .revo-user-menu .drdn-content .drdn-items a:hover:after {
  color: var(--icon-color-hover-bg);
}
#top-menu .revo-user-menu .drdn-content .drdn-items a:hover:before {
  width: 100%;
}
/* END USER LIST */
/* END TOP MENU */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START UI WIDGET */
/* --------------------- https://redmine-evolution.com/ -- */
/* START POPUP */
.ui-widget {
  font-family: sans-serif;
}
.ui-widget-overlay {
  background: var(--popup-overlay);
}
div.ui-dialog,
div.modal,
div.ui-dialog.modal {
  background: var(--color-fff);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--main-box-shadow);
  -moz-box-shadow: var(--main-box-shadow);
  box-shadow: var(--main-box-shadow);
  border: 0;
  padding: 0;
  margin: 0;
  max-height: 100vh;
  overflow: auto;
  max-width: 650px;
  /* --------------------- https://redmine-evolution.com/ -- */
  /* START BIG MODAL */
  /* START PRODUCTS MODAL */
  /* --------------------- https://redmine-evolution.com/ -- */
  /* END PRODUCTS MODAL */
  /* END BIG MODAL */
  /* START HELP MODAL */
  /* END HELP MODAL */
}
div.ui-dialog input[type="date"],
div.modal input[type="date"],
div.ui-dialog.modal input[type="date"] {
  background-image: url(../images/icon/calendar.svg);
  background-position: 100% 50%;
  background-repeat: no-repeat;
  background-size: var(--icon-smaller-width) var(--icon-smaller-width);
  padding-right: 30px;
}
div.ui-dialog input[type="date"]::-webkit-calendar-picker-indicator,
div.modal input[type="date"]::-webkit-calendar-picker-indicator,
div.ui-dialog.modal input[type="date"]::-webkit-calendar-picker-indicator {
  color: rgba(0, 0, 0, 0);
  opacity: 1;
  font-size: 0px;
  line-height: 0px;
}
div.ui-dialog #trackers_description,
div.modal #trackers_description,
div.ui-dialog.modal #trackers_description {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  background: var(--bg-box);
}
div.ui-dialog #trackers_description dl,
div.modal #trackers_description dl,
div.ui-dialog.modal #trackers_description dl {
  margin: 0;
}
div.ui-dialog #trackers_description dl dd,
div.modal #trackers_description dl dd,
div.ui-dialog.modal #trackers_description dl dd {
  padding-bottom: 10px;
  border-bottom: 1px solid var(--color-grey);
  margin-bottom: 10px;
}
div.ui-dialog #trackers_description dl dd:last-child,
div.modal #trackers_description dl dd:last-child,
div.ui-dialog.modal #trackers_description dl dd:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: 0;
}
div.ui-dialog .modal,
div.modal .modal,
div.ui-dialog.modal .modal {
  -webkit-box-shadow: var(--box-shadow-null);
  -moz-box-shadow: var(--box-shadow-null);
  box-shadow: var(--box-shadow-null);
}
div.ui-dialog #users,
div.modal #users,
div.ui-dialog.modal #users {
  padding: 15px 0 0;
}
div.ui-dialog .box p,
div.modal .box p,
div.ui-dialog.modal .box p {
  padding: 0;
  display: block !important;
}
div.ui-dialog .box p label,
div.modal .box p label,
div.ui-dialog.modal .box p label {
  width: 100%;
  display: block;
  margin: 0 0 5px;
}
div.ui-dialog .box p .select2-container--default,
div.modal .box p .select2-container--default,
div.ui-dialog.modal .box p .select2-container--default {
  width: 100% !important;
}
div.ui-dialog p,
div.modal p,
div.ui-dialog.modal p {
  margin: 0 0 10px;
}
div.ui-dialog label[for="user_search"],
div.modal label[for="user_search"],
div.ui-dialog.modal label[for="user_search"] {
  font-weight: 600;
  color: var(--color-dark);
  display: block;
  margin: 0 0 10px;
  font-size: 1rem;
  line-height: 1.4;
}
div.ui-dialog .ui-dialog-titlebar,
div.modal .ui-dialog-titlebar,
div.ui-dialog.modal .ui-dialog-titlebar {
  background: none;
  color: var(--color-main-color);
  text-align: center;
  border: none;
  font-weight: bold;
  font-size: 1.1428rem;
  padding: 20px 50px 20px 50px;
  position: relative;
  margin: 0;
}
div.ui-dialog #users_for_watcher,
div.modal #users_for_watcher,
div.ui-dialog.modal #users_for_watcher {
  height: auto;
  overflow: hidden;
}
div.ui-dialog input#principal_search,
div.modal input#principal_search,
div.ui-dialog.modal input#principal_search,
div.ui-dialog input#user_search,
div.modal input#user_search,
div.ui-dialog.modal input#user_search {
  width: 100%;
  margin: 0;
}
div.ui-dialog .ui-dialog-content,
div.modal .ui-dialog-content,
div.ui-dialog.modal .ui-dialog-content {
  position: relative;
  padding: 20px;
}
div.ui-dialog .ui-dialog-content:after,
div.modal .ui-dialog-content:after,
div.ui-dialog.modal .ui-dialog-content:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--bg-box);
  z-index: -1;
}
div.ui-dialog.ui-dialog-buttons .ui-dialog-content:after,
div.modal.ui-dialog-buttons .ui-dialog-content:after,
div.ui-dialog.modal.ui-dialog-buttons .ui-dialog-content:after {
  height: 100%;
}
div.ui-dialog .ui-dialog-buttonpane,
div.modal .ui-dialog-buttonpane,
div.ui-dialog.modal .ui-dialog-buttonpane {
  margin: 0;
  border: 0;
  background: var(--bg-fff);
  padding: 20px;
}
div.ui-dialog .ui-dialog-buttonpane .ui-button,
div.modal .ui-dialog-buttonpane .ui-button,
div.ui-dialog.modal .ui-dialog-buttonpane .ui-button {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 20px 0 0;
  outline: none;
  height: auto;
  -webkit-appearance: none;
}
div.ui-dialog .ui-dialog-buttonpane .ui-button:hover,
div.modal .ui-dialog-buttonpane .ui-button:hover,
div.ui-dialog.modal .ui-dialog-buttonpane .ui-button:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
div.ui-dialog .ui-dialog-buttonpane .ui-button .ui-button-text,
div.modal .ui-dialog-buttonpane .ui-button .ui-button-text,
div.ui-dialog.modal .ui-dialog-buttonpane .ui-button .ui-button-text {
  padding: 0;
}
div.ui-dialog .buttons,
div.modal .buttons,
div.ui-dialog.modal .buttons {
  padding: 20px;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 -20px -20px;
  background: var(--bg-fff);
  -webkit-border-radius: 0 0 var(--button-border-radius) var(--button-border-radius);
  -moz-border-radius: 0 0 var(--button-border-radius) var(--button-border-radius);
  border-radius: 0 0 var(--button-border-radius) var(--button-border-radius);
}
div.ui-dialog .buttons input[type="submit"],
div.modal .buttons input[type="submit"],
div.ui-dialog.modal .buttons input[type="submit"] {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 20px 0 0;
  outline: none;
  height: auto;
  -webkit-appearance: none;
}
div.ui-dialog .buttons input[type="submit"]:hover,
div.modal .buttons input[type="submit"]:hover,
div.ui-dialog.modal .buttons input[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
div.ui-dialog .buttons input[type="submit"] + a[onclick],
div.modal .buttons input[type="submit"] + a[onclick],
div.ui-dialog.modal .buttons input[type="submit"] + a[onclick],
div.ui-dialog .buttons input[type="submit"] + input[type="button"],
div.modal .buttons input[type="submit"] + input[type="button"],
div.ui-dialog.modal .buttons input[type="submit"] + input[type="button"] {
  border: none;
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  font-weight: var(--button-font-weight);
  color: var(--button-color);
  background: var(--button-bg);
  text-decoration: none;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  outline: none;
  height: auto;
  -webkit-appearance: none;
}
div.ui-dialog .buttons input[type="submit"] + a[onclick]:hover,
div.modal .buttons input[type="submit"] + a[onclick]:hover,
div.ui-dialog.modal .buttons input[type="submit"] + a[onclick]:hover,
div.ui-dialog .buttons input[type="submit"] + input[type="button"]:hover,
div.modal .buttons input[type="submit"] + input[type="button"]:hover,
div.ui-dialog.modal .buttons input[type="submit"] + input[type="button"]:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
div.ui-dialog .buttons .icon.icon-del,
div.modal .buttons .icon.icon-del,
div.ui-dialog.modal .buttons .icon.icon-del {
  border: none;
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  font-weight: 600;
  color: var(--icon-dell-color);
  background: var(--icon-dell-bg);
  text-decoration: none;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -moz-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -ms-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -o-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  outline: none;
  height: auto;
  width: auto;
  -webkit-appearance: none;
  min-height: auto;
  margin: 0 20px 0 0;
}
div.ui-dialog .buttons .icon.icon-del:hover,
div.modal .buttons .icon.icon-del:hover,
div.ui-dialog.modal .buttons .icon.icon-del:hover {
  background: var(--icon-dell-bg-hover);
  color: var(--icon-dell-color-hover);
}
div.ui-dialog .buttons .icon.icon-del:after,
div.modal .buttons .icon.icon-del:after,
div.ui-dialog.modal .buttons .icon.icon-del:after,
div.ui-dialog .buttons .icon.icon-del:before,
div.modal .buttons .icon.icon-del:before,
div.ui-dialog.modal .buttons .icon.icon-del:before {
  display: none;
}
div.ui-dialog #users_for_watcher,
div.modal #users_for_watcher,
div.ui-dialog.modal #users_for_watcher {
  margin: 0 0 20px;
}
div.ui-dialog #users_for_watcher label,
div.modal #users_for_watcher label,
div.ui-dialog.modal #users_for_watcher label {
  display: block;
  margin: 10px 0 0;
  cursor: default;
}
div.ui-dialog #users_for_watcher label:first-child,
div.modal #users_for_watcher label:first-child,
div.ui-dialog.modal #users_for_watcher label:first-child {
  margin: 0;
}
div.ui-dialog #users_for_watcher .icon-user,
div.modal #users_for_watcher .icon-user,
div.ui-dialog.modal #users_for_watcher .icon-user {
  width: auto;
  height: auto;
  min-height: auto;
  padding: 0;
}
div.ui-dialog #users_for_watcher .icon-user:after,
div.modal #users_for_watcher .icon-user:after,
div.ui-dialog.modal #users_for_watcher .icon-user:after {
  display: none;
}
div.ui-dialog .ui-dialog-titlebar-close,
div.modal .ui-dialog-titlebar-close,
div.ui-dialog.modal .ui-dialog-titlebar-close {
  position: absolute;
  top: 15px;
  right: 20px;
  border: none;
  background: none;
  outline: 0 none;
  padding: 0;
  display: inline-block;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  z-index: 2;
  background-size: var(--icon-width) var(--icon-width);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--popup-close-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
div.ui-dialog .ui-dialog-titlebar-close:after,
div.modal .ui-dialog-titlebar-close:after,
div.ui-dialog.modal .ui-dialog-titlebar-close:after {
  text-indent: 0px;
  position: absolute;
  top: 0px;
  left: 0px;
  content: "\E0F3";
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
div.ui-dialog .ui-dialog-titlebar-close:before,
div.modal .ui-dialog-titlebar-close:before,
div.ui-dialog.modal .ui-dialog-titlebar-close:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--popup-close-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
div.ui-dialog .ui-dialog-titlebar-close:hover,
div.modal .ui-dialog-titlebar-close:hover,
div.ui-dialog.modal .ui-dialog-titlebar-close:hover {
  color: var(--popup-close-color-hover);
}
div.ui-dialog .ui-dialog-titlebar-close:hover:before,
div.modal .ui-dialog-titlebar-close:hover:before,
div.ui-dialog.modal .ui-dialog-titlebar-close:hover:before {
  background: var(--popup-close-bg-hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
div.ui-dialog .ui-dialog-titlebar-close.selected,
div.modal .ui-dialog-titlebar-close.selected,
div.ui-dialog.modal .ui-dialog-titlebar-close.selected {
  color: var(--popup-close-color-hover);
}
div.ui-dialog .ui-dialog-titlebar-close.selected:before,
div.modal .ui-dialog-titlebar-close.selected:before,
div.ui-dialog.modal .ui-dialog-titlebar-close.selected:before {
  background: var(--popup-close-bg-hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
div.ui-dialog .ui-dialog-titlebar-close .ui-icon,
div.modal .ui-dialog-titlebar-close .ui-icon,
div.ui-dialog.modal .ui-dialog-titlebar-close .ui-icon {
  display: none;
}
div.ui-dialog .objects-selection,
div.modal .objects-selection,
div.ui-dialog.modal .objects-selection {
  height: auto;
}
div.ui-dialog fieldset.box,
div.modal fieldset.box,
div.ui-dialog.modal fieldset.box {
  padding: 50px 0 35px!important;
}
div.ui-dialog fieldset.box:after,
div.modal fieldset.box:after,
div.ui-dialog.modal fieldset.box:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  bottom: 0;
  left: -20px;
  width: calc(100% + 40px);
  height: 20px;
  background: var(--bg-fff);
}
div.ui-dialog fieldset.box:first-of-type,
div.modal fieldset.box:first-of-type,
div.ui-dialog.modal fieldset.box:first-of-type {
  margin: -20px 0 0 !important;
}
div.ui-dialog fieldset.box:last-of-type,
div.modal fieldset.box:last-of-type,
div.ui-dialog.modal fieldset.box:last-of-type {
  padding: 60px 0 25px!important;
}
div.ui-dialog fieldset.box:last-of-type:after,
div.modal fieldset.box:last-of-type:after,
div.ui-dialog.modal fieldset.box:last-of-type:after {
  display: none;
}
div.ui-dialog fieldset.box legend,
div.modal fieldset.box legend,
div.ui-dialog.modal fieldset.box legend {
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
  position: absolute;
  top: 20px;
  height: 26px;
  left: 0;
  font-weight: 600;
  color: var(--color-dark);
  font-size: 1rem;
  line-height: 26px;
}
div.ui-dialog fieldset.box legend .icon-checked,
div.modal fieldset.box legend .icon-checked,
div.ui-dialog.modal fieldset.box legend .icon-checked {
  float: left;
}
div.ui-dialog label[for*="report_template_search"],
div.modal label[for*="report_template_search"],
div.ui-dialog.modal label[for*="report_template_search"],
div.ui-dialog label[for*="product_search"],
div.modal label[for*="product_search"],
div.ui-dialog.modal label[for*="product_search"],
div.ui-dialog label[for*="invoice-template-search"],
div.modal label[for*="invoice-template-search"],
div.ui-dialog.modal label[for*="invoice-template-search"] {
  font-weight: 600;
  color: var(--color-dark);
  display: block;
  margin: 0 0 10px;
  font-size: 1rem;
  line-height: 1.4;
}
div.ui-dialog #product_search,
div.modal #product_search,
div.ui-dialog.modal #product_search {
  margin: 10px 0 0;
}
div.ui-dialog label[for*="product_search"],
div.modal label[for*="product_search"],
div.ui-dialog.modal label[for*="product_search"] {
  margin: 0;
  display: inline-block;
}
div.ui-dialog #new_page .box p,
div.modal #new_page .box p,
div.ui-dialog.modal #new_page .box p {
  flex-wrap: wrap;
  padding: 0;
  flex-flow: column;
}
div.ui-dialog #new_page .box p label,
div.modal #new_page .box p label,
div.ui-dialog.modal #new_page .box p label {
  margin: 0 0 10px;
  float: none;
  text-align: left;
  width: 100%;
  padding: 0;
}
div.ui-dialog #new_page .box p em,
div.modal #new_page .box p em,
div.ui-dialog.modal #new_page .box p em {
  width: 100%;
  display: block;
  margin: 10px 0 0 !important;
  text-align: left;
}
div.ui-dialog .box,
div.modal .box,
div.ui-dialog.modal .box {
  background: none;
  position: relative;
  border: none;
  padding: 0 0 20px;
  margin: 0;
  font-size: 1rem;
  line-height: 1.4;
}
div.ui-dialog .box label,
div.modal .box label,
div.ui-dialog.modal .box label {
  padding: 0 10px 0 0;
  margin: 0 0 5px;
  display: flex;
  text-align: left;
  align-items: center;
}
div.ui-dialog .box p,
div.modal .box p,
div.ui-dialog.modal .box p {
  margin: 10px 0 0;
  min-height: 0;
  display: flex;
  align-items: center;
}
div.ui-dialog .box p:nth-of-type(1),
div.modal .box p:nth-of-type(1),
div.ui-dialog.modal .box p:nth-of-type(1) {
  margin: 0;
}
div.ui-dialog .box p em,
div.modal .box p em,
div.ui-dialog.modal .box p em {
  display: block;
  margin: 0;
  text-align: right;
  width: 100%;
}
div.ui-dialog .box .icon-checked,
div.modal .box .icon-checked,
div.ui-dialog.modal .box .icon-checked {
  color: var(--color-dark);
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0 5px 0 -4px;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
}
div.ui-dialog .box .icon-checked:after,
div.modal .box .icon-checked:after,
div.ui-dialog.modal .box .icon-checked:after {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  color: var(--icon-color-bg);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
div.ui-dialog .box .icon-checked:before,
div.modal .box .icon-checked:before,
div.ui-dialog.modal .box .icon-checked:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
div.ui-dialog .box .icon-checked:hover:after,
div.modal .box .icon-checked:hover:after,
div.ui-dialog.modal .box .icon-checked:hover:after,
div.ui-dialog .box .icon-checked.selected:after,
div.modal .box .icon-checked.selected:after,
div.ui-dialog.modal .box .icon-checked.selected:after {
  color: var(--icon-color-hover-bg);
}
div.ui-dialog .box .icon-checked:hover:before,
div.modal .box .icon-checked:hover:before,
div.ui-dialog.modal .box .icon-checked:hover:before,
div.ui-dialog .box .icon-checked.selected:before,
div.modal .box .icon-checked.selected:before,
div.ui-dialog.modal .box .icon-checked.selected:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
div.ui-dialog input[type="text"],
div.modal input[type="text"],
div.ui-dialog.modal input[type="text"],
div.ui-dialog input[type="date"],
div.modal input[type="date"],
div.ui-dialog.modal input[type="date"],
div.ui-dialog textarea,
div.modal textarea,
div.ui-dialog.modal textarea {
  height: 30px;
  box-sizing: border-box;
  border: 1px solid var(--border-color-content);
  padding: 6px 12px;
  font-size: 1rem;
  line-height: 1.28571429rem;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  color: var(--color-dark);
  margin: 0;
  min-width: 190px;
  max-width: 100%;
  width: 100%;
  outline: 0 none;
  -webkit-appearance: none;
  background-color: var(--bg-fff);
}
div.ui-dialog input[type="text"]#issue_subject,
div.modal input[type="text"]#issue_subject,
div.ui-dialog.modal input[type="text"]#issue_subject,
div.ui-dialog input[type="date"]#issue_subject,
div.modal input[type="date"]#issue_subject,
div.ui-dialog.modal input[type="date"]#issue_subject,
div.ui-dialog textarea#issue_subject,
div.modal textarea#issue_subject,
div.ui-dialog.modal textarea#issue_subject,
div.ui-dialog input[type="text"]#time_entry_comments,
div.modal input[type="text"]#time_entry_comments,
div.ui-dialog.modal input[type="text"]#time_entry_comments,
div.ui-dialog input[type="date"]#time_entry_comments,
div.modal input[type="date"]#time_entry_comments,
div.ui-dialog.modal input[type="date"]#time_entry_comments,
div.ui-dialog textarea#time_entry_comments,
div.modal textarea#time_entry_comments,
div.ui-dialog.modal textarea#time_entry_comments {
  max-width: 550px;
}
div.ui-dialog textarea:not(.select2-search__field),
div.modal textarea:not(.select2-search__field),
div.ui-dialog.modal textarea:not(.select2-search__field) {
  min-height: 100px;
  height: 100px;
}
div.ui-dialog .objects-selection > div,
div.modal .objects-selection > div,
div.ui-dialog.modal .objects-selection > div,
div.ui-dialog #user_group_ids,
div.modal #user_group_ids,
div.ui-dialog.modal #user_group_ids {
  -webkit-column-rule: 0 solid var(--bg-fff);
  -moz-column-rule: 0 solid var(--bg-fff);
}
div.ui-dialog #principals_for_new_member,
div.modal #principals_for_new_member,
div.ui-dialog.modal #principals_for_new_member {
  padding: 20px 0 0;
}
div.ui-dialog span.pagination,
div.modal span.pagination,
div.ui-dialog.modal span.pagination {
  color: var(--color-dark);
}
div.ui-dialog #report_templates,
div.modal #report_templates,
div.ui-dialog.modal #report_templates {
  height: auto;
  max-height: 200px;
  margin: 0 0 10px;
  min-height: 30px;
}
div.ui-dialog #report_templates label,
div.modal #report_templates label,
div.ui-dialog.modal #report_templates label {
  margin: 0 0 5px;
}
div.ui-dialog .autocomplete,
div.modal .autocomplete,
div.ui-dialog.modal .autocomplete {
  width: 100% !important;
  margin: 10px 0 0;
  background-image: url(../images/icon/search.svg);
  background-repeat: no-repeat;
  background-position: 0 50%;
  background-size: 30px 30px;
  line-height: 18px;
  padding: 8px 8px 8px 38px !important;
}
div.ui-dialog #products_for_issue,
div.modal #products_for_issue,
div.ui-dialog.modal #products_for_issue {
  height: auto;
  max-height: 200px;
  padding: 0 0 10px;
}
div.ui-dialog #products_for_issue .product,
div.modal #products_for_issue .product,
div.ui-dialog.modal #products_for_issue .product {
  display: inline;
}
div.ui-dialog #products_for_issue label,
div.modal #products_for_issue label,
div.ui-dialog.modal #products_for_issue label {
  display: block;
  overflow: hidden;
  margin: 0 0 10px;
}
div.ui-dialog .objects-selection > div,
div.modal .objects-selection > div,
div.ui-dialog.modal .objects-selection > div,
div.ui-dialog #user_group_ids,
div.modal #user_group_ids,
div.ui-dialog.modal #user_group_ids {
  border: none;
  column-count: inherit;
  column-width: inherit;
  -webkit-column-count: inherit;
  -webkit-column-width: inherit;
  -webkit-column-gap: inherit;
  -moz-column-count: inherit;
  -moz-column-width: inherit;
  -moz-column-gap: inherit;
}
div.ui-dialog.help-modal,
div.modal.help-modal,
div.ui-dialog.modal.help-modal {
  width: calc(100% - 20px) !important;
  max-width: 500px;
  overflow: hidden;
}
div.ui-dialog.help-modal .ui-dialog-titlebar,
div.modal.help-modal .ui-dialog-titlebar,
div.ui-dialog.modal.help-modal .ui-dialog-titlebar {
  padding: 20px 50px 20px 20px;
}
div.ui-dialog.help-modal .ui-dialog-title,
div.modal.help-modal .ui-dialog-title,
div.ui-dialog.modal.help-modal .ui-dialog-title {
  overflow: visible;
  text-overflow: inherit;
  white-space: inherit;
  text-align: left;
}
div.ui-dialog.help-modal .ui-dialog-content:after,
div.modal.help-modal .ui-dialog-content:after,
div.ui-dialog.modal.help-modal .ui-dialog-content:after {
  display: none;
}
div.ui-dialog.help-modal .ui-dialog-content,
div.modal.help-modal .ui-dialog-content,
div.ui-dialog.modal.help-modal .ui-dialog-content {
  background: var(--bg-box);
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START ADD EMAILS POPUP */
#new_email_address {
  background: var(--bg-box);
  display: block;
  overflow: hidden;
  padding: 20px;
  margin: -20px;
  -webkit-border-radius: 0 0 var(--border-radius) var(--border-radius);
  -moz-border-radius: 0 0 var(--border-radius) var(--border-radius);
  border-radius: 0 0 var(--border-radius) var(--border-radius);
}
#new_email_address p {
  padding: 0;
  margin: 0 0 10px;
  display: flex;
  align-items: center;
  font-weight: 600;
  color: var(--color-dark);
  font-size: 1rem;
  line-height: 1.4;
}
#new_email_address p:last-child {
  margin: 0;
  flex-flow: column;
}
#new_email_address input[type="submit"] {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 !important;
}
#new_email_address input[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#new_email_address input[type="submit"] + a[onclick],
#new_email_address input[type="submit"] + input[type="button"] {
  border: none;
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  font-weight: var(--button-font-weight);
  color: var(--button-color);
  background: var(--button-bg);
  text-decoration: none;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#new_email_address input[type="submit"] + a[onclick]:hover,
#new_email_address input[type="submit"] + input[type="button"]:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#new_email_address input[type="text"] {
  width: 100%;
  margin: 0 0 20px;
}
/* END ADD EMAILS POPUP */
/* END POPUP */
/* --------------------- https://redmine-evolution.com/ -- */
/* START AUTOCOMPLITE */
body .ui-menu {
  border: 1px solid var(--border-color-content);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
body .ui-menu .ui-menu-item {
  border: 0 !important;
  margin: 0 !important;
  background: none;
  display: block;
  width: 100%;
  color: var(--text-color-main);
}
body .ui-menu .ui-menu-item .ui-menu-item-wrapper {
  max-width: 100%;
  display: block;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 0;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
body .ui-menu .ui-menu-item:hover,
body .ui-menu .ui-menu-item.ui-state-active,
body .ui-menu .ui-menu-item .ui-state-active {
  color: var(--color-main-color);
  background: var(--all-hover-bg);
  border-color: var(--color-main-color);
}
body .ui-menu .ui-menu-item:first-child,
body .ui-menu .ui-menu-item:first-child .ui-menu-item-wrapper {
  -webkit-border-top-left-radius: var(--border-radius-small);
  -moz-border-top-left-radius: var(--border-radius-small);
  border-top-left-radius: var(--border-radius-small);
  -webkit-border-top-right-radius: var(--border-radius-small);
  -moz-border-top-right-radius: var(--border-radius-small);
  border-top-right-radius: var(--border-radius-small);
}
body .ui-menu .ui-menu-item:last-child,
body .ui-menu .ui-menu-item:last-child .ui-menu-item-wrapper {
  -webkit-border-bottom-left-radius: var(--border-radius-small);
  -moz-border-bottom-left-radius: var(--border-radius-small);
  border-bottom-left-radius: var(--border-radius-small);
  webkit-border-bottom-right-radius: var(--border-radius-small);
  -moz-border-bottom-right-radius: var(--border-radius-small);
  border-bottom-right-radius: var(--border-radius-small);
}
/* END AUTOCOMPLITE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START QUESTION */
#new_questions_section #questions_section_description {
  margin: 0 0 20px;
}
#new_questions_section p #questions_section_description {
  margin: 0;
}
#new_questions_section input[type="submit"] {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border);
  -moz-border-radius: var(--button-border);
  border-radius: var(--button-border);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0;
}
#new_questions_section input[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
/* END QUESTION */
/* --------------------- https://redmine-evolution.com/ -- */
/* START EDIT TASK REDMINEUP */
div.modal .tabular input:not([type="checkbox"]):not([type="radio"]) {
  width: 100% !important;
  max-width: 100%;
  border-color: var(--border-color);
  min-height: 30px;
}
div.modal .tabular select {
  max-width: 100%;
  min-height: 30px;
}
div.modal .issue-edit-modal p {
  min-height: 0;
  display: flex;
  align-items: center;
  padding: 3px 0 3px 180px;
}
div.modal .issue-edit-modal p label {
  font-weight: bold;
  float: left;
  text-align: right;
  margin-left: -180px;
  width: 175px;
  padding: 0 5px 0 0;
  text-align: left;
}
div.modal .issue-edit-modal p.buttons {
  padding: 0;
}
div.modal .issue-edit-modal textarea {
  margin: 0 0 20px;
}
div.modal #invoice-templates label {
  margin-bottom: 5px;
}
/* END EDIT TASK REDMINEUP */
/* --------------------- https://redmine-evolution.com/ -- */
/* START DATEPICKER */
.ui-datepicker {
  background: var(--bg-fff);
  border-color: var(--border-color);
}
.ui-datepicker a.ui-state-default:after {
  display: none;
}
.ui-datepicker .ui-widget-header {
  border-color: var(--bg-fff);
  background: var(--color-main-color);
  color: var(--bg-fff);
}
.ui-datepicker .ui-state-default,
.ui-datepicker .ui-widget-content .ui-state-default,
.ui-datepicker .ui-widget-header .ui-state-default {
  color: var(--color-main-color);
  border-color: var(--border-color);
  background: var(--bg-fff);
  -webkit-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -moz-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -ms-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -o-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
}
.ui-datepicker .ui-state-highlight,
.ui-datepicker .ui-widget-content .ui-state-highlight,
.ui-datepicker .ui-widget-header .ui-state-highlight {
  background: var(--notice-worning-bg);
}
.ui-datepicker .ui-state-hover,
.ui-datepicker .ui-widget-content .ui-state-hover,
.ui-datepicker .ui-widget-header .ui-state-hover,
.ui-datepicker .ui-state-focus,
.ui-datepicker .ui-widget-content .ui-state-focus,
.ui-datepicker .ui-widget-header .ui-state-focus {
  background: var(--notice-error-bg);
}
.ui-datepicker .ui-state-hover.ui-datepicker-next-hover,
.ui-datepicker .ui-state-focus.ui-datepicker-next-hover,
.ui-datepicker .ui-state-hover.ui-datepicker-prev-hover,
.ui-datepicker .ui-state-focus.ui-datepicker-prev-hover {
  background: var(--bg-fff);
}
.ui-datepicker .ui-state-hover.ui-datepicker-next-hover:after,
.ui-datepicker .ui-state-focus.ui-datepicker-next-hover:after,
.ui-datepicker .ui-state-hover.ui-datepicker-prev-hover:after,
.ui-datepicker .ui-state-focus.ui-datepicker-prev-hover:after {
  color: var(--color-main-color);
}
.ui-datepicker .ui-state-active,
.ui-datepicker .ui-widget-content .ui-state-active,
.ui-datepicker .ui-widget-header .ui-state-active {
  background: var(--notice-error-bg);
  color: var(--notice-error-main-text);
}
.ui-datepicker .ui-state-active .ui-icon,
.ui-datepicker .ui-widget-content .ui-state-active .ui-icon,
.ui-datepicker .ui-widget-header .ui-state-active .ui-icon {
  background-image: url(images/ui/ui-icons_444444_256x240.png);
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  background: var(--color-main-color);
  border-color: var(--bg-fff);
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  display: none;
}
.ui-datepicker .ui-datepicker-prev:after,
.ui-datepicker .ui-datepicker-next:after {
  text-align: center;
  content: "\E0E1";
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -10px 0 0 -10px;
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  color: var(--color-main-color-text);
  overflow: hidden;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-size: 20px;
  line-height: 100%;
}
.ui-datepicker .ui-datepicker-prev:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
.ui-datepicker .ui-widget-content {
  color: var(--color-dark);
  border-color: var(--border-color);
}
.ui-datepicker .ui-widget-content .ui-priority-primary {
  background: var(--color-main-color);
  color: var(--color-main-color-text);
  border-color: var(--color-main-color);
  -webkit-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -moz-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -ms-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -o-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
}
.ui-datepicker .ui-widget-content .ui-priority-primary:hover {
  background: var(--bg-fff);
  color: var(--color-main-color);
  border-color: var(--bg-fff);
}
.ui-datepicker input,
.ui-datepicker select,
.ui-datepicker button {
  height: auto;
}
/* END DATEPICKER */
/* --------------------- https://redmine-evolution.com/ -- */
/* START PROGRESSBAR */
.ui-progressbar.ui-widget-content {
  background: var(--bg-box);
  border-color: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  font-size: 10px;
  line-height: 14px;
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ui-progressbar.ui-widget-content .ui-widget-header {
  background: var(--color-main-color);
  border-color: var(--color-main-color);
}
.ui-progressbar.ui-widget-content #progress-label {
  color: var(--color-dark);
}
.box .ui-progressbar.ui-widget-content,
.tabular .ui-progressbar.ui-widget-content,
fieldset .ui-progressbar.ui-widget-content {
  background: var(--bg-fff);
  border-color: var(--bg-fff);
}
.box .ui-progressbar.ui-widget-content .ui-widget-header,
.tabular .ui-progressbar.ui-widget-content .ui-widget-header,
fieldset .ui-progressbar.ui-widget-content .ui-widget-header {
  background: var(--color-main-color);
  border-color: var(--color-main-color);
}
/* END PROGRESSBAR */
/* --------------------- https://redmine-evolution.com/ -- */
/* START PERIOD PIKER */
body .period_picker_input {
  font-size: 0.85714286rem;
  line-height: 1.1;
  color: var(--color-dark);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid var(--color-grey);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  cursor: pointer;
  width: 100%;
  background: var(--bg-fff);
}
body .period_picker_input:before {
  display: none;
}
body .period_picker_input .period_button_content {
  display: flex;
  align-items: center;
  width: 100%;
}
body .period_picker_input .period_button_text {
  display: flex;
  align-items: center;
  padding: 0 5px 0 5px;
}
body .period_picker_input .icon_calendar {
  background-image: url(../images/icon/calendar.svg);
  background-position: 100% 50%;
  background-repeat: no-repeat;
  background-size: var(--icon-smaller-width) var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
}
body .period_picker_input .period_button_content_body {
  flex: 1 0 auto;
  text-align: left;
}
body .period_picker_input .icon_clear {
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  position: relative;
  background: none;
  margin-bottom: 0;
  opacity: 1 !important;
}
body .period_picker_input .icon_clear:after {
  visibility: visible !important;
  opacity: 1 !important;
  content: "\E0F4";
  color: var(--color-dark-grey);
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body .period_picker_input .icon_clear:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--color-main-color);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 0;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
body .period_picker_input .icon_clear:hover:after {
  color: var(--color-fff);
}
body .period_picker_input .icon_clear:hover:before {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
body .period_picker_input .period_button_content_wrapper {
  display: block;
  width: 100%;
}
body .period_picker_box .period_picker_show.period_picker_ok {
  color: var(--color-fff);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body .period_picker_box .period_picker_show.period_picker_ok:hover {
  color: var(--color-dark);
}
body .period_picker_box .period_picker_show.period_picker_ok:hover .button_text {
  color: var(--color-main-color);
}
body .period_picker_box .period_picker_show.period_picker_ok:active .period_picker_show:before {
  opacity: 0.2;
}
body .period_picker_box .period_picker_show.period_picker_ok .button_text {
  color: var(--color-fff);
  webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body .period_picker_box .period_picker_show:before {
  background: var(--button-main-bg);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  -webkit-box-shadow: var(--box-shadow-null);
  -moz-box-shadow: var(--box-shadow-null);
  box-shadow: var(--box-shadow-null);
  border: 1px solid var(--button-main-bg);
  -webkit-transition: opacity var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out;
  color: var(--button-main-color);
}
body .period_picker_box .period_picker_show:hover:before {
  opacity: 0.2;
}
body .period_picker_box .period_picker_show:focus {
  -webkit-box-shadow: var(--box-shadow-null);
  -moz-box-shadow: var(--box-shadow-null);
  box-shadow: var(--box-shadow-null);
}
#content form input[type="date"][style*="absolute"] {
  margin-top: 0 !important;
  margin-left: 0 !important;
  min-width: 0;
  max-width: 0;
  padding: 0;
  width: 0;
  height: 0;
  opacity: 0;
  min-height: 0;
}
#content form #jstElements select .icon.icon-user {
  margin: 0 !important;
}
#content form #jstElements select .icon.icon-user:after {
  display: none;
}
#content form .tab-elements .icon.icon-user {
  margin: 0 !important;
}
#content form .tab-elements .icon.icon-user:after {
  display: none;
}
/* END PERIOD PIKER */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MRDIA */
@media screen and (max-width: 1024px) {
  div.modal .box p {
    flex-wrap: wrap;
    padding: 0;
  }
  div.modal fieldset.box:last-of-type {
    padding-top: 50px !important;
  }
}
@media screen and (max-width: 650px) {
  #new_email_address {
    margin: 0;
    padding: 0;
  }
  #new_email_address input[type="submit"] {
    width: 100%;
  }
  div.ui-dialog.modal,
  div.ui-dialog,
  div.modal {
    padding-left: 10px;
    padding-right: 10px;
    max-width: calc(100% - 20px);
  }
  div.ui-dialog.modal .ui-dialog-content,
  div.ui-dialog .ui-dialog-content,
  div.modal .ui-dialog-content {
    padding: 15px 10px;
    margin: 0 -10px;
    width: calc(100% + 20px);
  }
  div.ui-dialog.modal .ui-dialog-content:after,
  div.ui-dialog .ui-dialog-content:after,
  div.modal .ui-dialog-content:after {
    height: 100%;
  }
  div.ui-dialog.modal .box label,
  div.ui-dialog .box label,
  div.modal .box label {
    width: 100%;
    margin: 0 0 5px;
  }
  div.ui-dialog.modal .box p,
  div.ui-dialog .box p,
  div.modal .box p {
    display: block;
  }
  div.ui-dialog.modal input[type="text"],
  div.ui-dialog input[type="text"],
  div.modal input[type="text"],
  div.ui-dialog.modal input[type="date"],
  div.ui-dialog input[type="date"],
  div.modal input[type="date"],
  div.ui-dialog.modal textarea,
  div.ui-dialog textarea,
  div.modal textarea {
    width: 100%;
  }
  div.ui-dialog.modal .buttons,
  div.ui-dialog .buttons,
  div.modal .buttons {
    margin: 0 -10px -15px;
    width: calc(100% + 20px);
    padding: 15px 10px;
    display: block;
    background: var(--bg-fff);
    -webkit-border-radius: 0 0 0 0;
    -moz-border-radius: 0 0 0 0;
    border-radius: 0 0 0 0;
  }
  div.ui-dialog.modal .buttons input[type="submit"],
  div.ui-dialog .buttons input[type="submit"],
  div.modal .buttons input[type="submit"] {
    width: 100%;
    display: block;
    margin: 0;
    color: var(--button-main-color);
    background: var(--button-main-bg);
  }
  div.ui-dialog.modal .buttons input[type="submit"]:hover,
  div.ui-dialog .buttons input[type="submit"]:hover,
  div.modal .buttons input[type="submit"]:hover {
    color: var(--button-main-color-hover);
    background: var(--button-main-bg-hover);
  }
  div.ui-dialog.modal .buttons input[type="submit"] + input[type="button"],
  div.ui-dialog .buttons input[type="submit"] + input[type="button"],
  div.modal .buttons input[type="submit"] + input[type="button"],
  div.ui-dialog.modal .buttons input[type="submit"] + a[onclick],
  div.ui-dialog .buttons input[type="submit"] + a[onclick],
  div.modal .buttons input[type="submit"] + a[onclick] {
    margin: 10px 0 0;
    width: 100%;
    display: block;
    color: var(--button-color);
    background: var(--button-bg);
    text-align: center;
  }
  div.ui-dialog.modal .buttons input[type="submit"] + input[type="button"]:hover,
  div.ui-dialog .buttons input[type="submit"] + input[type="button"]:hover,
  div.modal .buttons input[type="submit"] + input[type="button"]:hover,
  div.ui-dialog.modal .buttons input[type="submit"] + a[onclick]:hover,
  div.ui-dialog .buttons input[type="submit"] + a[onclick]:hover,
  div.modal .buttons input[type="submit"] + a[onclick]:hover {
    color: var(--button-color-hover);
    background: var(--button-bg-hover);
  }
  .jstBlock {
    flex: 1;
    margin: 10px 0 0;
  }
  .jstBlock .tabs {
    height: auto;
    margin: 0;
    padding: 0;
  }
  .jstBlock .tabs ul {
    overflow: hidden;
    position: static;
    width: 100%;
    margin: 0;
    padding: 0;
    background: var(--color-fff);
    -webkit-border-radius: var(--border-radius-small);
    -moz-border-radius: var(--border-radius-small);
    border-radius: var(--border-radius-small);
  }
  .jstBlock .tabs ul li {
    height: auto;
    white-space: pre-wrap;
  }
  .jstBlock .jstElements {
    padding: 0;
    height: auto;
  }
}
@media screen and (max-width: 480px) {
  div.modal,
  div.modal.help-modal,
  div.ui-dialog.modal.help-modal {
    max-width: 100% !important;
    width: 100% !important;
    -webkit-border-radius: 0 !important;
    -moz-border-radius: 0 !important;
    border-radius: 0 !important;
  }
  div.modal .ui-widget-header .ui-state-default,
  div.modal.help-modal .ui-widget-header .ui-state-default,
  div.ui-dialog.modal.help-modal .ui-widget-header .ui-state-default {
    right: 10px;
    top: 10px;
  }
  div.modal .ui-dialog-titlebar,
  div.modal.help-modal .ui-dialog-titlebar,
  div.ui-dialog.modal.help-modal .ui-dialog-titlebar {
    font-size: 1rem;
    line-height: 1.4;
    padding: 15px 40px 15px 20px;
  }
  div.modal .ui-dialog-buttonpane .ui-button,
  div.modal.help-modal .ui-dialog-buttonpane .ui-button,
  div.ui-dialog.modal.help-modal .ui-dialog-buttonpane .ui-button {
    display: block;
    width: 100%;
    margin: 0 0 10px !important;
    margin: 0;
  }
}
/* END UI WIDGET */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START WIKI */
#main #content div.wiki p a.project {
  width: auto;
  font-size: 14px;
  border-radius: 0;
  display: flex;
  align-items: center;
  padding: 0 0 0 32px;
}
#main #content div.wiki p a.project:after {
  content: "\E16C";
}
#main #content div.wiki p a.project:after,
#main #content div.wiki p a.project:before {
  width: 26px;
  height: 26px;
  position: absolute;
  left: 0;
  top: 0;
}
#main #content div.wiki .external {
  position: relative;
  background: none;
  padding-left: 24px;
  display: inline-block;
  width: auto;
  height: auto;
  font-size: 1rem;
  line-height: 1.4;
  color: var(--color-main-color);
  overflow: visible;
}
#main #content div.wiki .external:after {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 0px;
  display: block;
  clear: both;
  height: var(--icon-width-small);
  width: var(--icon-width-small);
  margin: -10px 0 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main #content div.wiki + fieldset {
  position: relative;
  padding: 25px 30px 15px;
  margin: 0 0 15px;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  background: var(--bg-box);
  border: none;
}
#main #content div.wiki + fieldset:after {
  content: '';
  display: block;
  clear: both;
  width: 100%;
  position: absolute;
  top: 100%;
  left: 0;
  height: 1px;
  background: var(--border-color);
  opacity: 0;
}
#main #content div.wiki + fieldset:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 40px;
  left: 0;
  opacity: 1;
  height: 1px;
  width: 100%;
  background: var(--border-color);
  -webkit-transition: opacity var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out;
}
#main #content div.wiki + fieldset a.icon,
#main #content div.wiki + fieldset a.icon-only {
  color: var(--icon-color-bg);
}
#main #content div.wiki + fieldset a.icon:before,
#main #content div.wiki + fieldset a.icon-only:before {
  background: var(--icon_bg-bg);
}
#main #content div.wiki + fieldset a.icon:hover,
#main #content div.wiki + fieldset a.icon-only:hover {
  color: var(--icon-color-hover-bg);
}
#main #content div.wiki + fieldset a.icon:hover:before,
#main #content div.wiki + fieldset a.icon-only:hover:before {
  background: var(--icon_bg_hover-bg);
}
#main #content div.wiki + fieldset .attachments {
  padding: 20px 0 0;
  position: relative;
}
#main #content div.wiki + fieldset legend {
  position: absolute !important;
  width: 100%;
  padding: 0 20px 0 50px;
  display: flex;
  align-items: center;
  height: 40px;
  line-height: 40px;
  top: 0;
  left: 0;
  color: var(--text-color-main);
  font-weight: 600;
  font-size: 1rem;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
  z-index: 3;
}
#main #content div.wiki + fieldset legend:hover:after {
  color: var(--icon-color-hover-bg);
}
#main #content div.wiki + fieldset legend:hover:before {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main #content div.wiki + fieldset legend:after {
  content: "\E155";
  position: absolute;
  top: 5px;
  left: 10px;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: 1;
  color: var(--icon-color-bg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#main #content div.wiki + fieldset legend:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 5px;
  left: 10px;
  height: var(--icon-width);
  width: var(--icon-width);
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 0;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#main #content div.wiki + fieldset legend.icon-expended:after {
  color: var(--icon_color_active-bg);
}
#main #content div.wiki + fieldset legend.icon-expended:before {
  background: var(--icon_bg_active-bg);
}
#main #content div.wiki + fieldset legend.icon-expended:hover:after {
  color: var(--icon-color-hover-bg);
}
#main #content div.wiki + fieldset legend.icon-expended:hover:before {
  background: var(--icon_bg_hover-bg);
}
#main #content div.wiki + fieldset > div {
  max-height: 2000px;
  display: block !important;
  overflow: hidden;
  -webkit-transition: max-height var(--time-hover) ease-in-out;
  -moz-transition: max-height var(--time-hover) ease-in-out;
  -ms-transition: max-height var(--time-hover) ease-in-out;
  -o-transition: max-height var(--time-hover) ease-in-out;
  transition: max-height var(--time-hover) ease-in-out;
  z-index: 1;
}
#main #content div.wiki + fieldset.collapsed:before {
  opacity: 0;
}
#main #content div.wiki + fieldset.collapsed legend:after {
  color: var(--icon-color-bg);
  -webkit-transform: rotate(0);
  -moz-transform: rotate(0);
  -ms-transform: rotate(0);
  -o-transform: rotate(0);
  transform: rotate(0);
}
#main #content div.wiki + fieldset.collapsed legend:hover:after {
  color: var(--icon-color-hover-bg);
}
#main #content div.wiki + fieldset.collapsed > div {
  -webkit-transition: max-height var(--time-hover) ease-in-out;
  -moz-transition: max-height var(--time-hover) ease-in-out;
  -ms-transition: max-height var(--time-hover) ease-in-out;
  -o-transition: max-height var(--time-hover) ease-in-out;
  transition: max-height var(--time-hover) ease-in-out;
  max-height: 0;
}
#main #content div.wiki + fieldset .box {
  padding: 0;
  overflow: visible;
}
.controller-wiki {
  /* START WIKI START PAGE */
  /* END WIKI START PAGE */
  /* --------------------- https://redmine-evolution.com/ -- */
  /* START WIKI PAGE BAY DATE */
  /* END WIKI PAGE BAY DATE */
  /* --------------------- https://redmine-evolution.com/ -- */
  /* START WIKI PAGE BAY TITLE */
  /* END WIKI PAGE BAY TITLE */
}
.controller-wiki .attachments + #wiki_add_attachment {
  padding: 0;
}
.controller-wiki #wiki_add_attachment {
  padding: 40px 0 0;
}
.controller-wiki .wiki-update-info {
  position: absolute;
  bottom: 0;
  left: 0;
  max-width: 50%;
  text-align: left;
}
.controller-wiki #wiki_form .jstBlock {
  margin: 0 0 15px;
}
.controller-wiki #wiki_form fieldset {
  padding: 42px 0 0 295px;
  margin: 10px 0 0;
  border: 0;
  position: relative;
}
.controller-wiki #wiki_form fieldset legend {
  position: absolute;
  top: 0;
  left: 0;
  font-weight: bold;
  line-height: 30px;
}
.controller-wiki .box + p {
  margin: 0;
}
.controller-wiki.action-show .wiki.wiki-page {
  margin: 0;
  /*15px 0 0 ;*/
}
.controller-wiki.action-show #main #content .contextual:not(.next-prev-links) {
  right: 30px;
}
.controller-wiki.action-show #main #content .wiki-page h1:first-of-type {
  position: relative;
  font-size: 1.4285rem;
  line-height: 1.4;
  padding: 15px 150px 15px 65px;
  width: calc(100% + 60px);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 -30px 20px;
  border-bottom: 1px solid var(--border-color);
  background-size: 30px auto;
  background-position: 20px 50%;
  background-repeat: no-repeat;
  text-overflow: ellipsis;
}
.controller-wiki.action-show #main #content .wiki-page h1:first-of-type br {
  display: none;
}
.controller-wiki.action-show.has-footer #main > #content:after {
  top: 0;
  height: calc(100% - 50px);
}
.controller-wiki.action-date_index #main #content {
  padding: 0 0 56px;
}
.controller-wiki.action-date_index #main #content:after {
  display: none;
}
.controller-wiki.action-date_index #main #content > h2 {
  width: 100%;
  margin: 0 0 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-wiki.action-date_index #main #content h3 {
  font-size: 1.1428rem;
  line-height: 1.4;
  font-weight: 700;
  padding: 2px 0 15px 30px;
  margin: 0 !important;
  cursor: pointer;
  position: relative;
  border: none;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.controller-wiki.action-date_index #main #content h3:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0px;
  width: 14px;
  height: 14px;
  border: 2px solid var(--color-main-color);
  background: var(--bg-box);
  -webkit-transition: border-color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, opacity var(--time-hover) ease-in-out;
  -moz-transition: border-color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, opacity var(--time-hover) ease-in-out;
  -ms-transition: border-color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, opacity var(--time-hover) ease-in-out;
  -o-transition: border-color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, opacity var(--time-hover) ease-in-out;
  transition: border-color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, opacity var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
  opacity: 0.5;
}
.controller-wiki.action-date_index #main #content h3:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  bottom: 0;
  left: 8px;
  width: 2px;
  height: 50%;
  background: var(--color-main-color);
  opacity: 0.5;
  -webkit-transition: opacity var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out;
}
.controller-wiki.action-date_index #main #content h3:hover,
.controller-wiki.action-date_index #main #content h3.open-wiki {
  color: var(--color-main-color);
}
.controller-wiki.action-date_index #main #content h3:hover:after,
.controller-wiki.action-date_index #main #content h3.open-wiki:after {
  border-color: var(--color-main-color);
  background: var(--color-main-color);
  opacity: 1;
}
.controller-wiki.action-date_index #main #content h3:hover:before,
.controller-wiki.action-date_index #main #content h3.open-wiki:before {
  opacity: 1;
}
.controller-wiki.action-date_index #main #content .holder-wiki-date {
  position: relative;
  height: 0;
  overflow: hidden;
}
.controller-wiki.action-date_index #main #content .holder-wiki-date:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 8px;
  width: 2px;
  height: 100%;
  background: var(--color-main-color);
}
.controller-wiki.action-date_index #main #content .holder-wiki-date ul {
  margin: 0 0 20px 30px;
  padding: 20px;
  background: var(--bg-other);
  border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  -webkit-border-radius: var(--border-radius);
  font-size: 1rem;
  line-height: 1;
  font-weight: 500;
  list-style: none;
}
.controller-wiki.action-date_index #main #content .holder-wiki-date ul li {
  padding: 0;
  position: relative;
  margin: 15px 0 0;
}
.controller-wiki.action-date_index #main #content .holder-wiki-date ul li:first-child {
  margin: 0;
}
.controller-wiki.action-date_index #main #content .holder-wiki-date ul a {
  text-overflow: ellipsis;
  overflow: hidden;
  font-weight: bold;
  display: block;
  text-decoration: none;
  padding: 10px;
  background: var(--bg-other-in);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.controller-wiki.action-date_index #main #content .holder-wiki-date ul a:hover {
  background: var(--color-main-color);
  color: var(--bg-other-in);
}
.controller-wiki.action-date_index #main #content #wiki-new {
  position: relative;
}
.controller-wiki.action-date_index #main #content #wiki-new:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 18px;
  height: 4px;
  background: var(--color-main-color);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
.controller-wiki.action-index #main #content {
  padding: 0 0 56px;
}
.controller-wiki.action-index #main #content:after {
  display: none;
}
.controller-wiki.action-index #main #content > h2 {
  width: 100%;
  margin: 0 0 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-wiki #content > .pages-hierarchy {
  padding: 0;
  margin: 0;
  list-style: none;
}
.controller-wiki #content > .pages-hierarchy > li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 0;
  border: none;
  background: var(--bg-other);
  width: 100%;
  margin: 0 0 15px;
  -webkit-box-sizing: inherit;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  -webkit-transition: box-shadow var(--time-hover) ease-in-out;
  -moz-transition: box-shadow var(--time-hover) ease-in-out;
  -ms-transition: box-shadow var(--time-hover) ease-in-out;
  -o-transition: box-shadow var(--time-hover) ease-in-out;
  transition: box-shadow var(--time-hover) ease-in-out;
}
.controller-wiki #content > .pages-hierarchy > li:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
.controller-wiki #content > .pages-hierarchy a {
  position: relative;
  font-size: 1rem;
  line-height: 1.143rem;
  flex: 1;
  width: 100%;
  margin: 0;
  padding: 15px 20px;
  height: auto;
  font-family: sans-serif;
  overflow: hidden;
  font-weight: 600;
  color: var(--text-color-main);
  background-position: 10px 50%;
  background-repeat: no-repeat;
  text-decoration: none;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.controller-wiki #content > .pages-hierarchy a:hover {
  color: var(--color-main-color);
}
.controller-wiki #content > .pages-hierarchy .has-drop > a:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  margin: -10px 0 0;
  right: 0;
  height: 20px;
  width: 1px;
  border-left: 1px solid var(--border-color);
}
.controller-wiki #content > .pages-hierarchy .holder-wiki {
  flex: 1 0 auto;
  width: 100%;
  height: 0;
  overflow: hidden;
}
.controller-wiki #content > .pages-hierarchy .open > .link-wiki {
  color: var(--icon_color_active-bg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
.controller-wiki #content > .pages-hierarchy .link-wiki {
  cursor: pointer !important;
  padding: 0;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0 15px;
  overflow: hidden;
  position: relative;
  z-index: 2;
  background-repeat: no-repeat;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
.controller-wiki #content > .pages-hierarchy .link-wiki:after {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
.controller-wiki #content > .pages-hierarchy .link-wiki:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.controller-wiki #content > .pages-hierarchy .link-wiki:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-wiki #content > .pages-hierarchy .link-wiki:hover:after {
  color: var(--icon-color-hover-bg);
}
.controller-wiki #content > .pages-hierarchy .link-wiki.selected:before {
  background: var(--icon_bg_active-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-wiki #content > .pages-hierarchy .link-wiki.selected:after {
  color: var(--icon_color_active-bg);
}
.controller-wiki #content > .pages-hierarchy .pages-hierarchy {
  overflow: hidden;
  border: none;
  position: relative;
  margin: 0 0 0 20px;
  padding: 0;
  width: calc(100% - 20px);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-wiki #content > .pages-hierarchy .pages-hierarchy:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--border-color-content);
}
.controller-wiki #content > .pages-hierarchy .pages-hierarchy li {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  border-top: 1px solid var(--border-color-content);
}
.controller-wiki #content > .pages-hierarchy .pages-hierarchy li.first-child {
  border: none;
}
.controller-wiki .contextual .drdn-content {
  top: 100%;
}
/* START WIKI HISTORY */
.controller-wiki.action-history .wiki-page-versions {
  margin: 0 0 20px;
}
.controller-wiki.action-history #main #content span.pagination {
  bottom: -54px;
}
.controller-wiki.action-history #main #content input[type="submit"] {
  margin: 0 0 20px;
}
.controller-wiki.action-history a.icon,
.controller-wiki.action-history a.icon-only {
  vertical-align: middle;
}
/* END WIKI HISTORY */
#content div.wiki-page .contextual a {
  opacity: 1;
}
/* END WIKI */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  .controller-wiki.action-date_index #main #content > h2 {
    margin-bottom: 20px;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
  }
  .controller-wiki.action-date_index #main #content h3:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .controller-wiki.action-date_index #main #content #wiki-new:after {
    width: 14px;
  }
  .controller-wiki.action-index {
    margin-bottom: 20px;
  }
  #main #content div.wiki + fieldset {
    padding: 25px 10px 15px;
  }
  #main #content div.wiki + fieldset legend:before {
    display: none;
  }
  .controller-wiki.action-show #main #content .wiki-page h1:first-of-type {
    background-color: var(--bg-box);
    padding: 15px 10px 15px 45px;
    margin: 0 -10px 20px;
    width: calc(100% + 20px);
    background-position: 10px 50%;
    background-size: 25px auto;
  }
  .controller-wiki.action-show #main #content > .contextual .drdn-content {
    left: auto;
    right: 0;
    padding: 5px;
    white-space: nowrap;
  }
  .controller-wiki.action-show #main #content .other-formats {
    position: static;
  }
  .controller-wiki .wiki-update-info {
    margin: 0;
    bottom: 20px;
    height: 31px;
    left: 10px;
    align-items: center;
    position: static;
    max-width: 100%;
  }
  .controller-wiki .wiki-update-info .badge {
    margin: 0 0 0 5px;
  }
  .controller-wiki #content > .pages-hierarchy {
    padding: 0 10px !important;
  }
  .controller-wiki #content > .pages-hierarchy > li {
    background: var(--bg-box);
    -webkit-border-radius: var(--border-radius);
    -moz-border-radius: var(--border-radius);
    border-radius: var(--border-radius);
  }
  .controller-wiki #content > .pages-hierarchy a {
    padding: 15px 10px;
  }
  .controller-wiki #content > .pages-hierarchy .link-wiki {
    color: var(--color-main-color);
  }
  .controller-wiki #content > .pages-hierarchy .link-wiki:before {
    display: none;
  }
  .controller-wiki #content > .pages-hierarchy .has-drop > a:after {
    border-color: var(--color-dark-grey);
  }
  .controller-wiki.action-date_index #wrapper #wrapper2:after {
    background: var(--bg-body);
  }
  .controller-wiki.action-date_index #main #content {
    padding-left: 10px;
    padding-right: 10px;
  }
  .controller-wiki.action-date_index #main #content h3:before {
    left: 6px;
    height: 60%;
  }
  .controller-wiki.action-date_index #main #content .holder-wiki-date:before {
    left: 6px;
  }
  .controller-wiki.action-date_index #main #content .holder-wiki-date ul {
    padding: 0;
    background: none;
  }
  .controller-wiki.action-date_index #main #content .holder-wiki-date ul a {
    -webkit-border-radius: var(--border-radius);
    -moz-border-radius: var(--border-radius);
    border-radius: var(--border-radius);
  }
}
@media screen and (max-width: 650px) {
  .controller-wiki #main > #content > .pages-hierarchy {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
  }
  .controller-wiki #main > #content > .pages-hierarchy > li {
    margin-bottom: 10px;
    -webkit-box-shadow: var(--box-shadow-null) !important;
    -moz-box-shadow: var(--box-shadow-null) !important;
    box-shadow: var(--box-shadow-null) !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  .controller-wiki.action-date_index #main #content h3 {
    margin: 0 !important;
    text-align: center;
    padding: 10px 10px;
    background: var(--bg-box);
  }
  .controller-wiki.action-date_index #main #content h3.open-wiki {
    background: var(--color-main-color);
    color: var(--bg-other-in);
  }
  .controller-wiki.action-date_index #main #content h3:after,
  .controller-wiki.action-date_index #main #content h3:before {
    display: none;
  }
  .controller-wiki.action-date_index #main #content #wiki-new {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
  }
  .controller-wiki.action-date_index #main #content #wiki-new:after {
    display: none;
  }
  .controller-wiki.action-date_index #main #content .holder-wiki-date {
    margin-bottom: 10px;
  }
  .controller-wiki.action-date_index #main #content .holder-wiki-date:before {
    display: none;
  }
  .controller-wiki.action-date_index #main #content .holder-wiki-date ul {
    padding: 0;
    margin: 0;
  }
  .controller-wiki.action-date_index #main #content .holder-wiki-date ul li {
    margin: 0;
    border-bottom: 1px solid var(--border-color);
  }
  .controller-wiki.action-date_index #main #content .holder-wiki-date ul a {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  form[action*="diff"] {
    display: block;
    overflow: hidden;
    overflow-x: auto;
  }
  .controller-wiki .wiki-update-info {
    height: auto;
    display: block;
    width: 100%;
    margin: 10px 0;
    position: static;
    max-width: 100%;
  }
  .controller-wiki .attachments table tr {
    display: block;
    width: 100%;
  }
  .controller-wiki .attachments table tr td {
    display: block;
    width: 100%;
  }
  .controller-wiki .attachments table tr td:last-child {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid var(--border-color);
  }
  .controller-wiki.action-show #main #content .wiki-page h1 {
    background-position: 10px 50%;
    background-size: 25px auto;
  }
  #main #content div.wiki + fieldset .attachments {
    padding: 60px 0 0;
    position: relative;
  }
  #main #content div.wiki + fieldset .attachments .contextual {
    top: 25px !important;
    right: 10px;
  }
  #main #content div.wiki + fieldset .box {
    margin: 20px 0 10px !important;
    width: 100% !important;
  }
}
/* END MEDIA*/
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MODAL SEARCH */
#header .holder-search-link {
  display: flex;
  align-items: center;
  margin: 0 0 0 10px;
}
#header .redmineevolution-search-link,
#header .redmineevolution-open-search-link {
  cursor: pointer !important;
  padding: 0;
  float: right;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  left: 0;
  top: 0;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#header .redmineevolution-search-link:after,
#header .redmineevolution-open-search-link:after {
  content: "\E16E";
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
  line-height: 1;
}
#header .redmineevolution-search-link:before,
#header .redmineevolution-open-search-link:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  height: var(--icon-width);
  width: var(--icon-width);
  background: var(--icon_bg);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  --webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#header .redmineevolution-search-link:hover,
#header .redmineevolution-open-search-link:hover {
  color: var(--icon-color-hover);
}
#header .redmineevolution-search-link:hover:before,
#header .redmineevolution-open-search-link:hover:before {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#header .redmineevolution-open-search-link:after {
  content: "\E123";
}
#header .redmineevolution-search-link {
  position: absolute;
  top: -999999px;
  left: -999999px;
}
.small-search.redmineevolution-start-search {
  overflow: hidden;
  height: 100%;
}
.small-search.redmineevolution-start-search #header .redmineevolution-modal-search .redmineevolution-open-box {
  left: 0;
  top: 0;
}
.small-search #header .redmineevolution-search-link {
  position: relative;
  top: 0;
  left: 0;
}
.small-search #header .redmineevolution-open-search-link:after {
  content: "\E0F5";
}
.small-search #header #quick-search .redmineevolution-modal-search label {
  color: var(--color-dark);
}
.small-search #header #quick-search .redmineevolution-modal-search label a {
  color: var(--color-dark);
}
.small-search #header #quick-search .redmineevolution-modal-search .drdn-items.projects {
  max-height: calc(100vh - 200px);
}
.small-search #header #quick-search .holder-search-link {
  float: right;
  margin: 0 0 0 10px;
}
.small-search #header .redmineevolution-modal-search {
  display: flex;
}
.small-search #header .redmineevolution-modal-search .redmineevolution-open-box {
  width: 100%;
  overflow: hidden;
  height: 100%;
  position: fixed;
  top: -99999px;
  left: -99999px;
  z-index: 1000;
  opacity: 1;
}
.small-search #header .redmineevolution-modal-search .redmineevolution-open-box:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--popup-overlay);
  z-index: 1;
}
.small-search #header .redmineevolution-modal-search .redmineevolution-wrapper {
  width: 100%;
  background: var(--bg-box);
  -webkit-box-shadow: var(--main-box-shadow);
  -moz-box-shadow: var(--main-box-shadow);
  box-shadow: var(--main-box-shadow);
  margin: 0 auto;
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.small-search #header .redmineevolution-modal-search .redmineevolution-close {
  cursor: pointer;
  position: relative;
  outline: 0 none;
  padding: 0;
  display: inline-block;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0 0 0 20px;
  overflow: hidden;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--popup-close-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.small-search #header .redmineevolution-modal-search .redmineevolution-close:after {
  position: absolute;
  top: 0px;
  left: 0px;
  content: "\E0F3";
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
.small-search #header .redmineevolution-modal-search .redmineevolution-close:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--popup-close-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
.small-search #header .redmineevolution-modal-search .redmineevolution-close:hover {
  color: var(--popup-close-color-hover);
}
.small-search #header .redmineevolution-modal-search .redmineevolution-close:hover:before {
  background: var(--popup-close-bg-hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.small-search #header .redmineevolution-modal-search .redmineevolution-content {
  background: var(--bg-box);
  padding: 20px;
  display: flex;
  align-items: center;
}
.small-search #header .redmineevolution-modal-search .redmineevolution-content .select2 {
  margin: 0 0 0 10px;
}
/* END MODAL SEARCH */
/* START SEARCH PAGE */
#content #search-form #scope + .select2 {
  margin-right: 10px;
}
#content #search-form .box p {
  padding: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
#content #search-form .box p .jcf-select {
  margin: 0 10px !important;
}
#content #search-form .box p > label {
  margin-left: 0 !important;
  width: auto !important;
  font-weight: normal !important;
}
#content #search-form .box p > label a {
  white-space: nowrap;
}
#content #search-form .box .box {
  margin-bottom: 20px;
}
#content #search-form .box .collapsible {
  padding: 60px 0 0;
}
#content #search-form .box .collapsible > legend {
  position: absolute;
  width: 100%;
  padding: 0 20px 0 50px;
  display: flex;
  align-items: center;
  height: 40px;
  top: 0;
  left: 0;
  background: var(--bg-fff);
  color: var(--text-color-main);
  font-weight: 600;
  font-size: 1rem;
  line-height: 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#content #search-form .box .collapsible > legend:after {
  position: absolute;
  top: 5px;
  left: 10px;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, transform var(--time-hover) ease-in-out;
  z-index: 1;
  background-size: var(--icon-width) var(--icon-width);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  opacity: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#content #search-form .box .collapsible > legend:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 5px;
  left: 10px;
  height: var(--icon-width);
  width: var(--icon-width);
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 0;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#content #search-form .box .collapsible > legend:hover:before {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#content #search-form .box .collapsible.collapsed > legend:after {
  -webkit-transform: rotate(0);
  -moz-transform: rotate(0);
  -ms-transform: rotate(0);
  -o-transform: rotate(0);
  transform: rotate(0);
}
@media screen and (max-width: 650px) {
  #content #search-form .box p label {
    margin-right: 10px !important;
  }
  #content #search-form .box p label:first-child {
    margin-right: 10px !important;
  }
  #content #search-form .box p input[type="text"],
  #content #search-form .box p .jcf-select {
    width: 100%;
    min-width: 100%;
    flex: 1;
  }
  #content #search-form .box p input[type="text"] ~ label,
  #content #search-form .box p .jcf-select ~ label {
    margin-top: 10px !important;
  }
  #content #search-form .box .collapsible {
    padding: 50px 10px 0 !important;
    margin: 0;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #content #search-form .box .collapsible > legend {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #content #search-form .box .collapsible label {
    width: 100% !important;
    margin: 0 0 5px !important;
  }
}
/* END SEARCH PAGE */
#main #search-results {
  padding: 0;
  margin: 0;
  overflow: hidden;
  width: 100%;
}
#main #search-results .highlight {
  padding: 0 5px;
}
#main #search-results dt {
  padding: 15px 20px 0;
  display: block;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius) var(--border-radius) 0 0;
  -moz-border-radius: var(--border-radius) var(--border-radius) 0 0;
  border-radius: var(--border-radius) var(--border-radius) 0 0;
}
#main #search-results dd {
  display: block;
  width: 100%;
  padding: 0 20px 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: var(--bg-box);
  -webkit-border-radius: 0 0 var(--border-radius) var(--border-radius);
  -moz-border-radius: 0 0 var(--border-radius) var(--border-radius);
  border-radius: 0 0 var(--border-radius) var(--border-radius);
  margin: 0 0 15px;
}
#main div#search-results-counts li:first-child {
  margin: 0;
}
#main #search-results-counts {
  margin: 0 0 20px;
}
#main #search-results-counts ul {
  padding: 0;
  margin: 0;
  list-style: none;
  display: block;
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 650px) {
  #main ul {
    width: calc(100% + 10px);
  }
  #main ul li {
    margin: 0 10px 5px 0;
  }
  #main ul li:first-child {
    margin: 0 10px 5px 0;
  }
  #main #search-results {
    width: calc(100% + 20px);
    margin-left: -10px;
    margin-right: -10px;
  }
  #main #search-results dt {
    padding: 10px 10px 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #main #search-results dd {
    padding: 0 10px 10px;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START ROADMAP */
div#roadmap .related-issues td.assigned_to img {
  display: block;
  padding: 0;
  margin-left: 5px;
  margin-right: 5px;
}
div#roadmap > form {
  float: left;
  width: 72%;
}
div#roadmap .related-issues {
  width: 100% !important;
}
div#roadmap div#version-summary {
  margin-left: 20px;
  width: calc(28% - 20px);
  margin-top: 37px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
div#roadmap div#version-summary .related-issues {
  margin-bottom: 20px;
}
#main > #content div#roadmap h2 {
  position: relative;
  font-size: 1.4285rem;
  line-height: 1.4;
  padding: 15px 45px;
  width: calc(100% + 60px);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 -30px 70px;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
  background-size: 30px auto;
  background-position: 0 50%;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
#main .badge {
  display: inline-block;
  margin-bottom: 10px;
  padding: 2px 5px;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#main table .badge.badge-count {
  margin-bottom: 0;
}
#main .badge-private {
  background: var(--red_border_error);
  color: var(--red_error_text);
}
#main .badge-count {
  color: var(--color-fff);
  background: var(--color-orange);
}
#main .badge-status-open {
  color: var(--color-fff);
  background: var(--color-main-color);
  border: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#main .badge-status-locked {
  color: var(--color-fff);
  background: var(--color-dark);
  border: 0;
}
#main .badge-status-closed {
  color: var(--bg-fff);
  background: var(--color-green);
  border: 0;
}
.version-article {
  padding: 30px;
  background: var(--bg-fff);
  margin: 0 0 30px;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  -webkit-transition: box-shadow var(--time-hover) ease-in-out;
  -moz-transition: box-shadow var(--time-hover) ease-in-out;
  -ms-transition: box-shadow var(--time-hover) ease-in-out;
  -o-transition: box-shadow var(--time-hover) ease-in-out;
  transition: box-shadow var(--time-hover) ease-in-out;
}
.version-article:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
.version-article .version-overview p {
  margin: 0 0 10px;
}
.version-article .version-overview p:last-child {
  margin: 0;
}
.controller-versions.loggedas.action-index #main > #content h3 {
  width: calc(100% - 60px);
}
.controller-versions.action-index #main > #content {
  padding: 0;
}
.controller-versions.action-index #main > #content:after {
  display: none;
}
.controller-versions.action-index #main > #content h2 {
  width: 100%;
  margin: 0 0 30px;
}
.controller-versions.action-index #main > #content .contextual {
  margin-right: 0;
}
.controller-versions.action-index #main > #content .version-article .contextual {
  margin: 5px 0 0 0;
}
.controller-versions.action-index #main > #content .version-article .contextual a {
  width: 30px;
  height: 30px;
}
.controller-versions.action-index #main > #content .version-article .contextual a:after {
  font-size: 30px;
  line-height: 30px;
}
.controller-versions.action-index #main > #content h3 {
  width: 100%;
  margin: 0 0 10px;
  padding: 0;
  display: block;
  background: var(--bg-box);
  color: var(--text-color-main);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  font-size: 1rem;
  line-height: 1rem;
}
.controller-versions.action-index #main > #content h3:after {
  width: var(--icon-width);
  height: var(--icon-width);
  color: var(--icon-color-bg);
  font-size: var(--icon-font-size);
  line-height: 1;
  left: 10px;
  top: 50%;
  margin: -15px 0 0;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.controller-versions.action-index #main > #content h3:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  left: 10px;
  width: var(--icon-width);
  height: var(--icon-width);
  margin: -15px 0 0;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 0;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.controller-versions.action-index #main > #content h3 a {
  float: none;
  color: var(--text-color-main);
  display: block;
  padding: 13px 30px 13px 50px;
  text-decoration: none;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.controller-versions.action-index #main > #content h3:hover:after {
  color: var(--icon-color-hover-bg);
}
.controller-versions.action-index #main > #content h3:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-versions.action-index #main > #content h3:hover a {
  color: var(--color-main-color);
}
.controller-versions .version-overview .progress {
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  position: relative;
}
.controller-versions .version-overview .progress:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 10px;
  height: 100%;
  background: url("../images/round.png") 0 0 no-repeat;
}
.controller-versions .version-overview .progress:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  right: 0;
  width: 10px;
  height: 100%;
  background: url("../images/round.png") 0 0 no-repeat;
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
.controller-versions .version-overview .progress td {
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  border-radius: 0 !important;
}
.controller-versions .progress-info {
  font-size: 0.85714286rem;
  line-height: 1.4;
  color: var(--color-dark-grey);
  font-weight: 500;
  margin: 10px 0;
}
.controller-versions .list {
  margin: 0 !important;
}
.controller-versions .list caption {
  margin: 0 0 10px;
  font-weight: bold;
}
.controller-versions .list tr:first-child td {
  border-top: 0;
}
.controller-versions .list.related-issues tbody tr:first-child .assigned_to {
  -webkit-border-radius: var(--border-radius) 0 0 0;
  -moz-border-radius: var(--border-radius) 0 0 0;
  border-radius: var(--border-radius) 0 0 0;
}
.controller-versions .list.related-issues tbody tr:first-child .buttons {
  -webkit-border-radius: 0 var(--border-radius) 0 0;
  -moz-border-radius: 0 var(--border-radius) 0 0;
  border-radius: 0 var(--border-radius) 0 0;
}
.controller-versions a.issue {
  margin: 0 5px 0 0;
  color: var(--text-color-main);
}
.controller-versions .priority-1:before {
  background: var(--priority-1);
}
.controller-versions .priority-2:before {
  background: var(--priority-2);
}
.controller-versions .priority-3:before {
  background: var(--priority-3);
}
.controller-versions .priority-4:before {
  background: var(--priority-4);
}
.controller-versions .priority-5:before {
  background: var(--priority-5);
}
.controller-versions.action-show div#roadmap {
  position: relative;
}
.controller-versions.action-show div#roadmap + fieldset {
  border: 0;
  margin: 20px 0 0;
  padding: 50px 0 0;
  position: relative;
  display: block;
}
.controller-versions.action-show div#roadmap + fieldset legend {
  font-weight: bold;
  position: relative;
  top: 50px;
  left: 0;
  line-height: 30px;
  display: block;
  width: 100%;
  padding: 0;
}
.controller-versions.action-show div#roadmap + fieldset legend:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: -50px;
  left: -30px;
  width: calc(100% + 60px);
  background: var(--bg-box);
  height: 30px;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
}
.controller-versions.action-show div#roadmap + fieldset legend .jcf-select {
  margin: 10px 0;
  font-weight: normal;
}
.controller-versions.action-show div#roadmap + fieldset legend .select2 {
  margin: 0 10px;
}
.controller-versions.action-show div#roadmap + fieldset legend #chart-unit-row {
  margin: 0 !important;
}
#version-summary fieldset {
  position: relative;
  padding: 60px 20px 20px;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  border: 0;
}
#version-summary fieldset legend {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: flex;
  align-items: center;
  font-weight: 600;
  color: var(--color-main-color);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
}
#version-summary fieldset legend .jcf-select {
  margin: 0 0 0 10px;
  font-weight: normal;
  flex: 1 0 auto;
  width: auto;
}
#version-summary fieldset legend .select2 {
  margin: 0 0 0 10px;
  font-weight: normal;
  width: auto;
}
#version-summary table.progress {
  background: var(--bg-fff);
}
#version-summary table.progress td.todo {
  background: var(--bg-fff);
}
/* END ROADMAP */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 1300px) {
  div#roadmap > form {
    width: 100%;
  }
  div#roadmap div#version-summary {
    width: 100%;
    margin: 0;
    float: none;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
  }
  div#roadmap div#version-summary .time-tracking,
  div#roadmap div#version-summary #status_by {
    width: calc(50% - 10px);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 1024px) {
  #version-summary fieldset {
    padding: 15px 10px;
  }
  #version-summary fieldset legend {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    top: 0;
    left: 0;
    padding: 10px;
    margin-left: -10px;
    margin-right: -10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: calc(100% + 20px);
    background: var(--bg-box);
    -webkit-border-radius: var(--border-radius);
    -moz-border-radius: var(--border-radius);
    border-radius: var(--border-radius);
  }
  #version-summary fieldset legend .jcf-select {
    margin: 5px 0 ;
    flex: 1 0 auto;
    width: 100%;
  }
  #version-summary fieldset legend .select2 {
    margin: 5px 0 ;
    width: 100%;
  }
  #main > #content div#roadmap h2 {
    background-color: var(--bg-box);
    background-position: 10px 50%;
    background-size: 25px auto;
    margin: 0 -10px 20px;
    padding: 15px 120px 15px 45px;
    width: calc(100% + 20px);
    display: flex;
    align-items: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .version-article {
    padding: 10px 10px 20px;
    margin: 0 0 10px;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -webkit-box-shadow: var(--box-shadow-null);
    -moz-box-shadow: var(--box-shadow-null);
    box-shadow: var(--box-shadow-null);
    position: relative;
  }
  .version-article:hover {
    -webkit-box-shadow: var(--box-shadow-null);
    -moz-box-shadow: var(--box-shadow-null);
    box-shadow: var(--box-shadow-null);
  }
  .version-article:after {
    content: '';
    display: block;
    clear: both;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: var(--border-color);
  }
  .version-article:last-child {
    margin: 0;
  }
  .version-article:last-child:after {
    display: none;
  }
  .version-overview table.progress {
    width: 100% !important;
    margin-right: 0 !important;
  }
  .controller-versions.loggedas.action-index #main > #content h3 {
    width: calc(100% - 40px);
  }
}
@media screen and (max-width: 650px) {
  .controller-versions.action-show div#roadmap + fieldset legend .select2 {
    margin: 5px 0;
    min-width: 100%;
  }
  div#roadmap div#version-summary {
    width: 100%;
    margin: 0;
    float: none;
    display: block;
  }
  div#roadmap div#version-summary .time-tracking,
  div#roadmap div#version-summary #status_by {
    width: calc(100% + 20px);
    margin: 0 -10px 20px;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  .controller-versions.action-index #main > #content h2 {
    margin-bottom: 20px;
  }
  #main > #content div#roadmap h2 {
    margin: 0 -10px 20px;
    font-size: 1.1428rem;
    line-height: 1.1428rem;
  }
}
/* END MEDIA*/
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START REDMINEEVOLUTION SMALL VIEW */
.controller-issues.action-index table.list tbody tr:last-child td:last-child,
.controller-issues.action-index table.list > tr:last-child td:last-child {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
.controller-issues.action-index table.list th.subject,
.controller-issues.action-index table.list td.subject {
  min-width: 20%;
}
.small-list-view #main .contextual:not(.next-prev-links) a.redmineevolution-small-view:not(#show_note_form_extras):after {
  content: "\E151";
}
#main .contextual:not(.next-prev-links) a.redmineevolution-small-view:not(#show_note_form_extras) {
  opacity: 1 !important;
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  color: var(--icon-color);
  vertical-align: middle;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  cursor: pointer;
}
#main .contextual:not(.next-prev-links) a.redmineevolution-small-view:not(#show_note_form_extras):after {
  content: "\E183";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-width);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main .contextual:not(.next-prev-links) a.redmineevolution-small-view:not(#show_note_form_extras):before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#main .contextual:not(.next-prev-links) a.redmineevolution-small-view:not(#show_note_form_extras):hover {
  color: var(--icon-color-hover-bg);
  background-image: none !important;
}
#main .contextual:not(.next-prev-links) a.redmineevolution-small-view:not(#show_note_form_extras):hover:before {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.small-list-view table.list th,
.small-list-view table.list td {
  font-size: 0.85714286rem;
  line-height: 1rem;
  padding: 2px 8px;
}
.small-list-view table.list th {
  padding: 5px 8px;
}
.small-list-view table.list td.subject a {
  padding: 5px 8px;
}
.small-list-view table.list.JColResizer th,
.small-list-view table.list.JColResizer td {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.small-list-view #main a.icon-only {
  width: 18px;
  height: 18px;
  min-height: 18px;
  min-width: 18px;
  padding: 0;
  margin: 0;
}
.small-list-view #main a.icon-only:after {
  font-size: 18px;
  line-height: 18px;
}
.small-list-view #main .list th a.icon:not(.add-checklist-item):after {
  height: 12px;
  width: 12px;
  font-size: 12px;
  line-height: 12px;
  margin: -6px 0 0;
}
/* END REDMINEEVOLUTION SMALL VIEW */
/* --------------------- https://redmine-evolution.com/ -- */
/* START REDMINE EVOLUTION BADGE  */
#top-menu .redmine-evolution-badge {
  width: var(--icon-width);
  height: var(--icon-width);
  float: right;
  margin: 0 20px 0 0;
}
#top-menu .redmine-evolution-badge .revo-badge {
  opacity: 1 !important;
  border: none;
  background: none;
  padding: 0 0 0 5px;
  display: inline-block;
  height: var(--icon-width);
  margin: 0;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color);
  vertical-align: middle;
  min-width: var(--icon-width);
  min-height: var(--icon-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  cursor: pointer;
}
#top-menu .redmine-evolution-badge .revo-badge:after {
  content: "\E153";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#top-menu .redmine-evolution-badge .revo-badge:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  height: var(--icon-width);
  width: var(--icon-width);
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#top-menu .redmine-evolution-badge .revo-badge:hover {
  color: var(--icon-color-hover);
  background-image: none !important;
}
#top-menu .redmine-evolution-badge .revo-badge:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#top-menu .redmine-evolution-badge .revo-number {
  position: absolute;
  font-size: 10px;
  line-height: 12px;
  z-index: 2;
  top: 0;
  right: 0;
  padding: 2px 3px 0;
  margin: 0 0 14px;
  min-width: 10px;
  text-align: center;
  color: var(--top-notification-color);
  background: var(--top-notification);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
.start-revo-modal-badge .redmine-evolution-badge-overlay,
.start-revo-modal-badge .revo-modal-badge {
  width: 100%;
  height: 100%;
}
.redmine-evolution-badge-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  background: var(--popup-overlay);
  opacity: 0;
  z-index: 1000;
}
.revo-modal-badge {
  position: fixed;
  top: 0;
  right: 0;
  padding: 0;
  margin: 0;
  z-index: 10001;
}
.revo-modal-badge .revo-close {
  position: absolute;
  top: 5px;
  right: 100%;
  background: var(--popup-close-bg-2) !important;
  border: none;
  background: none;
  outline: 0 none;
  padding: 0;
  display: inline-block;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  z-index: 2;
  background-size: var(--icon-width) var(--icon-width);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  -webkit-border-radius: var(--border-radius-small) 0 0 var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small) 0 0 var(--border-radius-small);
  border-radius: var(--border-radius-small) 0 0 var(--border-radius-small);
  font-size: 0px;
  line-height: 0px;
  color: var(--popup-close-color-2);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  -webkit-box-shadow: var(--main-box-shadow);
  -moz-box-shadow: var(--main-box-shadow);
  box-shadow: var(--main-box-shadow);
}
.revo-modal-badge .revo-close:after {
  text-indent: 0px;
  position: absolute;
  top: 0px;
  left: 0px;
  content: "\E0F3";
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--border-radius-small) 0 0 var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small) 0 0 var(--border-radius-small);
  border-radius: var(--border-radius-small) 0 0 var(--border-radius-small);
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
  z-index: 5;
}
.revo-modal-badge .revo-close:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--popup-close-bg-2);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  -webkit-border-radius: var(--icon-font) 0 0 var(--icon-font);
  -moz-border-radius: var(--icon-font) 0 0 var(--icon-font);
  border-radius: var(--icon-font) 0 0 var(--icon-font);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
  z-index: 4;
}
.revo-modal-badge .revo-close:hover {
  color: var(--popup-close-color-hover-2);
}
.revo-modal-badge .revo-close:hover:before {
  background: var(--popup-close-bg-hover-2);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.revo-modal-badge .revo-modal {
  position: absolute;
  top: 0;
  right: -500px;
  width: 450px;
  height: 100%;
  background: var(--bg);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 2;
  -webkit-box-shadow: var(--main-box-shadow);
  -moz-box-shadow: var(--main-box-shadow);
  box-shadow: var(--main-box-shadow);
}
.revo-modal-badge .holder-revo-content {
  overflow-y: auto;
  height: 100%;
  background: var(--bg);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.revo-modal-badge .revo-item-in {
  overflow-y: auto;
  height: 100%;
}
.revo-modal-badge .revo-holder-id {
  margin: 0 10px 0 0;
}
.revo-modal-badge .revo-holder-title {
  width: 100%;
  overflow: hidden;
  position: relative;
  background: var(--bg-title);
  border: 0;
  border-left-width: 4px;
  border-style: solid;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.revo-modal-badge .revo-holder-title:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0.2;
}
.revo-modal-badge .revo-holder-title .revo-title {
  display: block;
  padding: 10px;
  position: relative;
  z-index: 2;
}
.revo-modal-badge .revo-item.priority-1 .revo-holder-id {
  color: var(--priority-1);
}
.revo-modal-badge .revo-item.priority-1 .revo-holder-title {
  border-color: var(--priority-1);
}
.revo-modal-badge .revo-item.priority-1 .revo-holder-title:before {
  background: var(--priority-1);
}
.revo-modal-badge .revo-item.priority-1 .revo-item-list {
  border-color: var(--priority-1);
}
.revo-modal-badge .revo-item.priority-2 .revo-holder-id {
  color: var(--priority-2);
}
.revo-modal-badge .revo-item.priority-2 .revo-holder-title {
  border-color: var(--priority-2);
}
.revo-modal-badge .revo-item.priority-2 .revo-holder-title:before {
  background: var(--priority-2);
}
.revo-modal-badge .revo-item.priority-2 .revo-item-list {
  border-color: var(--priority-2);
}
.revo-modal-badge .revo-item.priority-3 .revo-holder-id {
  color: var(--priority-3);
}
.revo-modal-badge .revo-item.priority-3 .revo-holder-title {
  border-color: var(--priority-3);
}
.revo-modal-badge .revo-item.priority-3 .revo-holder-title:before {
  background: var(--priority-3);
}
.revo-modal-badge .revo-item.priority-3 .revo-item-list {
  border-color: var(--priority-3);
}
.revo-modal-badge .revo-item.priority-4 .revo-holder-id {
  color: var(--priority-4);
}
.revo-modal-badge .revo-item.priority-4 .revo-holder-title {
  border-color: var(--priority-4);
}
.revo-modal-badge .revo-item.priority-4 .revo-holder-title:before {
  background: var(--priority-4);
}
.revo-modal-badge .revo-item.priority-4 .revo-item-list {
  border-color: var(--priority-4);
}
.revo-modal-badge .revo-item.priority-5 .revo-holder-id {
  color: var(--priority-5);
}
.revo-modal-badge .revo-item.priority-5 .revo-holder-title {
  border-color: var(--priority-5);
}
.revo-modal-badge .revo-item.priority-5 .revo-holder-title:before {
  background: var(--priority-5);
}
.revo-modal-badge .revo-item.priority-5 .revo-item-list {
  border-color: var(--priority-5);
}
.revo-modal-badge .revo-item-list {
  padding: 10px 0;
  margin: 0;
  border: 0;
  border-left-width: 4px;
  border-style: solid;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: bold;
}
.revo-modal-badge .revo-item-list li {
  margin: 10px 0 0;
  background: var(--link-bg);
}
.revo-modal-badge .revo-item-list li:first-child {
  margin: 0;
}
.revo-modal-badge .revo-item-list li a {
  position: relative;
  display: flex;
  align-items: center;
  color: var(--link-color);
  background: var(--link-bg);
  width: 100%;
  padding: 10px 10px 10px 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-decoration: none;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.revo-modal-badge .revo-item-list li a > * {
  position: relative;
  z-index: 2;
}
.revo-modal-badge .revo-item-list li a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  width: 0;
  height: 100%;
  background: var(--link-bg);
  z-index: 1;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-transition: width var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out;
  margin: 0 !important;
}
.revo-modal-badge .revo-item-list li a:hover {
  text-decoration: none;
  color: var(--link-color-hover);
  border: 0;
}
.revo-modal-badge .revo-item-list li a:hover .holder-id {
  color: var(--link-color-hover);
}
.revo-modal-badge .revo-item-list li a:hover:before {
  width: 100%;
  background: var(--link-bg-hover);
}
.revo-modal-badge .revo-item-list li a .holder-id {
  color: var(--border-color);
  margin: 0 10px 0 0;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.revo-modal-badge .revo-holder-link {
  flex: 1;
  padding: 0 10px 0 0;
}
.revo-modal-badge .revo-holder-date {
  display: flex;
  align-items: center;
}
.revo-modal-badge .revo-holder-date .revo-date {
  white-space: nowrap;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  line-height: 10px;
  border: 1px solid var(--border-color);
  background: var(--link-bg);
  padding: 3px;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.revo-modal-badge .revo-holder-date .icon-warning {
  min-width: var(--icon-width-small);
  width: var(--icon-width-small);
  text-align: center;
  height: var(--icon-smaller-width);
  font-size: 22px;
  line-height: var(--icon-smaller-font-size);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  padding: 0;
  margin: 0 5px 0 0 !important;
}
.revo-modal-badge .revo-holder-date .icon-warning:after {
  text-align: center;
  min-width: var(--icon-width-small);
  width: var(--icon-width-small);
  height: 26px;
  font-size: 22px;
  line-height: 26px;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
.revo-modal-badge .revo-holder-date.overdue-date .icon-warning:after {
  color: var(--color-error);
}
.revo-modal-badge .revo-holder-date.overdue-date .revo-date {
  background: var(--color-error);
  color: var(--color-fff);
  border-color: var(--color-error);
}
.revo-modal-badge .revo-holder-date.warning-date .icon-warning:after {
  color: var(--color-warning);
}
.revo-modal-badge .revo-holder-date.warning-date .revo-date {
  background: var(--color-warning);
  color: var(--color-fff);
  border-color: var(--color-warning);
}
.revo-modal-badge .revo-holder-button {
  position: absolute;
  top: 50%;
  right: 10px;
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  margin: -13px 0 0;
}
.revo-modal-badge a.revo-icon {
  opacity: 1 !important;
  border: none;
  background: none;
  padding: 0 0 0 5px;
  display: inline-block;
  height: 30px;
  margin: 0;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0;
  line-height: 0;
  color: var(--color-dark-grey);
  vertical-align: middle;
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.revo-modal-badge a.revo-icon:after {
  content: "\E153";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
}
.revo-modal-badge a.revo-icon:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  background: var(--color-main-color);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
.revo-modal-badge a.revo-icon:hover {
  color: var(--color-main-color-text);
  background-image: none !important;
}
.revo-modal-badge a.revo-icon:hover:before {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.revo-modal-badge a.revo-icon.revo-time:after {
  content: "\E193";
}
.revo-modal-badge span.revo-icon {
  opacity: 1 !important;
  border: none;
  background: none;
  padding: 0 0 0 5px;
  display: inline-block;
  height: 30px;
  margin: 0;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--color-dark-grey);
  vertical-align: middle;
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  cursor: pointer;
}
.revo-modal-badge span.revo-icon:after {
  content: "\E153";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
}
.revo-modal-badge span.revo-icon.icon-warning:after {
  content: "\E19F";
}
@media screen and (max-width: 1024px) {
  #top-menu .redmine-evolution-badge {
    margin: 0;
  }
}
@media screen and (max-width: 650px) {
  .revo-modal-badge .revo-modal {
    width: 300px;
  }
}
@media screen and (max-width: 480px) {
  .revo-modal-badge .revo-modal {
    width: 280px;
  }
}
/* END REDMINE EVOLUTION BADGE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START REDMINE EVOLUTION TIME LOGGER */
#top-menu .redmine-evolution-top-menu {
  width: 126px;
  margin: 0 10px 0 0;
  position: relative;
  float: right;
}
#top-menu .redmine-evolution-top-menu:after {
  content: '';
  display: block;
  clear: both;
  width: 100%;
  height: 100%;
}
#top-menu .revo-time-box {
  width: 126px;
  display: flex;
  border: 1px solid var(--icon-color);
  padding: 0 1px 0 3px;
  margin: 0;
  float: right;
  height: 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
}
#top-menu .revo-time-box .revo-icon {
  opacity: 1 !important;
  border: none;
  background: none;
  padding: 0 0 0 5px;
  display: inline-block;
  height: var(--icon-smaller-width);
  margin: 0;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0;
  line-height: 0;
  color: var(--icon-color);
  vertical-align: middle;
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#top-menu .revo-time-box .revo-icon:after {
  content: "\E153";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 26px;
  width: 26px;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-width);
  line-height: var(--icon-smaller-width);
}
#top-menu .revo-time-box .revo-icon.icon-timer:after {
  content: "\E0BB";
}
#top-menu .revo-time-box .revo-icon.arrow-top {
  -webkit-transform: scale(0.7);
  -moz-transform: scale(0.7);
  -ms-transform: scale(0.7);
  -o-transform: scale(0.7);
  transform: scale(0.7);
}
#top-menu .revo-time-box .revo-icon.arrow-top:after {
  content: "\E0E0";
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
#top-menu .revo-time-box a.revo-icon:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  height: 26px;
  width: 26px;
  background: var(--icon-color);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#top-menu .revo-time-box a.revo-icon:hover {
  color: var(--color-fff);
  background-image: none !important;
}
#top-menu .revo-time-box a.revo-icon:hover:before {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#top-menu .revo-time-box .revo-time {
  color: var(--icon-color);
  padding: 0 5px;
  font-size: 12px;
  line-height: 28px;
}
#top-menu .open-modal .revo-modal-logger {
  visibility: visible;
  opacity: 1;
}
#top-menu .revo-modal-logger {
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 20;
  width: 400px;
  margin: 15px 0 0;
  background: var(--color-fff);
  color: var(--icon-color);
  -webkit-border-radius: var(--border-radius-midle);
  -moz-border-radius: var(--border-radius-midle);
  border-radius: var(--border-radius-midle);
  -webkit-box-shadow: var(--main-box-shadow);
  -moz-box-shadow: var(--main-box-shadow);
  box-shadow: var(--main-box-shadow);
  visibility: hidden;
  opacity: 0;
  -webkit-transition: visibility var(--time-hover) ease-in-out, opacity var(--time-hover) ease-in-out;
  -moz-transition: visibility var(--time-hover) ease-in-out, opacity var(--time-hover) ease-in-out;
  -ms-transition: visibility var(--time-hover) ease-in-out, opacity var(--time-hover) ease-in-out;
  -o-transition: visibility var(--time-hover) ease-in-out, opacity var(--time-hover) ease-in-out;
  transition: visibility var(--time-hover) ease-in-out, opacity var(--time-hover) ease-in-out;
}
#top-menu .revo-modal-logger .revo-top {
  overflow: hidden;
  width: 100%;
  padding: 10px 20px;
  display: block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#top-menu .revo-modal-logger .close-timer,
#top-menu .revo-modal-logger .timer-reset {
  float: right;
  position: relative;
  display: block;
  margin: 0 0 0 10px;
  background: #fff !important;
  border: none;
  background: none;
  outline: 0 none;
  padding: 0;
  height: 30px;
  width: 30px;
  overflow: hidden;
  z-index: 2;
  background-size: 30px 30px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--popup-close-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#top-menu .revo-modal-logger .close-timer:after,
#top-menu .revo-modal-logger .timer-reset:after {
  text-indent: 0px;
  position: absolute;
  top: 0px;
  left: 0px;
  content: "\E0F3";
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 30px;
  line-height: 30px;
  z-index: 5;
}
#top-menu .revo-modal-logger .close-timer:before,
#top-menu .revo-modal-logger .timer-reset:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--popup-close-color);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  -webkit-border-radius: var(--border-radius-small) 0 0 var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small) 0 0 var(--border-radius-small);
  border-radius: var(--border-radius-small) 0 0 var(--border-radius-small);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
  z-index: 4;
}
#top-menu .revo-modal-logger .close-timer:hover,
#top-menu .revo-modal-logger .timer-reset:hover {
  color: var(--color-fff);
}
#top-menu .revo-modal-logger .close-timer:hover:before,
#top-menu .revo-modal-logger .timer-reset:hover:before {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#top-menu .revo-modal-logger .timer-reset:after {
  content: "\E171";
}
#top-menu .revo-modal-logger .revo-play-info {
  display: flex;
  align-items: center;
  padding: 0 20px;
  position: relative;
}
#top-menu .revo-modal-logger .revo-play-info:hover {
  opacity: 1;
}
#top-menu .revo-modal-logger .revo-play-info .revo-in {
  display: block;
  width: 100%;
  bottom: 1px solid #cccccc;
}
#top-menu .revo-modal-logger .revo-play,
#top-menu .revo-modal-logger .revo-stop {
  width: 50px;
  height: 50px;
  display: block;
  background: var(--icon-color);
  color: #fff;
  position: relative;
  margin: 0 20px 0 0;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
}
#top-menu .revo-modal-logger .revo-play:after,
#top-menu .revo-modal-logger .revo-stop:after {
  content: "\E165";
  display: block;
  clear: both;
  position: absolute;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  top: 50%;
  left: 50%;
  margin: calc((var(--icon-width)/2) - var(--icon-width)) 0 0 calc((var(--icon-width)/2) - var(--icon-width));
  width: var(--icon-width);
  height: var(--icon-width);
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
}
#top-menu .revo-modal-logger .revo-stop {
  position: absolute;
  top: -9999999px;
  left: -9999999px;
}
#top-menu .revo-modal-logger .revo-stop:after {
  content: "\E18C";
}
#top-menu .revo-modal-logger .revo-valid .revo-play,
#top-menu .revo-modal-logger .revo-valid .revo-stop {
  background: var(--icon_color_active);
}
#top-menu .revo-modal-logger .revo-left {
  flex: 1 0 auto;
  display: flex;
  align-items: center;
  position: relative;
}
#top-menu .revo-modal-logger .revo-content-in {
  width: 100%;
  padding: 0 0 20px;
  border-bottom: 1px solid var(--icon-color);
  display: flex;
  align-items: center;
}
#top-menu .revo-modal-logger .revo-content-in .revo-left {
  flex: 1 0 auto;
}
#top-menu .revo-modal-logger .revo-content-in .revo-right {
  width: 120px;
  min-width: 120px;
}
#top-menu .revo-modal-logger .revo-timer-count {
  font-size: 1.42857143rem;
  line-height: 1.4;
  font-weight: bold;
  text-align: right;
}
#top-menu .revo-modal-logger .revo-today {
  text-align: right;
  font-size: 12px;
  line-height: 14px;
}
#top-menu .revo-modal-logger .revo-form {
  padding: 20px;
}
#top-menu .revo-modal-logger .revo-form.hidden {
  position: absolute;
  top: -999999px;
  left: -999999px;
}
#top-menu .revo-modal-logger select,
#top-menu .revo-modal-logger .select2 {
  width: 100% !important;
}
#top-menu .revo-modal-logger .holder-sel {
  margin: 10px 0 0;
}
#top-menu .revo-modal-logger .holder-sel:first-child {
  margin: 0;
}
#top-menu .revo-modal-logger textarea {
  width: 100%;
  height: 100px;
}
#top-menu .revo-modal-logger input[type="url"],
#top-menu .revo-modal-logger input[type="email"],
#top-menu .revo-modal-logger input[type="password"],
#top-menu .revo-modal-logger input[type="text"],
#top-menu .revo-modal-logger input[type="number"],
#top-menu .revo-modal-logger input[type="date"],
#top-menu .revo-modal-logger textarea:not(.select2-search__field) {
  height: 30px;
  box-sizing: border-box;
  border: 1px solid var(--border-color);
  padding: 6px 12px;
  font-size: 0.85714286rem;
  line-height: 1.28571429rem;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  color: var(--text-color);
  margin: 0;
  min-width: 190px;
  outline: 0 none;
  width: 100%;
  max-width: 100%;
  flex: 1;
  background: #fff;
  min-height: 30px;
  -webkit-appearance: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
#top-menu .revo-modal-logger textarea:not(.select2-search__field) {
  min-height: 60px;
}
#top-menu .revo-modal-logger .holder-task-id {
  overflow: hidden;
  width: 100%;
  font-size: 12px;
  line-height: 14px;
}
#top-menu .revo-modal-logger .holder-task-id strong {
  font-weight: normal;
}
#top-menu .revo-modal-logger form,
#top-menu .revo-modal-logger form fieldset {
  display: block;
  padding: 0;
  margin: 0;
  border: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  -o-appearance: none;
}
#select2-revoissues-results .select2-results__option--disabled {
  position: absolute;
  top: -99999px;
  left: -99999px;
}
/* START TIME LOGGER */
.start-time-logger #top-menu .revo-time-box {
  border-color: var(--start-time-bg-time);
  background: var(--start-time-bg-time);
  color: var(--start-time-text-color);
}
.start-time-logger #top-menu .revo-time-box .revo-time,
.start-time-logger #top-menu .revo-time-box .revo-icon {
  color: var(--start-time-text-color);
}
.start-time-logger #top-menu .revo-play {
  position: absolute;
  top: -9999999px;
  left: -9999999px;
}
.start-time-logger #top-menu .revo-stop {
  position: relative;
  top: 0;
  left: 0;
}
.start-time-logger #top-menu .revo-modal-logger {
  background: var(--start-time-bg-time);
}
.start-time-logger #top-menu .revo-modal-logger .revo-top {
  color: var(--start-time-text-color);
}
.start-time-logger #top-menu .revo-modal-logger .revo-play-info {
  color: var(--start-time-text-color);
}
.start-time-logger #top-menu .revo-modal-logger .revo-valid .revo-play,
.start-time-logger #top-menu .revo-modal-logger .revo-valid .revo-stop {
  background: var(--text-color);
  color: var(--start-time-text-color);
}
#holder-mod-time {
  position: fixed;
  top: -99999999px;
  left: -999999999px;
  width: 100%;
  height: 100%;
  overflow-y: auto;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
}
#holder-mod-time.open {
  top: 0;
  left: 0;
}
#holder-mod-time:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--color-fff);
  opacity: 0.95;
  z-index: 1;
}
#holder-mod-time .ui-dialog {
  z-index: 1000;
  position: relative;
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
}
#holder-mod-time .ui-dialog-content {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#holder-mod-time .ui-dialog-titlebar {
  overflow: hidden;
}
#holder-mod-time .revo-holder-list {
  padding: 0;
  margin: 0 0 20px;
  list-style: none;
  line-height: 18px;
}
#holder-mod-time .revo-holder-list li {
  margin: 5px 0 0;
}
#holder-mod-time .revo-holder-list li:first-child {
  margin: 0;
}
#holder-mod-time .revo-holder-list label {
  display: inline-block;
  overflow: hidden;
  line-height: 18px;
}
#holder-mod-time .text-red {
  color: #fd7285;
  font-weight: bold;
}
#holder-mod-time .revo-title {
  display: block;
  margin: 0 0 10px;
}
#holder-mod-time .revo-title2 {
  margin: 0 0 5px;
  display: block;
}
#holder-mod-time div.ui-dialog .buttons input[type="submit"] {
  margin: 0;
}
@media screen and (max-width: 1024px) {
  #top-menu .redmine-evolution-top-menu {
    width: 100px;
  }
  #top-menu .revo-time-box {
    width: 100px;
  }
  #top-menu .revo-time-box .revo-icon.arrow-top {
    display: none;
  }
}
@media screen and (max-width: 650px) {
  #top-menu .revo-modal-logger {
    position: fixed;
    left: auto !important;
    right: 0 !important;
    top: 60px !important;
    margin: 0;
    width: 100%;
  }
  #top-menu .revo-modal-logger .revo-play-info {
    padding-left: 10px;
    padding-right: 10px;
  }
  #top-menu .revo-modal-logger .revo-top {
    padding-left: 10px;
    padding-right: 10px;
  }
  #top-menu .revo-modal-logger .revo-content-in {
    display: block;
    padding-bottom: 10px;
  }
  #top-menu .revo-modal-logger .revo-content-in .revo-left {
    width: 100%;
    margin: 0 0 10px;
  }
  #top-menu .revo-modal-logger .revo-content-in .revo-right {
    width: 100%;
    text-align: right;
  }
  #top-menu .redmine-evolution-top-menu {
    width: 28px;
    margin: 0 5px 0 0;
  }
  #top-menu .revo-time-box {
    width: 28px;
    height: 28px;
    padding: 0;
    margin: 0;
  }
  #top-menu .revo-time-box .icon-timer {
    padding: 0;
    margin: 0;
  }
  #top-menu .revo-time-box .revo-time,
  #top-menu .revo-time-box .arrow-top {
    display: none;
  }
}
#revo-time-entry {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity var(--time-hover) ease-in-out, visibility var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out, visibility var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out, visibility var(--time-hover) ease-in-out;
}
#revo-time-entry.open {
  opacity: 1;
  visibility: visible;
}
/* END REDMINE EVOLUTION TIME LOGGER */
/* --------------------- https://redmine-evolution.com/ -- */
/* 21.04.2022 */
/* START RESIZABLE COLUMN */
.rc-handle-container {
  position: relative;
}
.rc-handle {
  position: absolute;
  width: 7px;
  cursor: ew-resize;
  margin-left: -3px;
  z-index: 2;
}
table.rc-table-resizing {
  cursor: ew-resize;
}
table.rc-table-resizing thead,
table.rc-table-resizing thead > th,
table.rc-table-resizing thead > th > a {
  cursor: ew-resize;
}
/* END RESIZABLE COLUMN */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9mb250cy5sZXNzIiwiX3ZhcnNfY29sb3VyLmxlc3MiLCJfdmFycy5sZXNzIiwiX3NlbGVjdDIubGVzcyIsIl9jb21tb24ubGVzcyIsIl92YXJzLWljb24ubGVzcyIsIl9jb250ZW50X2xlZnQubGVzcyIsIl9jYWxlbmRhci5sZXNzIiwiX2FjdGl2aXR5Lmxlc3MiLCJfd29yay12YXJzLmxlc3MiLCJfYWRtaW5pc3RyYXRpb24ubGVzcyIsIl9kb2N1bWVudHMubGVzcyIsIl9mb3J1bXMubGVzcyIsIl9oZWFkZXJfbGVmdC5sZXNzIiwiX2ljb25zLmxlc3MiLCJfaXNzdWVzX2xlZnRfc2lkZWJhci5sZXNzIiwiX2pjZi5sZXNzIiwiX2xvZ2luLmxlc3MiLCJfbWFpbl9tZW51X2xlZnRfc2lkZWJhci5sZXNzIiwiX215LXBhZ2UubGVzcyIsIl9uZXdzLmxlc3MiLCJfb3ZlcnZpZXcubGVzcyIsIl9wYWdpbmF0aW9uLmxlc3MiLCJfcHJvamVjdHMubGVzcyIsIl9zaWRlYmFyX2xlZnQubGVzcyIsIl90b3BfbWVudS5sZXNzIiwiX3VpX3dpZGdldC5sZXNzIiwiX3dpa2kubGVzcyIsIl9zZWFyY2gubGVzcyIsIl9yb2FkbWFwLmxlc3MiLCJfcmVkbWluZWV2b2x1dGlvbi1zbWFsbC12aWV3Lmxlc3MiLCJfcmVkbWluZWV2b2x1dGlvbi1iYWdlLXRpbWUubGVzcyIsIl9yZWRtaW5lZXZvbHV0aW9uLXRpbWUtbG9nZ2VyLmxlc3MiLCJfcmVzaXphYmxlX2NvbHVtbnMubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUtBO0VBQ0UsYUFBYSxhQUFiO0VBQ0EsU0FBUywyQkFBVDtFQUNBLFNBQVMsbUNBQW1DLE9BQU8sWUFDL0MsNkJBQTZCLE9BQU8sYUFDcEMsNEJBQTRCLE9BQU8sV0FGdkM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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Iiwic291cmNlc0NvbnRlbnQiOlsiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG4vKiBDT01NT04gUFJPSkVDVCBWQVJJQUJMRVMgKi9cclxuLyogMjEuMDMuMjAyMiAqL1xyXG5cclxuLyogU1RBUlQgSUNPTlMtRk9OVFMgKi9cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6IFwiV0ZTLVJNLWZvbnRcIjtcclxuICBzcmM6IHVybCgnLi4vZm9udHMvV0ZTLVJNLWZvbnQuZW90Jyk7XHJcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL1dGUy1STS1mb250LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VvdCcpLFxyXG4gIHVybCgnLi4vZm9udHMvV0ZTLVJNLWZvbnQud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG4gIHVybCgnLi4vZm9udHMvV0ZTLVJNLWZvbnQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpXHJcbiAgLy91cmwoJy4uL2ZvbnRzL1dGUy1STS1mb250LnN2ZyNXRlMtUk0tZm9udCcpIGZvcm1hdCgnc3ZnJyk7XHJcbn1cclxuXHJcbi8vQGZvbnQtZmFjZSB7XHJcbi8vICBmb250LWZhbWlseTogXCJXRlMtUk0tdGhpbi1mb250XCI7XHJcbi8vICBzcmM6IHVybCgnLi4vZm9udHMvV0ZTLVJNLXRoaW4tZm9udC5lb3QnKTtcclxuLy8gIHNyYzogdXJsKCcuLi9mb250cy9XRlMtUk0tdGhpbi1mb250LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VvdCcpLFxyXG4vLyAgdXJsKCcuLi9mb250cy9XRlMtUk0tdGhpbi1mb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuLy8gIHVybCgnLi4vZm9udHMvV0ZTLVJNLXRoaW4tZm9udC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXHJcbi8vICB1cmwoJy4uL2ZvbnRzL1dGUy1STS10aGluLWZvbnQuc3ZnI1dGUy1STS1mb250JykgZm9ybWF0KCdzdmcnKTtcclxuLy99XHJcbi8qIEVORCBJQ09OUy1GT05UUyAqL1xyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBDT0xPUiBWQVJJQUJMRVMgKi9cclxuQGZmZjogI2ZmZmZmZjtcclxuQGRhcms6ICMyZjJmMmY7XHJcbkBzdWRlcmRhcmtncmV5OiAjNzc3Nzc3O1xyXG5AZ3JleTogI2NjY2NjYztcclxuLy9AYmx1ZTogIzQzOGFmZjtcclxuQGJsdWU6ICM3NjAwYmE7XHJcbkBibHVlNTA6ICNhMWM0ZmY7XHJcbkBibHVlUmdiYTogNjcsMTM4LDI1NTtcclxuLy9AbGlnaHRCbHVlOiAjZWNmM2ZmO1xyXG5AbGlnaHRCbHVlOiAjZjcwMGY0O1xyXG5AYm9keTogI2Y4ZjRmZTtcclxuLy9AYm9keTogI2Y0ZjdmYztcclxuQHJlZF9ib3JkZXJfZXJyb3I6ICNmZjY2NjY7XHJcbkByZWRfZXJyb2Y6ICNlNDdkN2Q7XHJcbkBncmV5X2xpZ2h0OiAjZDBkMGQwO1xyXG5Ac3VwZXJfZ3JleV9saWdodDogI2ViZWJlYztcclxuQHByaW9yaXR5LTE6ICM0MzhhZmY7XHJcbkBwcmlvcml0eS0yOiAjNmFjMjU5O1xyXG5AcHJpb3JpdHktMzogI2Y1YzIyNTtcclxuQHByaW9yaXR5LTQ6ICNmNzAwZjQ7XHJcbkBwcmlvcml0eS01OiAjZjAwO1xyXG5AdHJhY2tlci0xOiAjZmQ3Mjg1O1xyXG5AdHJhY2tlci0yOiAjNmFjMjU5O1xyXG5AdHJhY2tlci0zOiAjNTQ5M2ZmO1xyXG5AaG92ZXJCZzogI2RkZWNmYjtcclxuQGZiZmNmZTogI2ZiZmNmZTtcclxuQGdyZWVuLWRhcms6ICM2YWMyNTk7XHJcbkByZWQ6ICNmZDcyODU7XHJcbkBkYXJrZ3JleTogI0E1QTVBNTtcclxuQGJnbWVudTogIzgxOEU5NDtcclxuLy9AdG9vbHRpcC1iZzogIzQzOGFmZjtcclxuQHRvb2x0aXAtYmc6ICNmMDA7XHJcbkBzZWxlY3RUYWJsZTogI2FmZDZmZDtcclxuXHJcbkBub3RpY2Utc3VjY2Vzc2Z1bDogIzZhYzI1OTtcclxuQHJlZDogI2ZkNzI4NTtcclxuXHJcbkBlcnJvcjogI2YwMDtcclxuQGljb253YXJuaW5nOiAjZmY4NDAwO1xyXG5cclxuXHJcbkBtYWluQnV0dG9uQmc6IEBibHVlO1xyXG5AbWFpbkJ1dHRvbkNvbG9yOiBAZmZmO1xyXG5AbWFpbkJ1dHRvbkJnSG92ZXI6IEBib2R5O1xyXG5AbWFpbkJ1dHRvbkNvbG9ySG92ZXI6IEBibHVlO1xyXG5cclxuQG1haW5CdXR0b25CZy1ib3g6IEBibHVlO1xyXG5AbWFpbkJ1dHRvbkNvbG9yLWJveDogQGZmZjtcclxuQG1haW5CdXR0b25CZ0hvdmVyLWJveDogQGZmZjtcclxuQG1haW5CdXR0b25Db2xvckhvdmVyLWJveDogQGJsdWU7XHJcblxyXG5AYnV0dG9uQmc6IEBib2R5O1xyXG5AYnV0dG9uQ2xvbG9yOiBAYmx1ZTtcclxuQGJ1dHRvbkJnSG92ZXI6IEBibHVlO1xyXG5AYnV0dG9uQ2xvbG9ySG92ZXI6IEBmZmY7XHJcblxyXG5AYnV0dG9uV2hpdGU6IEBmZmY7XHJcbkBidXR0b25XaGl0ZUNsb2xvcjogQGJsdWU7XHJcbkBidXR0b25XaGl0ZUJnSG92ZXI6IEBibHVlO1xyXG5AYnV0dG9uV2hpdGVDbG9sb3JIb3ZlcjogQGZmZjtcclxuXHJcbkBidXR0b25CZ0Rpc2FibGVkOiBAZGFya2dyZXk7XHJcbkBidXR0b25DbG9sb3JEaXNhYmxlZDogQGZmZjtcclxuQGJ1dHRvbkJnSG92ZXJEaXNhYmxlZDogQGRhcmtncmV5O1xyXG5AYnV0dG9uQ2xvbG9ySG92ZXJEaXNhYmxlZDogQGZmZjtcclxuXHJcbkBkcm9wcExpbmtNYWluOiBAYm9keTtcclxuQGRyb3BwTGlua01haW5Db2xvcjogQGRhcms7XHJcbkBkcm9wcExpbmtNYWluQXJyb3c6IEBiZ21lbnU7XHJcbkBkcm9wcExpbmtNYWluQXJyb3dCZzogQGZmZjtcclxuQGRyb3BwTGlua01haW5BcnJvd0hvdmVyOiBAYmx1ZTtcclxuXHJcbkBpY29uLWJveC1jb2xvcjogQGJnbWVudTtcclxuQGljb24tYm94LWJhY2tncm91bmQ6IEBmZmY7XHJcbkBpY29uLWJveC1jb2xvci1ob3ZlcjogQGJsdWU7XHJcblxyXG5AaWNvbi1zZWFyY2gtY29sb3I6IEBiZ21lbnU7XHJcbkBpY29uLXNlYXJjaC1iYWNrZ3JvdW5kOiBAZmZmO1xyXG5AaWNvbi1zZWFyY2gtY29sb3ItaG92ZXI6IEBmZmY7XHJcbkBpY29uLXNlYXJjaC1iYWNrZ3JvdW5kLWhvdmVyOiBAYmx1ZTtcclxuXHJcbi8qIEVORCBDT0xPUiBWQVJJQUJMRVMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE5PVElDRSAqL1xyXG5cclxuQGJnLW5vdGljZS1zdWNjZXNzZnVsOiAjZTFmM2RlO1xyXG5cclxuQHJlZC1ub3RpY2UtZXJyb3I6ICNmZDcyODU7XHJcbkBiZy1ub3RpY2UtZXJyb3I6ICNmZmUzZTc7XHJcblxyXG4vL0BibHVlLWxpZ2h0LWJnOiAjZTBlY2ZmO1xyXG5AYmx1ZS1saWdodC1iZzogI2NmYWVlMjtcclxuXHJcbi8qRDlFOEZGKi9cclxuXHJcbkB5ZWxsb3c6ICNmNWMyMjU7XHJcbkBsaWdodC15ZWxsb3c6ICNmZGY1Y2Y7XHJcblxyXG4vKiBFTkQgTk9USUNFICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBNT0JJTEUgTUVOVSAqL1xyXG5AZmx5b3V0LW1lbnUtYmc6ICM0MzhhZmY7XHJcbkBtZW51LXRpdGxlLWJnOiAjMDA2N2MzO1xyXG5AbWVudS10aXRsZS1jb2xvcjogI2ZmZmY7XHJcbkBqcy1nZW5lcmFsLW1lbnUtYmc6ICM4MTdlZmY7XHJcbkBzZWxlY3QtYmctcmVkbWluZXVwOiAjNWY1YmZhO1xyXG5AanMtZ2VuZXJhbC1tZW51LWNvbG9yOiAjZmZmO1xyXG5AanMtcHJvZmlsZS1tZW51LWJnOiAjMTBhNTc4O1xyXG5AanMtcHJvZmlsZS1tZW51LWNvbG9yOiAjZmZmO1xyXG5AbWVudS1hZG1pbi1tZW51LWJnOiAjNmI4ZWZmO1xyXG5AbWVudS1hZG1pbi1tZW51LWNvbG9yOiAjZmZmO1xyXG5AbW9iaWxlLW1lbnUtY2hpbGRyZW4tYmc6ICM2OGJlZWY7XHJcbkBtb2JpbGUtbWVudS1jaGlsZHJlbi1jb2xvcjogI2ZmZmY7XHJcbkBtb2JpbGUtY3VzdG9tZXJfcHJvZmlsZS1iZzogI2Y0ZTlmMjtcclxuQG1vYmlsZS1jdXN0b21lcl9wcm9maWxlLWNvbG9yOiBAZGFyaztcclxuQGN1c3RvbWVyX3ByZXZpb3VzX2lzc3Vlcy1iZzogIzZiOGVmZjtcclxuQGN1c3RvbWVyX3ByZXZpb3VzX2lzc3Vlcy1jb2xvcjogI2ZmZmZmZjtcclxuQG1vYmlsZS1pc3N1ZS1jb250YWN0cy1iZzogIzAxZGM3ZDtcclxuQG1vYmlsZS1pc3N1ZS1jb250YWN0cy1jb2xvcjogI2ZmZmY7XHJcbkBtb2JpbGUtd2F0Y2hlcnMtYmc6ICMxZWM1OTI7XHJcbkBtb2JpbGUtd2F0Y2hlcnMtY29sb3I6ICNmZmY7XHJcblxyXG4vKiBFTkQgTU9CSUxFIE1FTlUgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEJPWC1TSEFET1dTICovXHJcblxyXG5AYmlnc2hhZG93OiAwIDEwcHggMTBweCByZ2JhKDAsMCwwLDAuMSk7XHJcbkBiaWdzaGFkb3dOdWxsOiAwIDEwcHggMTBweCByZ2JhKDAsMCwwLDApO1xyXG5AYmlnc2hhZG93aG92ZXI6IDAgMTBweCAxMHB4IHJnYmEoNjcsMTM4LDI1NSwwLjUpO1xyXG5AbW9kYWxzaGFkb3c6IDAgMCAyMHB4IHJnYmEoMCwwLDAsMC4yKTtcclxuQHNoYWRvd3NtYWxsOiAzcHggM3B4IDZweCByZ2JhKDAsMCwwLDAuMik7XHJcblxyXG4vKiBFTkQgQk9YLVNIQURPV1MgKi9cclxuXHJcbi8qIFNUQVJUIHRhYmxlcyAqL1xyXG5AdGFibGVzX2NvbG9yOiAjMzczNzM3O1xyXG4vKiBFTkQgdGFibGVzKi9cclxuXHJcblxyXG4vKiBTVEFSVCBwYWdpbmF0aW9uICovXHJcbkBwYWdpbmF0aW9uX2NvbG9yOiAjODE4RTk0O1xyXG4vKiBFTkQgcGFnaW5hdGlvbiovXHJcblxyXG5cclxuLy9mY2Y2ZmEgKyBhZTAwZTBcclxuXHJcblxyXG4vKiBTVEFSVCBUT1AgTUVOVSAqL1xyXG5cclxuQHRvcF9tZW51X2JnOiBAZmZmO1xyXG5AdG9wX21lbnVfaWNvbl9jb2xvcjogQGRhcmtncmV5O1xyXG5AdG9wX21lbnVfYm9yZGVyOiBAZ3JleTtcclxuXHJcblxyXG4vKiBIT1ZFUiAqL1xyXG5AdG9wX21lbnVfaWNvbl9jb2xvcl9ob3ZlcjogQGZmZjtcclxuQHRvcF9tZW51X2ljb25fYmdfaG92ZXI6IEBibHVlO1xyXG5cclxuXHJcbkB0b3BfbWVudV9kcm9wZG93bl9iZzogQGZmZjtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2NvbG9yOiBAZGFyaztcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2FmdGVyOiBAbGlnaHRCbHVlO1xyXG5AdG9wX21lbnVfZHJvcGRvd25faWNvbjogQGRhcmtncmV5O1xyXG5AdG9wX21lbnVfZHJvcGRvd25faWNvbl9ob3ZlcjogQGJsdWU7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9ib3JkZXI6IEBncmV5O1xyXG5AdG9wX21lbnVfZHJvcGRvd25fY29sb3JfaG92ZXI6IEBibHVlO1xyXG5cclxuLyogRU5EIFRPUCBNRU5VICovXHJcblxyXG4vKiBTVEFSVCBNQUlOIE1FTlUgKi9cclxuQG1haW5fbWVudV9iZzogQGZmZjtcclxuQG1haW5fbWVudV9jb2xvcjogQGRhcms7XHJcbkBtYWluX21lbnVfYm9yZGVyOiBAZ3JleTtcclxuQG1haW5fbWVudV9jb2xvcl9pY29uOiBAYmdtZW51O1xyXG5AbWFpbl9tZW51X2NvbG9yX2ljb25faG92ZXI6IEBibHVlO1xyXG5AbWFpbl9tZW51X2JnX2hvdmVyOiBAZmZmO1xyXG5AbWFpbl9tZW51X2NvbG9yX2hvdmVyOiBAYmx1ZTtcclxuQG1haW5fbWVudV9kcm9wX2JnX2hvdmVyOiBAaG92ZXJCZztcclxuQG1haW5fbWVudV9zY3JvbGxiYXI6IEBzdXBlcl9ncmV5X2xpZ2h0O1xyXG5AbWFpbl9tZW51X3Njcm9sbGJhcl9oYW5kbGU6IEBibHVlO1xyXG5cclxuLyogTU9CSUxFICovXHJcbkBmbHlvdXRfbWVudV9iZzogQGJsdWU7XHJcbkBmbHlvdXRfbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X2JvcmRlcjogQGZmZjtcclxuQGZseW91dF9tZW51X2J1dHRvbl9iZzogQGZmZjtcclxuQGZseW91dF9tZW51X2J1dHRvbl9jb2xvcjogQGJsdWU7XHJcbkBmbHlvdXRfbWVudV9iZ19zZWxlY3RlZDogQHJlZDtcclxuQGZseW91dF9tZW51X2NvbG9yX3NlbGVjdGVkOiBAZmZmO1xyXG5AZmx5b3V0X21lbnVfdGl0bGVfYmc6IEBtZW51LXRpdGxlLWJnO1xyXG5AZmx5b3V0X21lbnVfdGl0bGVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9hZG1pbl9tZW51X2JnOiBAbWVudS1hZG1pbi1tZW51LWJnO1xyXG5AZmx5b3V0X21lbnVfYWRtaW5fbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X2dlbmVyYWwtbWVudV9iZzogQGpzLWdlbmVyYWwtbWVudS1iZztcclxuQGZseW91dF9tZW51X2dlbmVyYWwtbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X3Byb2ZpbGUtbWVudV9iZzogQGpzLXByb2ZpbGUtbWVudS1iZztcclxuQGZseW91dF9tZW51X3Byb2ZpbGUtbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X3dhdGNoZXJzLW1lbnVfYmc6IEBtb2JpbGUtd2F0Y2hlcnMtYmc7XHJcbkBmbHlvdXRfbWVudV93YXRjaGVycy1tZW51X2NvbG9yOiBAZmZmO1xyXG5cclxuLyogRU5EIE1BSU4gTUVOVSAqL1xyXG5cclxuXHJcblxyXG5cclxuXHJcbi8qIG5ldyAgKi9cclxuXHJcbkBtYWluX2JnOiAjMjkyZjRjO1xyXG5AbWFpbl9iZ19jb2xvcjogI2ZmZjtcclxuQG1haW5fYmdfZGFyazogIzEwMTMxZTtcclxuQGdyZXlfbWVudTogIzZhNmU4MjtcclxuQGNvbnRlbnRfYmc6ICNmNWY2Zjg7XHJcbkBjb250ZW50X2ljb25fY29sb3I6ICM2NzY4Nzk7XHJcbkBjb250ZW50X2ljb25fYmc6ICNjY2U1ZmY7XHJcblxyXG4vKiBTVEFSVCBUT1AgTUVOVSAqL1xyXG5cclxuQHRvcF9tZW51X2JnOiAjZjVmNmY4O1xyXG5AdG9wX21lbnVfYm9yZGVyOiAjZTZlOWVmO1xyXG5cclxuXHJcbi8qIEhPVkVSICovXHJcbkB0b3BfbWVudV9pY29uX2NvbG9yOiAjNjc2ODc5O1xyXG5AdG9wX21lbnVfaWNvbl9jb2xvcl9ob3ZlcjogIzMyMzMzODtcclxuQHRvcF9tZW51X2ljb25fY29sb3JfYWN0aXZlOiAjMzIzMzM4O1xyXG5AdG9wX21lbnVfaWNvbl9iZzogI2U1ZjRmZjtcclxuQHRvcF9tZW51X2ljb25fYmdfaG92ZXI6ICNlNWY0ZmY7XHJcbkB0b3BfbWVudV9pY29uX2JnX2FjdGl2ZTogI2U1ZjRmZjtcclxuXHJcblxyXG5AdG9wX21lbnVfZHJvcGRvd25fYmc6IEBmZmY7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9jb2xvcjogQGRhcms7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9hZnRlcjogQGxpZ2h0Qmx1ZTtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2ljb246IEBkYXJrZ3JleTtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2ljb25faG92ZXI6IEBibHVlO1xyXG5AdG9wX21lbnVfZHJvcGRvd25fYm9yZGVyOiBAZ3JleTtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2NvbG9yX2hvdmVyOiBAYmx1ZTtcclxuXHJcbi8qIEVORCBUT1AgTUVOVSAqL1xyXG5cclxuLyogU1RBUlQgTUFJTiBNRU5VICovXHJcblxyXG5AbWFpbl9tZW51X2JnOiBAbWFpbl9iZztcclxuQG1haW5fbWVudV9jb2xvcjogQG1haW5fYmdfY29sb3I7XHJcbkBtYWluX21lbnVfYm9yZGVyOiBAbWFpbl9iZztcclxuQG1haW5fbWVudV9jb2xvcl9pY29uOiBAbWFpbl9iZ19jb2xvcjtcclxuQG1haW5fbWVudV9jb2xvcl9pY29uX2hvdmVyOiBAbWFpbl9iZ19jb2xvcjtcclxuQG1haW5fbWVudV9iZ19ob3ZlcjogQG1haW5fYmdfZGFyaztcclxuQG1haW5fbWVudV9jb2xvcl9ob3ZlcjogQG1haW5fYmdfY29sb3I7XHJcbkBtYWluX21lbnVfYmdfc2VsZWN0ZWQ6IEBncmV5X21lbnU7XHJcbkBtYWluX21lbnVfY29sb3Jfc2VsZWN0ZWQ6IEBtYWluX2JnX2NvbG9yO1xyXG5AbWFpbl9tZW51X2Ryb3BfYmdfaG92ZXI6IEBtYWluX2JnX2Rhcms7XHJcblxyXG5cclxuLyogTU9CSUxFICovXHJcbkBmbHlvdXRfbWVudV9iZzogQGJsdWU7XHJcbkBmbHlvdXRfbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X2JvcmRlcjogQGZmZjtcclxuQGZseW91dF9tZW51X2J1dHRvbl9iZzogQGZmZjtcclxuQGZseW91dF9tZW51X2J1dHRvbl9jb2xvcjogQGJsdWU7XHJcbkBmbHlvdXRfbWVudV9iZ19zZWxlY3RlZDogQHJlZDtcclxuQGZseW91dF9tZW51X2NvbG9yX3NlbGVjdGVkOiBAZmZmO1xyXG5AZmx5b3V0X21lbnVfdGl0bGVfYmc6IEBtZW51LXRpdGxlLWJnO1xyXG5AZmx5b3V0X21lbnVfdGl0bGVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9hZG1pbl9tZW51X2JnOiBAbWVudS1hZG1pbi1tZW51LWJnO1xyXG5AZmx5b3V0X21lbnVfYWRtaW5fbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X2dlbmVyYWwtbWVudV9iZzogQGpzLWdlbmVyYWwtbWVudS1iZztcclxuQGZseW91dF9tZW51X2dlbmVyYWwtbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X3Byb2ZpbGUtbWVudV9iZzogQGpzLXByb2ZpbGUtbWVudS1iZztcclxuQGZseW91dF9tZW51X3Byb2ZpbGUtbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X3dhdGNoZXJzLW1lbnVfYmc6IEBtb2JpbGUtd2F0Y2hlcnMtYmc7XHJcbkBmbHlvdXRfbWVudV93YXRjaGVycy1tZW51X2NvbG9yOiBAZmZmO1xyXG5cclxuLyogRU5EIE1BSU4gTUVOVSAqL1xyXG5cclxuXHJcbkBkYXJrX2JsdWU6ICMyOTJmNGM7XHJcbkBmZmY6ICNmZmY7XHJcbkBkYXJrOiAjMTAxMzFlO1xyXG5AZ3JleV9tZW51OiAjNmE2ZTgyO1xyXG5AY29udGVudF9iZzogI2Y1ZjZmODtcclxuQGNvbnRlbnRfaWNvbl9jb2xvcjogIzY3Njg3OTtcclxuQGNvbnRlbnRfaWNvbl9iZzogI2NjZTVmZjtcclxuXHJcbi8qIENPTlRFTlQgQ09MT1IgU0VUVElOR1MgICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG5AYmx1ZTogIzc2MDBiYTtcclxuQGJsdWU1MDogI2ExYzRmZjtcclxuQGJsdWVSZ2JhOiA2NywxMzgsMjU1O1xyXG4vL0BsaWdodEJsdWU6ICNlY2YzZmY7XHJcbkBsaWdodEJsdWU6ICNmNzAwZjQ7XHJcbkBib2R5OiAjZjhmNGZlO1xyXG5cclxuOnJvb3Qge1xyXG4gIC8qIFNUQVJUIEdFTkVSQUwgQ09MT1IgKi9cclxuXHJcbiAgLS1jb2xvci1mZmY6ICNmZmY7XHJcbiAgLS1jb2xvci1kYXJrOiAjMTAxMzFlO1xyXG4gIC0tY29sb3ItYmx1ZTogIzY1NEVGRjtcclxuICAtLWNvbG9yLWRhcmNrLWJsdWU6ICM4QTc4RDA7XHJcbiAgLS1jb2xvci1ibHVlLWxpZ2h0OiAjY2NlNWZmO1xyXG4gIC8vINGF0L7QstC10YAg0L/RgNC+0YHRgtC+0Lkg0LrQvdC+0L/QutC4IC0gI2U2ZTllZiAvINCx0L7RgNC00LXRgCAtICNjNWM3ZDBcclxuICAgIC0tY29sb3ItcmVkOiAjRkY1NzU3O1xyXG4gIC0tY29sb3ItcmVkLWVycm9mOiAjQkU0NjQ2O1xyXG4gIC0tY29sb3ItcmVkLXN1cGVybGlnaHQ6ICNGRkQxRDE7XHJcbiAgLS1jb2xvci1ncmVlbjogIzY2QzhBQjtcclxuICAtLWNvbG9yLWdyZWVuLWRhcms6ICM1Y2FhOTM7XHJcbiAgLS1jb2xvci1ncmVlbi1zdXBlci1saWdodDogI0NGRkZGMTtcclxuICAtLWNvbG9yLXB1cnBsZTogI0UyODRGRTtcclxuICAtLWNvbG9yLXB1cnBsZS1kYXJrOiAjQzA3MkQ4O1xyXG4gIC0tY29sb3IteWVsbG93OiAjRkZDRjY5O1xyXG4gIC0tY29sb3IteWVsbG93LWxpZ2h0OiAjRkZGMUQzO1xyXG4gIC0tY29sb3ItZXJyb3I6ICNGRjU3NTc7XHJcbiAgLS1jb2xvci1vcmFuZ2U6ICNGRTlBNTE7XHJcbiAgLS1jb2xvci1ncmV5OiAjY2NjY2NjO1xyXG4gIC0tc3VwZXJfZ3JleV9saWdodDogI2ViZWJlYztcclxuICAtLXN1ZGVyLWRhcmstZ3JleTogI0JCQkZDRDtcclxuICAtLW1haW4tYmctYm94OiAjRUNFREYwO1xyXG4gIC0tbWVudS1ncmV5OiAjNmE2ZTgyO1xyXG4gIC0taWNvbi1ncmV5OiAjNjc2ODc5O1xyXG4gIC0taWNvbi1ncmV5LWRhcms6ICMzMjMzMzg7XHJcbiAgICAtLW1lbnUtYmc6ICMyRTMxNEY7XHJcbiAgLS1jb2xvci1tYWluLWNvbG9yOiAjOUQ4OUVFO1xyXG4gIC0tY29sb3ItbWFpbi1jb2xvci1hY3RpdmV0eTogIzhFN0RENjtcclxuICAtLWJnLWJveC1hY3RpdmV0eTogI2NjZTVmZjtcclxuICAtLWNvbG9yLW1haW4tY29sb3ItdGV4dDogI2ZmZmZmZjtcclxuICAtLWdyZXk6ICNjY2NjY2M7XHJcbiAgLS1jb2xvci1kYXJrLWdyZXk6ICNBNUE1QTU7XHJcbiAgLS1pY29uLWJnOiAjY2NlNWZmO1xyXG4gIC8qLS1tYWluLWJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9sb2dpbi1iZzAxLmpwZ1wiKSByZXBlYXQ7Ki9cclxuICAtLW1haW4tYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuXHJcbiAgLS1ib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAtLXRleHQtY29sb3ItbWFpbjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1iZy1pbi1jb250ZW50OiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWJnLWJvZHk6IHZhcigtLWJnLWZmZik7XHJcbiAgLS1iZy1tb2JpbGU6ICNmZmY7XHJcbiAgLS1iZy1ib3g6ICNFQ0VERjA7XHJcbiAgLS1iZy1vdGhlcjogI0VDRURGMDtcclxuICAtLWJnLW90aGVyLWluOiAjZmZmZmZmO1xyXG4gIC0tYmctZmZmOiAjZmZmZmZmO1xyXG4gIC0tbGlnaHQtYmc6ICNlY2UxZmM7XHJcbiAgLS1zZWxlY3QtYmctcmVkbWluZXVwOiAjNWY1YmZhO1xyXG4gIC0tYWxsLWhvdmVyLWJnOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWFsbC1ob3Zlci1iZy1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcblxyXG4gIC0tc2Nyb2xsLWJnOiAjRUNFREYwO1xyXG4gIC0tc2Nyb2xsLWhhbmRsZTogI0JCQkZDRDtcclxuICAtLWpjZi1kcm9wLWFjdGl2ZTogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuXHJcbiAgLyogRU5EIEdFTkVSQUwgQ09MT1IgKi9cclxuXHJcbiAgLyogU1RBUlQgVEFCUyAqL1xyXG5cclxuICAtLXRhYi1jb2xvci10ZXh0OiB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgLS10YWItY29sb3ItdGV4dC1zZWxlY2VkOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuXHJcbiAgLyogRU5EIFRBQlMgKi9cclxuXHJcbiAgLyogU1RBUlQgTk9USUNFICovXHJcblxyXG4gIC0tbm90aWNlLWVycm9yLWJnOiB2YXIoLS1jb2xvci1yZWQtc3VwZXJsaWdodCk7XHJcbiAgLS1ub3RpY2UtZXJyb3ItbWFpbjogdmFyKC0tY29sb3ItcmVkKTtcclxuICAtLW5vdGljZS1lcnJvci1tYWluLXRleHQ6IHZhcigtLWNvbG9yLXJlZCk7XHJcbiAgLS1ub3RpY2Utc3VjY2Vzc2Z1LW1haW46IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuICAtLW5vdGljZS1zdWNjZXNzZnUtbWFpbi10ZXh0OiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tbm90aWNlLXN1Y2Nlc3NmdS1iZzogdmFyKC0tY29sb3ItZ3JlZW4tc3VwZXItbGlnaHQpO1xyXG4gIC0tbm90aWNlLXN1Y2Nlc3NmdS1iZy10ZXh0OiB2YXIoLS1jb2xvci1ncmVlbi1kYXJrKTtcclxuICAtLW5vdGljZS13b3JuaW5nLW1haW46IHZhcigtLWNvbG9yLXllbGxvdyk7XHJcbiAgLS1ub3RpY2Utd29ybmluZy1iZzogdmFyKC0tY29sb3IteWVsbG93LWxpZ2h0KTtcclxuICAtLW5vdGljZS13b3JuaW5nLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuXHJcbiAgLS1yZWRfYm9yZGVyX2Vycm9yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG4gIC0tcmVkX2Vycm9yX3RleHQ6IHZhcigtLWNvbG9yLWZmZik7XHJcblxyXG4gIC8qIEVORCBOT1RJQ0UgKi9cclxuXHJcblxyXG4gIC8qIFNUQVJUIEJPUkRFUiBSQURJVVMgKi9cclxuICAtLWJvcmRlci1yYWRpdXM6IDhweDtcclxuICAtLWJvcmRlci1yYWRpdXMtZnVsbDogMTAwJTtcclxuICAtLWJvcmRlci1yYWRpdXMtc21hbGw6IDNweDtcclxuICAtLWJvcmRlci1yYWRpdXMtbWlkbGU6IDVweDtcclxuICAtLWljb24tYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gIC8qIFNUQVJUIEJPUkRFUiBSQURJVVMgKi9cclxuXHJcbiAgLyogU1RBUlQgQU5JTUFURSBUSU1FKi9cclxuICAtLXRpbWUtaG92ZXI6IC4ycztcclxuICAtLXRpbWUtbWFpbjogLjVzO1xyXG4gIC0tdGltZS1ob3Zlci1udWxsOiAuMHM7XHJcbiAgLyogRU5EIEFOSU1BVEUgVElNRSovXHJcblxyXG4gIC8qIFNUQVJUIElDT05TICovXHJcbiAgLS1pY29uLXdpZHRoOiAzMHB4O1xyXG4gIC0taWNvbi1mb250LXNpemU6IDMwcHg7XHJcbiAgLS1pY29uLXNtYWxsZXItd2lkdGg6IDI2cHg7XHJcbiAgLS1pY29uLXNtYWxsZXItZm9udC1zaXplOiAyNnB4O1xyXG4gIC0taWNvbi13aWR0aC1zbWFsbDogMjBweDtcclxuICAtLWljb24tZm9udC1zaXplLXNtYWxsOiAyMHB4O1xyXG4gIC0taWNvbi1mb250OiBAZm9udEljb247XHJcblxyXG4gIC0taWNvbi1jb2xvcjogdmFyKC0taWNvbi1ncmV5KTtcclxuICAtLWljb24tY29sb3ItaG92ZXI6ICM0NDQ0NDQ7XHJcbiAgLS1pY29uX2NvbG9yX2FjdGl2ZTogIzQ0NDQ0NDtcclxuICAtLWljb25fYmc6ICNiZmQ2ZmQ7XHJcbiAgLS1pY29uX2JnX2hvdmVyOiAjYmZkNmZkO1xyXG4gIC0taWNvbl9iZ19hY3RpdmU6ICNiZmQ2ZmQ7XHJcblxyXG4gIC0taWNvbi1jb2xvci1kaXNhYmxlZDogdmFyKC0taWNvbi1ncmV5KTtcclxuICAtLWljb25fYmctZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG5cclxuICAtLWljb24tY29sb3ItYmc6IHZhcigtLWljb24tZ3JleSk7XHJcbiAgLS1pY29uLWNvbG9yLWhvdmVyLWJnOiB2YXIoLS1pY29uLWdyZXktZGFyayk7XHJcbiAgLS1pY29uX2NvbG9yX2FjdGl2ZS1iZzogdmFyKC0taWNvbi1ncmV5LWRhcmspO1xyXG4gIC0taWNvbl9iZy1iZzogIHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG4gIC0taWNvbl9iZ19ob3Zlci1iZzogIHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG4gIC0taWNvbl9iZ19hY3RpdmUtYmc6ICB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuXHJcblxyXG4gIC0taWNvbi1jb2xvci1saXN0OiB2YXIoLS1pY29uLWdyZXkpO1xyXG4gIC0taWNvbi1jb2xvci1ob3Zlci1saXN0OiB2YXIoLS1iZy1mZmYpO1xyXG4gIC0taWNvbl9jb2xvcl9hY3RpdmUtbGlzdDogdmFyKC0tYmctZmZmKTtcclxuICAtLWljb25fYmctbGlzdDogIHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0taWNvbl9iZ19ob3Zlci1saXN0OiAgdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgLS1pY29uX2JnX2FjdGl2ZS1saXN0OiAgdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcblxyXG4gIC0taWNvbi1jb2xvci06IHZhcigtLWljb24tZ3JleSk7XHJcblxyXG4gIC0taWNvbi1jb250ZW50LWNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG4gIC0taWNvbi1jb250ZW50LWNvbG9yLWhvdmVyOiAjZmZmO1xyXG4gIC0taWNvbi1jb250ZW50X2JnOiAgdmFyKC0tY29sb3Itb3JhbmdlKTtcclxuICAtLWljb24tY29udGVudF9iZ19ob3ZlcjogIHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcbiAgLS1pY29uLWNvbnRlbnRfYmdfYWN0aXZlOiAgdmFyKC0tY29sb3Itb3JhbmdlKTtcclxuXHJcbiAgLS1pY29uLXN0YXI6IHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblxyXG4gIC0tYnV0dG9uLW1haW4tY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1idXR0b24tbWFpbi1iZzogdmFyKC0tY29sb3ItcHVycGxlKTtcclxuICAtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tYnV0dG9uLW1haW4tYmctaG92ZXI6IHZhcigtLWNvbG9yLXB1cnBsZS1kYXJrKTtcclxuXHJcbiAgLS1idXR0b24tbWFpbi1jb2xvci1kaXNhYmxlZDogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1idXR0b24tbWFpbi1iZy1kaXNhYmxlZDogdmFyKC0tY29sb3ItZ3JleSk7XHJcblxyXG4gIC0tYnV0dG9uLWNvbG9yOiAjNjU0RUZGO1xyXG4gIC0tYnV0dG9uLWJnOiAjZWJlN2ZjO1xyXG4gIC0tYnV0dG9uLWNvbG9yLWhvdmVyOiAjNjU0RUZGO1xyXG4gIC0tYnV0dG9uLWJnLWhvdmVyOiAjZDhkMGY4O1xyXG5cclxuICAtLWJ1dHRvbi1jb2xvci1kaXNhYmxlZDogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1idXR0b24tYmctZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG5cclxuICAtLWJ1dHRvbi1jb2xvci1kaXNhYmxlZDogI2ZmZjtcclxuICAtLWJ1dHRvbi1iZy1kaXNhYmxlZDogdmFyKC0tY29sb3ItZGFyay1ncmV5KTtcclxuXHJcbiAgLS1idXR0b24tZ3JleS1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1idXR0b24tZ3JleS1iZzogdmFyKC0tc3VwZXJfZ3JleV9saWdodCk7XHJcbiAgLS1idXR0b24tZ3JleS1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1idXR0b24tZ3JleS1iZy1ob3ZlcjogdmFyKC0tY29sb3ItZ3JleSk7XHJcblxyXG4gIC0tYnV0dG9uLWZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgLS1idXR0b24tYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gIC0tYmctZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWRhcmstZ3JleSk7XHJcbiAgLS1jb2xvci1kaXNhYmxlZDogdmFyKC0tY29sb3ItZmZmKTtcclxuXHJcbiAgLS1idXR0b24tbWFpbi1jb2xvci1iZzogI2ZmZjtcclxuICAtLWJ1dHRvbi1tYWluLWJnLWJnOiB2YXIoLS1jb2xvci1wdXJwbGUtZGFyayk7XHJcbiAgLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlci1iZzogI2ZmZjtcclxuICAtLWJ1dHRvbi1tYWluLWJnLWhvdmVyLWJnOiB2YXIoLS1jb2xvci1wdXJwbGUtZGFyayk7XHJcblxyXG4gIC0tYnV0dG9uLW1haW4tY29sb3ItZGlzYWJsZWQtYmc6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYnV0dG9uLW1haW4tYmctZGlzYWJsZWQtYmc6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG5cclxuICAtLWJ1dHRvbi1jb2xvci1iZzogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1idXR0b24tYmctYmc6IHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG4gIC0tYnV0dG9uLWNvbG9yLWhvdmVyLWJnOiAjZmZmO1xyXG4gIC0tYnV0dG9uLWJnLWhvdmVyLWJnOiB2YXIoLS1jb2xvci1ibHVlKTtcclxuICAvKiBFTkQgSUNPTlMgKi9cclxuXHJcbiAgLS10YWJsZS1iZy1ob3ZlcjogQHNlbGVjdFRhYmxlO1xyXG5cclxuICAtLXBvcHVwLW92ZXJsYXk6IHJnYmEoNDEsIDQ3LCA3NiwgMC43KTtcclxuICAtLXBvcHVwLW92ZXJsYXktZmFuY3k6IHZhcigtLW1lbnUtYmcpO1xyXG4gIC0tbWFpbi1ib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsMCwwLDAuMSk7XHJcbiAgLS1zbWFsbC1ib3gtc2hhZG93OiAzcHggM3B4IDZweCByZ2JhKDAsMCwwLDAuMSk7XHJcbiAgLS1ib3gtc2hhZG93LW51bGw6IDAgMTBweCAxMHB4IHJnYmEoMCwwLDAsMCk7XHJcbiAgLS10YWJsZS1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4xKSAwcHggM3B4IDVweDtcclxuICAtLWJpZy1zaGFkb3c6IDAgMTBweCAxMHB4IHJnYmEoMCwwLDAsMC4xKTtcclxuICAtLWJpZy1zaGFkb3ctaG92ZXI6IDAgMTBweCAxMHB4IHJnYmEoMTAxLDE1NCwyNDQsMC41KTtcclxuXHJcbiAgLS1wb3B1cC1jbG9zZS1jb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcclxuICAtLXBvcHVwLWNsb3NlLWJnOiB2YXIoLS1jb2xvci1yZWQpO1xyXG4gIC0tcG9wdXAtY2xvc2UtY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1wb3B1cC1jbG9zZS1iZy1ob3ZlcjogdmFyKC0tY29sb3ItcmVkKTtcclxuXHJcbiAgLS1wb3B1cC1jbG9zZS1jb2xvci0yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG4gIC0tcG9wdXAtY2xvc2UtYmctMjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLXBvcHVwLWNsb3NlLWNvbG9yLWhvdmVyLTI6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1wb3B1cC1jbG9zZS1iZy1ob3Zlci0yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG5cclxuXHJcbiAgLyogU1RBUlQgUFJJT1JJVFkgQ09MT1IgKi9cclxuICAtLWNvbG9yLXdhcm5pbmc6IHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcbiAgLS1wcmlvcml0eS0xOiB2YXIoLS1jb2xvci1ibHVlKTtcclxuICAtLXByaW9yaXR5LTI6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuICAtLXByaW9yaXR5LTM6IHZhcigtLWNvbG9yLXllbGxvdyk7XHJcbiAgLS1wcmlvcml0eS00OiB2YXIoLS1jb2xvci1wdXJwbGUpO1xyXG4gIC0tcHJpb3JpdHktNTogdmFyKC0tY29sb3ItZXJyb3IpO1xyXG4gIC0tcHJpb3JpdHktY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLyogRU5EIFBSSU9SSVRZIENPTE9SICovXHJcblxyXG4gIC8qIFNUQVJUIFRSQUNLRVIgQ09MT1IgKi9cclxuICAtLXRyYWNrZXItMTogdmFyKC0tY29sb3ItcmVkKTtcclxuICAtLXRyYWNrZXItMjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG4gIC0tdHJhY2tlci0zOiB2YXIoLS1jb2xvci1ibHVlKTtcclxuICAvKiBFTkQgVFJBQ0tFUiBDT0xPUiAqL1xyXG5cclxuICAvKiBTVEFSVCBEUk9QRE9XTiAqL1xyXG4gIC0tZHJvcC10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLWRyb3AtdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1kcm9wLWljb24tY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tZHJvcC1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLWRyb3AtYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcclxuICAtLWRyb3AtYmc6IHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG4gIC0tZHJvcC1iZy1ob3ZlcjogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcbiAgLS1kcm9wLXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAvKiBTVEFSVCBEUk9QRE9XTiAqL1xyXG5cclxuICAvKiBTVEFSVCBJU1NVRVMgKi9cclxuXHJcbiAgLS1pY29uLXNhdmUtY29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuICAtLWljb24tc2F2ZS1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWljb24tc2F2ZS1iZzogdmFyKC0tY29sb3ItZ3JlZW4tc3VwZXItbGlnaHQpO1xyXG4gIC0taWNvbi1zYXZlLWJnLWhvdmVyOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblxyXG4gIC0taWNvbi1jbG9zZS1jb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xyXG4gIC0taWNvbi1jbG9zZS1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWljb24tY2xvc2UtYmc6IHZhcigtLWNvbG9yLXJlZC1zdXBlcmxpZ2h0KTtcclxuICAtLWljb24tY2xvc2UtYmctaG92ZXI6IHZhcigtLWNvbG9yLWVycm9yKTtcclxuXHJcbiAgLS1pY29uLWRlbGwtYmc6IHZhcigtLWNvbG9yLXJlZCk7XHJcbiAgLS1pY29uLWRlbGwtYmctaG92ZXI6IHZhcigtLWNvbG9yLWVycm9yKTtcclxuICAtLWljb24tZGVsbC1jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWljb24tZGVsbC1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZmZmKTtcclxuXHJcbiAgLS1jb2xvci1saW5rOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAtLWJvcmRlci1jb2xvci1jb250ZW50OiAjQkJCRkNEO1xyXG4gIC8qIEVORCBJU1NVRVMgKi9cclxuXHJcbiAgLyogU1RBUlQgUEFHSU5BVElPTiAqL1xyXG5cclxuICAtLXBhZ2luYXRpb24tY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gIC0tcGFnaW5hdGlvbi1jb2xvci1ob3ZlcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7XHJcbiAgLS1wYWdpbmF0aW9uLWNvbG9yLWF2dGl2ZTogdmFyKC0taWNvbl9jb2xvcl9hY3RpdmUpO1xyXG4gIC0tcGFnaW5hdGlvbi1iZzogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLXBhZ2luYXRpb24tYmctaG92ZXI6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gIC0tcGFnaW5hdGlvbi1iZy1hY3RpdmU6IHZhcigtLWljb25fYmdfYWN0aXZlKTtcclxuICAtLXBhZ2luYXRpb24tZm9udC13ZWlnaHQ6IDcwMDtcclxuXHJcbiAgLyogRU5EIFBBR0lOQVRJT04gKi9cclxuXHJcblxyXG4gIC8qIFNUQVJUIEZMWU9VVCBNRU5VICovXHJcbiAgLS1mbHlvdXRfbWVudV9iZzogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgLS1mbHlvdXRfbWVudV9jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X2JvcmRlcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X2J1dHRvbl9iZzogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X2J1dHRvbl9jb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgLS1mbHlvdXRfbWVudV9iZ19zZWxlY3RlZDogdmFyKC0tY29sb3ItcmVkKTtcclxuICAtLWZseW91dF9tZW51X2NvbG9yX3NlbGVjdGVkOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tZmx5b3V0X21lbnVfdGl0bGVfYmc6ICMwMDY3YzM7XHJcbiAgLS1mbHlvdXRfbWVudV90aXRsZV9jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X2FkbWluX21lbnVfYmc6ICM2YjhlZmY7XHJcbiAgLS1mbHlvdXRfbWVudV9hZG1pbl9tZW51X2NvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tZmx5b3V0X21lbnVfZ2VuZXJhbC1tZW51X2JnOiAjODE3ZWZmO1xyXG4gIC0tZmx5b3V0X21lbnVfZ2VuZXJhbC1tZW51X2NvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tZmx5b3V0X21lbnVfcHJvZmlsZS1tZW51X2JnOiAjNURDQTg2O1xyXG4gIC0tZmx5b3V0X21lbnVfcHJvZmlsZS1tZW51X2NvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tZmx5b3V0X21lbnVfd2F0Y2hlcnMtbWVudV9iZzogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG4gIC0tZmx5b3V0X21lbnVfd2F0Y2hlcnMtbWVudV9jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dC10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAvKiBFTkQgRkxZT1VUIE1FTlUgKi9cclxuXHJcbiAgLyogU1RBUlQgVE9PTFRJUCAqL1xyXG5cclxuICAtLXRvb2x0aXAtYmc6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0tdG9vbHRpcC1iZy1ob3ZlcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgLS10b29sdGlwLWNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tdG9vbHRpcC1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZmZmKTtcclxuXHJcbiAgLyogRU5EIFRPT0xUSVAgKi9cclxuXHJcbiAgLyogU1RBUlQgU0NST0xMQkFSICovXHJcblxyXG4gIC0tc2Nyb2xsYmFyOiB2YXIoLS1jb2xvci1ncmV5KTtcclxuICAtLXNjcm9sbGJhcl9oYW5kbGU6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG5cclxuICAvKiBFTkQgU0NST0xMQkFSICovXHJcbn1cclxuXHJcbi8qIFNUQVJUIEZPT1RFUiAqL1xyXG5cclxuI2Zvb3RlciB7XHJcbiAgLS1iZzogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLXRleHQtY29sb3ItbWFpbjogdmFyKC0tY29sb3ItZ3JleSk7XHJcbiAgLS1ib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG59XHJcblxyXG4vKiBFTkQgRk9PVEVSICovXHJcblxyXG4vKiBTVEFSVCBTSURFQkFSICovXHJcblxyXG4jc2lkZWJhciB7XHJcbiAgLS1iZzogdmFyKC0tbWFpbi1iZy1ib3gpO1xyXG4gIC0tbWFpbl9jb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgLS10ZXh0LWNvbG9yLW1haW46IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYm9yZGVyLWNvbG9yOiAjQkJCRkNEO1xyXG5cclxuICAtLWljb24tY29sb3I6IHZhcigtLWljb24tZ3JleSk7XHJcbiAgLS1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1pY29uLWdyZXktZGFyayk7XHJcbiAgLS1pY29uX2NvbG9yX2FjdGl2ZTogdmFyKC0taWNvbi1ncmV5LWRhcmspO1xyXG4gIC0taWNvbl9iZzogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcbiAgLS1pY29uX2JnX2hvdmVyOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWljb25fYmdfYWN0aXZlOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuXHJcbiAgLS1idXR0b24tbWFpbi1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICAtLWJ1dHRvbi1tYWluLWJnOiB2YXIoLS1jb2xvci1wdXJwbGUpO1xyXG4gIC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXI6IHZhcigtLWJnLWZmZik7XHJcbiAgLS1idXR0b24tbWFpbi1iZy1ob3ZlcjogdmFyKC0tY29sb3ItcHVycGxlLWRhcmspO1xyXG5cclxuICAtLWJ1dHRvbi1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICAtLWJ1dHRvbi1iZzogdmFyKC0tY29sb3ItcHVycGxlKTtcclxuICAtLWJ1dHRvbi1jb2xvci1ob3ZlcjogdmFyKC0tYmctZmZmKTtcclxuICAtLWJ1dHRvbi1iZy1ob3ZlcjogdmFyKC0tY29sb3ItcHVycGxlLWRhcmspO1xyXG5cclxuICAtLXNjcm9sbC1iZzogI0VDRURGMDtcclxuICAtLXNjcm9sbC1oYW5kbGU6ICNCQkJGQ0Q7XHJcbn1cclxuXHJcbiNtYWluIHtcclxuICAtLXNpZGViYXItbWFpbl9jb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgLS1zaWRlYmFyLW1haW5fY29sb3JfdGV4dDogdmFyKC0tYmctZmZmKTtcclxuICAtLXNpZGViYXItbWFpbl9jb2xvcl9ob3ZlcjogIzI5MmY0YztcclxuICAtLXNpZGViYXItbWFpbl9jb2xvcl90ZXh0X2hvdmVyOiB2YXIoLS1iZy1mZmYpO1xyXG5cclxuICAtLXNpZGViYXItb3Blbi1idXR0b24tYmc6ICNmZmY7XHJcbiAgLS1zaWRlYmFyLW9wZW4tYnV0dG9uLWJvcmRlcjogdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAtLXNpZGViYXItb3Blbi1idXR0b24tY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tc2lkZWJhci1vcGVuLWJ1dHRvbi1iZy1ob3ZlcjogIzlEODlFRTtcclxuICAtLXNpZGViYXItb3Blbi1idXR0b24tYm9yZGVyLWhvdmVyOiAjOUQ4OUVFO1xyXG4gIC0tc2lkZWJhci1vcGVuLWJ1dHRvbi1jb2xvci1ob3ZlcjogI2ZmZjtcclxufVxyXG5cclxuLyogRU5EIFNJREVCQVIgKi9cclxuXHJcbiNhZG1pbi1tZW51LFxyXG4jbWFpbi1tZW51LFxyXG4ubW9kLW9iaiB7XHJcbiAgLS1iZzogIzIwMjMzRDtcclxuICAtLWJvcmRlci1jb2xvcjogIzIwMjMzRDtcclxuICAtLWJvcmRlci1jb2xvci1sb2dvOiAjNDg0Qzc4O1xyXG4gIC0tbGluay1jb2xvcjogI0M3QjhGRjtcclxuICAtLWxpbmstY29sb3ItaG92ZXI6ICNFMTgyRkY7XHJcbiAgLS1saW5rLWNvbG9yLWFjdGl2ZTogI0M3QjhGRjtcclxuICAtLXNjcm9sbGJhcjogIzIwMjMzRDtcclxuICAtLXNjcm9sbGJhcl9oYW5kbGU6ICNDN0I4RkY7XHJcbiAgLS1pY29uLWNvbG9yOiAjQzdCOEZGO1xyXG4gIC0taWNvbi1jb2xvci1ob3ZlcjogI0UxODJGRjtcclxuICAtLWljb25fY29sb3JfYWN0aXZlOiAjQzdCOEZGO1xyXG5cclxuICAtLWljb25fYmc6IHZhcigtLW1lbnUtYmcpO1xyXG4gIC0taWNvbl9iZ19ob3ZlcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1pY29uX2JnX2FjdGl2ZTogdmFyKC0tbWVudS1ncmV5KTtcclxuICAtLW1haW4tbWVudS1mb250LXdlaWdodDogNzAwO1xyXG4gIC0tbWVudS1jaGlsZHJlbi1mb250LXdlaWdodDogNTAwO1xyXG4gIC0tZmx5b3V0LW1lbnUtZm9udC13ZWlnaHQ6IDYwMDtcclxuICAtLXN1Ym1pdC1mb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4jYWRtaW4taW5kZXgge1xyXG4gIC0tYWRtaW4tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1hZG1pbi1jb2xvci1hZnRlcjogdmFyKC0tbWVudS1iZyk7XHJcbiAgLS1hZG1pbi1jb2xvci1hZnRlci1ob3ZlcjogdmFyKC0tbWVudS1iZyk7XHJcbiAgLS1hZG1pbi1jb2xvci10ZXh0LWhvdmVyOiB2YXIoLS1jb2xvci1kYXJrKTtcclxufVxyXG5cclxuI3RvcC1tZW51IHtcclxuICAtLWJnOiB2YXIoLS1tYWluLWJnLWJveCk7XHJcbiAgLS1pY29uLWNvbG9yOiB2YXIoLS1pY29uLWdyZXkpO1xyXG4gIC0taWNvbi1jb2xvci1ob3ZlcjogdmFyKC0taWNvbi1ncmV5LWRhcmspO1xyXG4gIC0taWNvbl9jb2xvcl9hY3RpdmU6IHZhcigtLWljb24tZ3JleS1kYXJrKTtcclxuICAtLWJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XHJcbiAgLS1pY29uX2JnOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWljb25fYmdfaG92ZXI6IHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG4gIC0taWNvbl9iZ19hY3RpdmU6IHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG5cclxuICAtLXRvcC1ub3RpZmljYXRpb246IHZhcigtLXRyYWNrZXItMSk7XHJcbiAgLS10b3Atbm90aWZpY2F0aW9uLWNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tbGluay1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1saW5rLWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1ibHVlKTtcclxuICAtLWxpbmstYmc6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1saW5rLWJnLWhvdmVyOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLXRleHQtY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tc3RhcnQtdGltZS1iZy10aW1lOiB2YXIoLS1tZW51LWJnKTtcclxuICAtLXN0YXJ0LXRpbWUtdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxufVxyXG5cclxuLnJldm8tbW9kYWwtYmFkZ2Uge1xyXG4gIC0tYmc6IHZhcigtLWJnLWJveCk7XHJcbiAgLS1saW5rLWJnOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tYmctdGl0bGU6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLWxpbmstY29sb3I6dmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1saW5rLWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLWxpbmstYmc6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1saW5rLWJnLWhvdmVyOiB2YXIoLS1hbGwtaG92ZXItYmcpO1xyXG4gIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxufVxyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcbkBpbXBvcnQgXCJfdmFycy1pY29uXCI7XHJcbi8qIDIwLjAzLjIwMjIgKi9cclxuLyogU1RBUlQgRk9OVCBWQVJJQUJMRVMgKi9cclxuQGdmZjogc2Fucy1zZXJpZjtcclxuQGdmczogMXJlbTtcclxuQGdsaDogMS40O1xyXG5AZ2xoMjogMS40O1xyXG5AZm9udEljb246IFwiV0ZTLVJNLWZvbnRcIjtcclxuLyogRU5EIEZPTlQgVkFSSUFCTEVTICovXHJcblxyXG4vKiBWQVJTICovXHJcbi5ib3JkZXItcmFkaXVzIChAcmFkaXVzKSB7XHJcbiAgYm9yZGVyLXJhZGl1czogQHJhZGl1cztcclxuICAtbW96LWJvcmRlci1yYWRpdXM6IEByYWRpdXM7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBBTEwgVkFSSUFCTEVTIEZPUiBXT1JLIExFU1MgKi9cclxuLmJvcmFkIChAcmFkaXVzKSB7XHJcbiAgYm9yZGVyLXJhZGl1czogQHJhZGl1cztcclxuICAtbW96LWJvcmRlci1yYWRpdXM6IEByYWRpdXM7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xyXG59XHJcbi5ib3JkZXJiKCl7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcbi5hbmltKEB3aGF0LCBAdGltZSl7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBAd2hhdCBAdGltZSBlYXNlLWluLW91dDtcclxuICAtbW96LXRyYW5zaXRpb246IEB3aGF0IEB0aW1lIGVhc2UtaW4tb3V0O1xyXG4gIHRyYW5zaXRpb246IEB3aGF0IEB0aW1lIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBCT1JERVIgUkFESVVTIFZBUklBQkxFUyAqL1xyXG5AcmFkOiA4cHg7XHJcbkByYWRNaWRkbGU6IDVweDtcclxuQHJhZHNtYWxsOiAzcHg7XHJcbkByYWRGdWxsOiAxMDAlO1xyXG4vKiBFTkQgQk9SREVSIFJBRElVUyBWQVJJQUJMRVMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEZPTlQgU0lTRSArIExJTkUgSElHSFQgKi9cclxuQGZzMjA6IDEuNDI4NTcxNDI4NTcxNDI5cmVtO1xyXG5AZnMxODogMS4yODU3MTQyODU3MTQyODZyZW07XHJcbkBmczE2OiAxLjE0MjhyZW07XHJcbkBmczEyOiAwLjg1NzE0Mjg1NzE0Mjg1N3JlbTtcclxuQGZzMTE6IDAuNzg1N3JlbTtcclxuQGZzMTA6IDAuNzE0MnJlbTtcclxuLyogU1RBUlQgMTAyNCovXHJcbkAxMDI0X2gxOiAxLjVyZW07XHJcbkAxMDI0X2gyOiAxLjQyODVyZW07XHJcbkAxMDI0X2gzOiAxLjVyZW07XHJcbkAxMDI0X2g0OiAxLjVyZW07XHJcbkAxMDI0X2g1OiAxLjVyZW07XHJcbkAxMDI0X2g2OiAxLjVyZW07XHJcbi8qICBTVEFSVCA3NjgqL1xyXG5ANzg2X2gxOiAxLjVyZW07XHJcbkA3ODZfaDI6IDEuMTI4NXJlbTtcclxuQDc4Nl9oMzogMS41cmVtO1xyXG5ANzg2X2g0OiAxLjVyZW07XHJcbkA3ODZfaDU6IDEuNXJlbTtcclxuQDc4Nl9oNjogMS41cmVtO1xyXG4vKiAgU1RBUlQgNTAwKi9cclxuQDUwMF9oMTogMS4ycmVtO1xyXG5ANTAwX2gyOiAxLjE0MjhyZW07XHJcbkA1MDBfaDM6IDEuMnJlbTtcclxuQDUwMF9oNDogMS4ycmVtO1xyXG5ANTAwX2g1OiAxLjJyZW07XHJcbkA1MDBfaDY6IDEuMnJlbTtcclxuLyogRU5EIEZPTlQgU0lTRSArIExJTkUgSElHSFQgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEpDRiAqL1xyXG5Ad2JhcjogM3B4O1xyXG5cclxuQGhVcERvd246IDA7XHJcbi8qIEVORCBKQ0YgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEFOSU1BVEUgVElNRSovXHJcbkB0aW1laG92ZXI6IC4yczsgLyogaG92ZXIgKi9cclxuQHRpbWVtYWluOiAuNXM7IC8qIE1haW4gYmlnIGJsb2tzIGFuaW1hdGVkICovXHJcbkB0aW1lTnVsbDogLjBzO1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgT1BBQ0lUWSAqL1xyXG5cclxuQG9wYWNpdHk6IDAuMjtcclxuXHJcbi8qIEVORCBPUEFDSVRZKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIElDT05TIFZBUiAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgSUNPTiBGT05UUyAqL1xyXG5cclxuQGFjdGl2aXR5LWxpc3Q6IEBpY29uLXRoaW4tYWN0aXZpdHktbGlzdDsgLyogT0sgKi9cclxuQGFjdGl2aXR5OiBAaWNvbi10aGluLWFjdGl2aXR5OyAvKiBPSyAqL1xyXG5AYWRkLXBheW1lbnQ6IEBpY29uLXRoaW4tYWRkLXBheW1lbnQ7IC8qIE9LICovXHJcbkBhZG1pbmlzdHJhdGlvbjogQGljb24tdGhpbi1hZG1pbmlzdHJhdGlvbjsgLyogT0sgKi9cclxuQGFnaWxlOiBAaWNvbi10aGluLWFnaWxlOyAvKiBPSyAqL1xyXG5AYXJjaGl2ZTogQGljb24tdGhpbi1hcmNoaXZlOyAvKiBPSyAqL1xyXG5AYXJyb3ctYm90dG9tOiBAaWNvbi10aGluLWFycm93LWJvdHRvbTsgLyogT0sgKi9cclxuQGFycm93LWRvdWJsZS1kb3duOiBAaWNvbi10aGluLWFycm93LWRvdWJsZS1kb3duOyAvKiBPSyAqL1xyXG5AYXJyb3ctZG91YmxlLXVwOiBAaWNvbi10aGluLWFycm93LWRvdWJsZS11cDsgLyogT0sgKi9cclxuQGFycm93LWRvd246IEBpY29uLXRoaW4tYXJyb3ctZG93bjsgLyogT0sgKi9cclxuQGFycm93LWxlZnQ6IEBpY29uLXRoaW4tYXJyb3ctbGVmdDsgLyogT0sgKi9cclxuQGFycm93LXJpZ2h0OiBAaWNvbi10aGluLWFycm93LXJpZ2h0OyAvKiBPSyAqL1xyXG5AYXJyb3ctdG9wOiBAaWNvbi10aGluLWFycm93LXRvcDsgLyogT0sgKi9cclxuQGFycm93LXdpZGUtcmlnaHQ6IEBpY29uLXRoaW4tYXJyb3ctd2lkZS1yaWdodDsgLyogT0sgKi9cclxuQGF0b206IEBpY29uLXRoaW4tYXRvbTsgLyogT0sgKi9cclxuQGJhc2tldDogQGljb24tdGhpbi1iYXNrZXQ7IC8qIE9LICovXHJcbkBib2FyZHM6IEBpY29uLXRoaW4tYm9hcmRzOyAvKiBPSyAqL1xyXG5AYm9va21hcms6IEBpY29uLXRoaW4tYm9va21hcms7IC8qIE9LICovXHJcbkBjYWxlbmRhcjogQGljb24tdGhpbi1jYWxlbmRhcjsgLyogT0sgKi9cclxuQGNhcnQ6IEBpY29uLXRoaW4tY2FydDsgLyogT0sgKi9cclxuQGNoYW5nZS11c2VyOiBAaWNvbi10aGluLWNoYW5nZS11c2VyOyAvKiBPSyAqL1xyXG5AY2hlY2tlZDogQGljb24tdGhpbi1jaGVja2VkOyAvKiBPSyAqL1xyXG5AY2xpcDogQGljb24tdGhpbi1jbGlwOyAvKiBPSyAqL1xyXG5AY2xvc2UtbmV3LXNtYWxsOiBAaWNvbi10aGluLWNsb3NlLW5ldy1zbWFsbDsgLyogT0sgKi9cclxuQGNsb3NlLW5ldzogQGljb24tdGhpbi1jbG9zZS1uZXc7IC8qIE9LICovXHJcbkBjb21tZW50OiBAaWNvbi10aGluLWNvbW1lbnQ7IC8qIE9LICovXHJcbkBjb21wYW55OiBAaWNvbi10aGluLWNvbXBhbnk7IC8qIE9LICovXHJcbkBjb250YWN0czogQGljb24tdGhpbi1jb250YWN0czsgLyogT0sgKi9cclxuQGNvcHk6IEBpY29uLXRoaW4tY29weTsgLyogT0sgKi9cclxuQGNzdjogQGljb24tdGhpbi1jc3Y7IC8qIE9LICovXHJcbkBjdXN0b20tZmllbGRzOiBAaWNvbi10aGluLWN1c3RvbS1maWVsZHM7IC8qIE9LICovXHJcbkBkZWFsczogQGljb24tdGhpbi1kZWFsczsgLyogT0sgKi9cclxuQGRlbDogQGljb24tdGhpbi1kZWw7IC8qIE9LICovXHJcbkBkZXNjcmlwdGlvbjogQGljb24tdGhpbi1kZXNjcmlwdGlvbjsgLyogT0sgKi9cclxuQGRpYW1vbmQ6IEBpY29uLXRoaW4tZGlhbW9uZDsvKiBPSyAqL1xyXG5AZG9jdW1lbnRzOiBAaWNvbi10aGluLWRvY3VtZW50czsgLyogT0sgKi9cclxuQGRvY3gtZmlsZTogQGljb24tdGhpbi1kb2N4OyAvKiBPSyAqL1xyXG5AZG9sbGFyOiBAaWNvbi10aGluLWRvbGxhcjsvKiBPSyAqL1xyXG5AZG93bmxvYWQ6IEBpY29uLXRoaW4tZG93bmxvYWQ7IC8qIE9LICovXHJcbkBlZGl0OiBAaWNvbi10aGluLWVkaXQ7IC8qIE9LICovXHJcbkBlbWFpbDogQGljb24tdGhpbi1lbWFpbDsgLyogT0sgKi9cclxuQGVudW1lcmF0aW9uczogQGljb24tdGhpbi1lbnVtZXJhdGlvbnM7IC8qIE9LICovXHJcbkBleHBlbnNlczogQGljb24tdGhpbi1leHBlbnNlczsgLyogT0sgKi9cclxuQGV4dGVybmFsOiBAaWNvbi10aGluLWV4dGVybmFsOyAvKiBPSyAqL1xyXG5AZXh0cmEtbWVudTogQGljb24tdGhpbi1leHRyYS1tZW51OyAvKiBPSyAqL1xyXG5AZmF2OkBpY29uLXRoaW4tZmF2OyAvKiBPSyAqL1xyXG5AZmF2b3JpdDogQGljb24tdGhpbi1mYXZvcml0OyAvKiBPSyAqL1xyXG5AZmlsZXM6IEBpY29uLXRoaW4tZmlsZXM7IC8qIE9LICovXHJcbkBmaWx0ZXI6IEBpY29uLXRoaW4tZmlsdGVyOyAvKiBPSyAqL1xyXG5AZmluYW5jZTogQGljb24tdGhpbi1maW5hbmNlOyAvKiBPSyAqL1xyXG5AZnVsbHNjcmVlbjogQGljb24tdGhpbi1mdWxsc2NyZWVuOyAvKiBPSyAqL1xyXG5AZ2FudHQ6IEBpY29uLXRoaW4tZ2FudHQ7LyogT0sgKi9cclxuQGdyb3VwOiBAaWNvbi10aGluLWdyb3VwOy8qIE9LICovXHJcbkBoZWxwOiBAaWNvbi10aGluLWhlbHA7IC8qIE9LICovXHJcbkBob21lOiBAaWNvbi10aGluLWhvbWU7IC8qIE9LICovXHJcbkBpY29uLWFjY291bnQtcHJvamVjdHM6IEBpY29uLXRoaW4tYWNjb3VudC1wcm9qZWN0czsgLyogT0sgKi9cclxuQGljb24tYWN0aW9uLWxheW91dHM6IEBpY29uLXRoaW4tYWN0aW9uLWxheW91dHM7IC8qIE9LICovXHJcbkBpY29uLWFkZGl0aW9uYWxzOiBAaWNvbi10aGluLWFkZGl0aW9uYWxzOyAvKiBPSyAqL1xyXG5AaWNvbi1hcmNoaXZlOiBAaWNvbi10aGluLWFyY2hpdmU7LyogT0sgKi9cclxuQGljb24tYXR0YWNobWVudDogQGljb24tdGhpbi1hdHRhY2htZW50OyAvKiBPSyAqL1xyXG5AaWNvbi1iYWNrOiBAaWNvbi10aGluLWJhY2s7IC8qIE9LICovXHJcbkBpY29uLWJhY2tsb2c6IEBpY29uLXRoaW4tYmFja2xvZzsgLyogT0sgKi9cclxuQGljb24tYmF0dGVyeTogQGljb24tdGhpbi1iYXR0ZXJ5OyAvKiBPSyAqL1xyXG5AaWNvbi1jOiBAaWNvbi10aGluLWNwbHVzOyAvKiBPSyAqL1xyXG5AaWNvbi1jbG9zZS1zZWFyY2g6IEBpY29uLXRoaW4tY2xvc2Utc2VhcmNoOyAvKiBPSyAqL1xyXG5AaWNvbi1jb21tZW50czogQGljb24tdGhpbi1jb21tZW50czsgLyogT0sgKi9cclxuQGljb24tY3JtOiBAaWNvbi10aGluLWNybTsgLyogT0sgKi9cclxuQGljb24tY3NoYXJwOiBAaWNvbi10aGluLWNzaGFycDsgLyogT0sgKi9cclxuQGljb24tY3NzOiBAaWNvbi10aGluLWNzczsgLyogT0sgKi9cclxuQGljb24tZGlmZjogQGljb24tdGhpbi1kaWZmOyAvKiBPSyAqL1xyXG5AaWNvbi1kbXNmOiBAaWNvbi10aGluLWRtc2Y7IC8qIE9LICovXHJcbkBpY29uLWRvY3VtZW50OiBAaWNvbi10aGluLWRvY3VtZW50OyAvKiBPSyAqL1xyXG5AaWNvbi1kb2N4LTI6IEBpY29uLXRoaW4tZG9jeDsgLyogT0sgKi9cclxuQGljb24tZG9jeDogQGljb24tdGhpbi1kb2N4OyAvKiBPSyAqL1xyXG5AaWNvbi1kb3duLTE6IEBpY29uLXRoaW4tZG93bi0xOyAvKiBPSyAqL1xyXG5AaWNvbi1kb3duLTI6IEBpY29uLXRoaW4tZG93bi0yOyAvKiBPSyAqL1xyXG5AaWNvbi1kcml2ZTogQGljb24tdGhpbi1kcml2ZTsgLyogT0sgKi9cclxuQGljb24tRVJQOiBAaWNvbi10aGluLUVSUDsgLyogT0sgKi9cclxuQGljb24tRVZNOiBAaWNvbi10aGluLUVWTTsgLyogT0sgKi9cclxuQGljb24tZmF2LW9mZjogQGljb24tdGhpbi1mYXYtb2ZmOyAvKiBPSyAqL1xyXG5AaWNvbi1mb2xkZXI6IEBpY29uLXRoaW4tZm9sZGVyOyAvKiBPSyAqL1xyXG5AaWNvbi1naWY6IEBpY29uLXRoaW4tZ2lmOyAvKiBPSyAqL1xyXG5AaWNvbi1naXQtbmV3OiBAaWNvbi10aGluLWdpdC1uZXc7XHJcbkBpY29uLWdpdDogQGljb24tdGhpbi1naXQ7IC8qIE9LICovXHJcbkBpY29uLWhlYXJ0OiBAaWNvbi10aGluLWhlYXJ0OyAvKiBPSyAqL1xyXG5AaWNvbi1oaXN0b3J5OiBAaWNvbi10aGluLWhpc3Rvcnk7IC8qIE9LICovXHJcbkBpY29uLWhvdXJnbGFzczogQGljb24tdGhpbi1ob3VyZ2xhc3M7IC8qIE9LICovXHJcbkBpY29uLWh0bWw6IEBpY29uLXRoaW4taHRtbDsgLyogT0sgKi9cclxuQGljb24taW1wb3J0OiBAaWNvbi10aGluLWltcG9ydDsgLyogT0sgKi9cclxuQGljb24taW52ZW50b3J5OiBAaWNvbi10aGluLWludmVudG9yeTsgLyogT0sgKi9cclxuQGljb24tamF2YTogQGljb24tdGhpbi1qYXZhOyAvKiBPSyAqL1xyXG5AaWNvbi1qcGc6IEBpY29uLXRoaW4tanBnOyAvKiBPSyAqL1xyXG5AaWNvbi1qczogQGljb24tdGhpbi1qczsgLyogT0sgKi9cclxuQGljb24ta2FuYmFuOiBAaWNvbi10aGluLWthbmJhbjtcclxuQGljb24ta2V5OiBAaWNvbi10aGluLWtleTsgLyogT0sgKi9cclxuQGljb24ta2V5MjogQGljb24tdGhpbi1rZXkyOyAvKiBPSyAqL1xyXG5AaWNvbi1rbm93bGVkZ2ViYXNlOiBAaWNvbi10aGluLWtub3dsZWRnZWJhc2U7IC8qIE9LICovXHJcbkBpY29uLWxpa2U6IEBpY29uLXRoaW4tbGlrZTsgLyogT0sgKi9cclxuQGljb24tbG9nczogQGljb24tdGhpbi1sb2dzOyAvKiBPSyAqL1xyXG5AaWNvbi1tZW51czogQGljb24tdGhpbi1tZW51czsgLyogT0sgKi9cclxuQGljb24tbWVyZ2U6IEBpY29uLXRoaW4tbWVyZ2U7IC8qIE9LICovXHJcbkBpY29uLW1vbml0b3JpbmctY29udHJvbGxpbmc6IEBpY29uLXRoaW4tbW9uaXRvcmluZy1jb250cm9sbGluZzsgLyogT0sgKi9cclxuQGljb24tbW92ZTogQGljb24tdGhpbi1tb3ZlOyAvKiBPSyAqL1xyXG5AaWNvbi1uby1pbnZvaWNlczogQGljb24tdGhpbi1uby1pbnZvaWNlczsgLyogT0sgKi9cclxuQGljb24tbm9ybWFsLWlzc3VlczogQGljb24tdGhpbi1ub3JtYWwtaXNzdWVzOyAvKiBPSyAqL1xyXG5AaWNvbi1ub3RpZmljYXRpb25zOiBAaWNvbi10aGluLW5vdGlmaWNhdGlvbnM7IC8qIE9LICovXHJcbkBpY29uLW9kdDogQGljb24tdGhpbi1vZHQ7IC8qIE9LICovXHJcbkBpY29uLW9wZW4tc2VhcmNoOiBAaWNvbi10aGluLW9wZW4tc2VhcmNoOyAvKiBPSyAqL1xyXG5AaWNvbi1wYWdlczogQGljb24tdGhpbi1wYWdlczsgLyogT0sgKi9cclxuQGljb24tcGFzc3dkOiBAaWNvbi10aGluLXBhc3N3ZDsgLyogT0sgKi9cclxuQGljb24tcGF1c2U6IEBpY29uLXRoaW4tcGF1c2U7IC8qIE9LICovXHJcbkBpY29uLXBlcmlvZGljLXRhc2tzOiBAaWNvbi10aGluLXBlcmlvZGljLXRhc2tzOyAvKiBPSyAqL1xyXG5AaWNvbi1waHA6IEBpY29uLXRoaW4tcGhwOyAvKiBPSyAqL1xyXG5AaWNvbi1wbGF5OiBAaWNvbi10aGluLXBsYXk7IC8qIE9LICovXHJcbkBpY29uLXBuZzogQGljb24tdGhpbi1wbmc7IC8qICAtLS0tICAqL1xyXG5AaWNvbi1wcmV2aWV3LXNhbGFyeTogQGljb24tdGhpbi1wcmV2aWV3LXNhbGFyeTsgLyogT0sgKi9cclxuQGljb24tcHJpbnQ6IEBpY29uLXRoaW4tcHJpbnQ7IC8qIE9LICovXHJcbkBpY29uLXJlcG9ydHM6IEBpY29uLXRoaW4tcmVwb3J0czsgLyogT0sgKi9cclxuQGljb24tcmlza3M6IEBpY29uLXRoaW4tcmlza3M7IC8qIE9LICovXHJcbkBpY29uLXJvbGVzOiBAaWNvbi10aGluLXJvbGVzOyAvKiBPSyAqL1xyXG5AaWNvbi1ydWJ5OiBAaWNvbi10aGluLXJ1Ynk7IC8qIE9LICovXHJcbkBpY29uLXNjcm9sbDogQGljb24tdGhpbi1zY3JvbGw7IC8qIE9LICovXHJcbkBpY29uLXNjcnVtOiBAaWNvbi10aGluLXNjcnVtOyAvKiBPSyAqL1xyXG5AaWNvbi1zbWFsbC1pc3N1ZXM6IEBpY29uLXRoaW4tc21hbGwtaXNzdWVzOyAvKiBPSyAqL1xyXG5AaWNvbi1zbmlwcGV0czogQGljb24tdGhpbi1zbmlwcGV0czsgLyogT0sgKi9cclxuQGljb24tc3ByaW50LWJvYXJkOiBAaWNvbi10aGluLXNwcmludC1ib2FyZDsgLyogT0sgKi9cclxuQGljb24tc3ByaW50LWJ1cm5kb3duOiBAaWNvbi10aGluLXNwcmludC1idXJuZG93bjsgLyogT0sgKi9cclxuQGljb24tc3RhdGlzdGljczogQGljb24tdGhpbi1zdGF0aXN0aWNzOyAvKiBPSyAqL1xyXG5AaWNvbi1zdG9wOiBAaWNvbi10aGluLXN0b3A7IC8qIE9LICovXHJcbkBpY29uLXN1cnZleTogQGljb24tdGhpbi1zdXJ2ZXk7IC8qIE9LICovXHJcbkBpY29uLXRlbXBsYXRlczogQGljb24tdGhpbi10ZW1wbGF0ZXM7IC8qIE9LICovXHJcbkBpY29uLXRleHQ6IEBjbGFzc2ljLXRleHQ7XHJcbkBpY29uLXRpY2tldHM6IEBpY29uLXRoaW4tdGlja2V0czsgLyogT0sgKi9cclxuQGljb24tdGltZXI6IEBjbGFzc2ljLXRpbWVyO1xyXG5AaWNvbi11bi1saWtlOiBAaWNvbi10aGluLXVuLWxpa2U7IC8qIE9LICovXHJcbkBpY29uLXVwLTE6IEBpY29uLXRoaW4tdXAtMTsgLyogT0sgKi9cclxuQGljb24tdXAtMjogQGljb24tdGhpbi11cC0yOyAvKiBPSyAqL1xyXG5AaWNvbi11cGxvYWQ6IEBpY29uLXRoaW4tdXBsb2FkOyAvKiBPSyAqL1xyXG5AaWNvbi12YXJpYWJsZXM6IEBpY29uLXRoaW4tdmFyaWFibGVzOyAvKiBPSyAqL1xyXG5AaWNvbi13YnM6IEBpY29uLXRoaW4td2JzOyAvKiBPSyAqL1xyXG5AaWNvbi13cmVjazogQGljb24tdGhpbi13cmVjazsgLyogT0sgKi9cclxuQGljb24teG1sOiBAaWNvbi10aGluLXhtbDsgLyogT0sgKi9cclxuQGljb24teW91dHViZTogQGljb24tdGhpbi15b3V0dWJlOyAvKiBPSyAqL1xyXG5AaWNvbi16aXA6IEBpY29uLXRoaW4temlwOyAvKiBPSyAqL1xyXG5AaW52b2ljZXM6IEBpY29uLXRoaW4taW52b2ljZXM7IC8qIE9LICovXHJcbkBpc3N1ZXM6IEBpY29uLXRoaW4taXNzdWVzOyAvKiBPSyAqL1xyXG5AbGRhcC1hdXRoZW50aWNhdGlvbjogQGljb24tdGhpbi1sZGFwLWF1dGhlbnRpY2F0aW9uOyAvKiBPSyAqL1xyXG5AbGluay1icmVhazogQGljb24tdGhpbi1saW5rLWJyZWFrOyAvKiBPSyAqL1xyXG5AbG9jazogQGljb24tdGhpbi1sb2NrOyAvKiBPSyAqL1xyXG5AbG9naW46IEBpY29uLXRoaW4tbG9naW47IC8qIE9LICovXHJcbkBsb2dvdXQ6IEBpY29uLXRoaW4tbG9nb3V0OyAvKiBPSyAqL1xyXG5AbWFpbGNoaW1wOiBAY2xhc3NpYy1tYWlsY2hpbXA7XHJcbkBtZWV0aW5nOiBAaWNvbi10aGluLW1lZXRpbmc7IC8qIE9LICovXHJcbkBtb25leTogQGljb24tdGhpbi1tb25leTsgLyogT0sgKi9cclxuQG15LWFjY291bnQ6IEBpY29uLXRoaW4tbXktYWNjb3VudDsgLyogT0sgKi9cclxuQG15LXBhZ2U6IEBpY29uLXRoaW4tbXktcGFnZTsgLyogT0sgKi9cclxuQG5ldy1vYmplY3Q6IEBpY29uLXRoaW4tbmV3LW9iamVjdDsgLyogT0sgKi9cclxuQG5ld3M6IEBpY29uLXRoaW4tbmV3czsgLyogT0sgKi9cclxuQG5leHQ6IEBpY29uLXRoaW4tbmV4dDsgLyogT0sgKi9cclxuQG5vdGU6IEBpY29uLXRoaW4tbm90ZTsgLyogT0sgKi9cclxuQG9wZW4tZm9sZGVyOiBAaWNvbi10aGluLW9wZW4tZm9sZGVyOyAvKiBPSyAqL1xyXG5Ab3Blbi1zaWRlYmFyLWhvcjogQGljb24tdGhpbi1vcGVuLXNpZGViYXItaG9yOyAvKiBPSyAqL1xyXG5Ab3Blbi1zaWRlYmFyOiBAaWNvbi10aGluLW9wZW4tc2lkZWJhcjsgLyogT0sgKi9cclxuQG9yZGVyczogQGljb24tdGhpbi1vcmRlcnM7IC8qIE9LICovXHJcbkBvdmVydmlldzogQGljb24tdGhpbi1vdmVydmlldzsgLyogT0sgKi9cclxuQHBkZjogQGljb24tdGhpbi1wZGY7IC8qIE9LICovXHJcbkBwZW9wbGU6IEBpY29uLXRoaW4tcGVvcGxlOyAvKiBPSyAqL1xyXG5AcGhvbmU6IEBpY29uLXRoaW4tcGhvbmU7IC8qIE9LICovXHJcbkBwaG90bzogQGljb24tdGhpbi1waG90bzsgLyogT0sgKi9cclxuQHBsYW5uaW5nOiBAaWNvbi10aGluLXBsYW5uaW5nOyAvKiBPSyAqL1xyXG5AcGx1Z2luczogQGljb24tdGhpbi1wbHVnaW5zOyAvKiBPSyAqL1xyXG5AcG5nOiBAaWNvbi10aGluLXBuZzsgLyogT0sgKi9cclxuQHByZXY6IEBpY29uLXRoaW4tcHJldjsgLyogT0sgKi9cclxuQHByb2R1Y3RzOiBAaWNvbi10aGluLXByb2R1Y3RzOyAvKiBPSyAqL1xyXG5AcHJvamVjdHM6IEBpY29uLXRoaW4tcHJvamVjdHM7IC8qIE9LICovXHJcbkBxdWVzdGlvbnM6IEBpY29uLXRoaW4tcXVlc3Rpb25zOyAvKiBPSyAqL1xyXG5AcXVpY2stc2VhcmNoOiBAaWNvbi10aGluLXF1aWNrLXNlYXJjaDtcclxuQHJlZ2lzdGVyOiBAaWNvbi10aGluLXJlZ2lzdGVyOyAvKiBPSyAqL1xyXG5AcmVsb2FkLTI6IEBpY29uLXRoaW4tcmVsb2FkLTI7IC8qIE9LICovXHJcbkByZWxvYWQ6IEBpY29uLXRoaW4tcmVsb2FkOyAvKiBPSyAqL1xyXG5AcmVwb3J0OiBAaWNvbi10aGluLXJlcG9ydDsgLyogT0sgKi9cclxuQHJlcG9zaXRvcnk6IEBpY29uLXRoaW4tcmVwb3NpdG9yeTsgLyogT0sgKi9cclxuQHJlc291cmNlczogQGljb24tdGhpbi1yZXNvdXJjZXM7IC8qIE9LICovXHJcbkByb2FkbWFwOiBAaWNvbi10aGluLXJvYWRtYXA7IC8qIE9LICovXHJcbkByb3NldHRlOiBAaWNvbi10aGluLXJvc2V0dGU7IC8qIE9LICovXHJcbkBzYXZlLW5ldzogQGljb24tdGhpbi1zYXZlLW5ldzsgLyogT0sgKi9cclxuQHNhdmU6IEBpY29uLXRoaW4tc2F2ZTsgLyogT0sgKi9cclxuQHNlYXJjaC1kb3duLWFycm93OiBAaWNvbi10aGluLXNlYXJjaC1kb3duLWFycm93OyAvKiBPSyAqL1xyXG5Ac2VhcmNoOiBAaWNvbi10aGluLXNlYXJjaDsgLyogT0sgKi9cclxuQHNldHRpbmdzOiBAaWNvbi10aGluLXNldHRpbmdzOyAvKiBPSyAqL1xyXG5Ac29ydC1oYW5kbGU6IEBpY29uLXRoaW4tc29ydC1oYW5kbGU7IC8qIE9LICovXHJcbkBzdGF0czogQGljb24tdGhpbi1zdGF0czsgLyogT0sgKi9cclxuQHN1bW1hcnk6IEBpY29uLXRoaW4tc3VtbWFyeTsgLyogT0sgKi9cclxuQHRhZ3M6IEBpY29uLXRoaW4tdGFnczsgLyogT0sgKi9cclxuQHRpbWUtZW50cmllczogQGljb24tdGhpbi10aW1lLWVudHJpZXM7IC8qIE9LICovXHJcbkB0eHQ6IEBpY29uLXRoaW4tdHh0OyAvKiBPSyAqL1xyXG5AdW5sb2NrOiBAaWNvbi10aGluLXVubG9jazsgLyogT0sgKi9cclxuQHVzZXI6IEBpY29uLXRoaW4tdXNlcjsgLyogT0sgKi9cclxuQHZjZjogQGljb24tdGhpbi12Y2Y7IC8qIE9LICovXHJcbkB2b3RlczogQGljb24tdGhpbi12b3RlczsgLyogT0sgKi9cclxuQHdhcm5pbmc6IEBpY29uLXRoaW4td2FybmluZzsgLyogT0sgKi9cclxuQHdpa2k6IEBpY29uLXRoaW4td2lraTsgLyogT0sgKi9cclxuQHdvcmtmbG93OiBAaWNvbi10aGluLXdvcmtmbG93OyAvKiBPSyAqL1xyXG5AeGxzOiBAaWNvbi10aGluLXhsczsgLyogT0sgKi9cclxuQHpvb20taW46IEBpY29uLXRoaW4tem9vbS1pbjsgLyogT0sgKi9cclxuQHpvb20tb3V0OiBAaWNvbi10aGluLXpvb20tb3V0OyAvKiBPSyAqL1xyXG5AaWNvbi1nbG9zc2FyeTogQGljb24tdGhpbi1nbG9zc2FyeTtcclxuQGljb24tY3JlZGVudGlhbHM6IEBpY29uLXRoaW4tY3JlZGVudGlhbHM7XHJcbkBpY29uLXNwcmludC1rYW5iYW46IEBpY29uLXRoaW4tc3ByaW50LWthbmJhbjtcclxuQGljb24tYXZhdGFyOiBAaWNvbi10aGluLWF2YXRhcjtcclxuXHJcblxyXG4vKiBFTkQgSUNPTiBGT05UUyAqL1xyXG5cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgU0VMRUNUIDIgKi9cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lciB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XHJcbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgaGVpZ2h0OiAyOHB4O1xyXG4gIHVzZXItc2VsZWN0OiBub25lO1xyXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7IH1cclxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmctbGVmdDogOHB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XHJcbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgZm9udC1zaXplOiAxZW07IH1cclxuLnNlbGVjdDItY29udGFpbmVyW2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcclxuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XHJcbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtaW4taGVpZ2h0OiAzMnB4O1xyXG4gIHVzZXItc2VsZWN0OiBub25lO1xyXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7IH1cclxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XHJcbiAgZGlzcGxheTogaW5saW5lO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgcGFkZGluZzogMDsgfVxyXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgZm9udC1zaXplOiAxZW07IH1cclxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgYm9yZGVyOiBub25lO1xyXG4gIGZvbnQtc2l6ZTogMTAwJTtcclxuICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICByZXNpemU6IG5vbmU7XHJcbiAgaGVpZ2h0OiAxOHB4O1xyXG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB3b3JkLWJyZWFrOiBrZWVwLWFsbDsgfVxyXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XHJcblxyXG4uc2VsZWN0Mi1kcm9wZG93biB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGxlZnQ6IC0xMDAwMDBweDtcclxuICB3aWR0aDogMTAwJTtcclxuICB6LWluZGV4OiAxMDUxOyB9XHJcblxyXG4uc2VsZWN0Mi1yZXN1bHRzIHtcclxuICBkaXNwbGF5OiBibG9jazsgfVxyXG5cclxuLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ucyB7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDsgfVxyXG5cclxuLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcclxuICBwYWRkaW5nOiA2cHg7XHJcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgfVxyXG5cclxuLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIHtjdXJzb3I6IHBvaW50ZXI7fVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duIHtsZWZ0OiAwO31cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93bi0tYWJvdmUge1xyXG4gIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcclxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcclxufVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1iZWxvdyB7XHJcbiAgYm9yZGVyLXRvcDogbm9uZTtcclxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xyXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO31cclxuXHJcbi5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDRweDsgfVxyXG4uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xyXG4gIHBhZGRpbmc6IDRweDtcclxuICB3aWR0aDogMTAwJTtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XHJcbi5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XHJcbi5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24uc2VsZWN0Mi1zZWFyY2gtLWhpZGUge1xyXG4gIGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbi5zZWxlY3QyLWNsb3NlLW1hc2sge1xyXG4gIGJvcmRlcjogMDtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgbGVmdDogMDtcclxuICB0b3A6IDA7XHJcbiAgbWluLWhlaWdodDogMTAwJTtcclxuICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgei1pbmRleDogOTk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7IH1cclxuXHJcbi5zZWxlY3QyLWhpZGRlbi1hY2Nlc3NpYmxlIHtcclxuICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICBjbGlwOiByZWN0KDAgMCAwIDApICFpbXBvcnRhbnQ7XHJcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IGluc2V0KDUwJSkgIWltcG9ydGFudDtcclxuICBjbGlwLXBhdGg6IGluc2V0KDUwJSkgIWltcG9ydGFudDtcclxuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xyXG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcclxuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XHJcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1mZmYpO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7IH1cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xyXG4gIGNvbG9yOiAjNDQ0O1xyXG4gIGxpbmUtaGVpZ2h0OiAyOHB4OyB9XHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIGhlaWdodDogMjZweDtcclxuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcbiAgcGFkZGluZy1yaWdodDogMHB4OyB9XHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVyIHtcclxuICBjb2xvcjogIzk5OTsgfVxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XHJcbiAgaGVpZ2h0OiAyNnB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDFweDtcclxuICByaWdodDogMXB4O1xyXG4gIHdpZHRoOiAyMHB4OyB9XHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGIge1xyXG4gIGJvcmRlci1jb2xvcjogIzg4OCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gIGJvcmRlci13aWR0aDogNXB4IDRweCAwIDRweDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgbGVmdDogNTAlO1xyXG4gIG1hcmdpbi1sZWZ0OiAtNHB4O1xyXG4gIG1hcmdpbi10b3A6IC0ycHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIHdpZHRoOiAwOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xyXG4gIGZsb2F0OiBsZWZ0OyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xyXG4gIGxlZnQ6IDFweDtcclxuICByaWdodDogYXV0bzsgfVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcclxuICBjdXJzb3I6IGRlZmF1bHQ7IH1cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcclxuICBkaXNwbGF5OiBub25lOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBiIHtcclxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICM4ODggdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLXdpZHRoOiAwIDRweCA1cHggNHB4OyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gIGN1cnNvcjogdGV4dDtcclxuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUuc2VsZWN0Mi1zZWxlY3Rpb24tLWNsZWFyYWJsZSB7XHJcbiAgcGFkZGluZy1yaWdodDogMjVweDsgfVxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgaGVpZ2h0OiAyMHB4O1xyXG4gIG1hcmdpbi1yaWdodDogMTBweDtcclxuICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHBhZGRpbmc6IDFweDsgfVxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZTRlNDtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgbWFyZ2luLXRvcDogNXB4O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX2Rpc3BsYXkge1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxuICBwYWRkaW5nLWxlZnQ6IDJweDtcclxuICBwYWRkaW5nLXJpZ2h0OiA1cHg7IH1cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiBub25lO1xyXG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xyXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcclxuICBjb2xvcjogIzk5OTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZm9udC1zaXplOiAxZW07XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgcGFkZGluZzogMCA0cHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgdG9wOiAwOyB9XHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmU6aG92ZXIsIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmU6Zm9jdXMge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XHJcbiAgY29sb3I6ICMzMzM7XHJcbiAgb3V0bGluZTogbm9uZTsgfVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcclxuICBtYXJnaW4tbGVmdDogNXB4O1xyXG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19kaXNwbGF5IHtcclxuICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAycHg7IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcclxuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XHJcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcclxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWZvY3VzIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xyXG4gIGJvcmRlcjogc29saWQgYmxhY2sgMXB4O1xyXG4gIG91dGxpbmU6IDA7IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcclxuICBjdXJzb3I6IGRlZmF1bHQ7IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7XHJcbiAgZGlzcGxheTogbm9uZTsgfVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSwgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcclxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xyXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLCAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xyXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgb3V0bGluZTogMDtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0cyA+IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMge1xyXG4gIG1heC1oZWlnaHQ6IDIwMHB4O1xyXG4gIG92ZXJmbG93LXk6IGF1dG87IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcclxuICBwYWRkaW5nLWxlZnQ6IDFlbTsgfVxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19ncm91cCB7XHJcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XHJcbiAgbWFyZ2luLWxlZnQ6IC0xZW07XHJcbiAgcGFkZGluZy1sZWZ0OiAyZW07IH1cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XHJcbiAgbWFyZ2luLWxlZnQ6IC0yZW07XHJcbiAgcGFkZGluZy1sZWZ0OiAzZW07IH1cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xyXG4gIG1hcmdpbi1sZWZ0OiAtM2VtO1xyXG4gIHBhZGRpbmctbGVmdDogNGVtOyB9XHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XHJcbiAgbWFyZ2luLWxlZnQ6IC00ZW07XHJcbiAgcGFkZGluZy1sZWZ0OiA1ZW07IH1cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XHJcbiAgbWFyZ2luLWxlZnQ6IC01ZW07XHJcbiAgcGFkZGluZy1sZWZ0OiA2ZW07IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWdyb3VwIHtcclxuICBwYWRkaW5nOiAwOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1kaXNhYmxlZCB7XHJcbiAgY29sb3I6ICM5OTk7IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGVkIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTsgfVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogNnB4OyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICBvdXRsaW5lOiAwO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgd2hpdGUgNTAlLCAjZWVlZWVlIDEwMCUpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDUwJSwgI2VlZWVlZSAxMDAlKTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB3aGl0ZSA1MCUsICNlZWVlZWUgMTAwJSk7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNGRkZGRkZGRicsIGVuZENvbG9yc3RyPScjRkZFRUVFRUUnLCBHcmFkaWVudFR5cGU9MCk7IH1cclxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlOmZvY3VzIHtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10ZXh0LWNvbG9yLW1haW4pOyB9XHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcclxuICBjb2xvcjogIzQ0NDtcclxuICBsaW5lLWhlaWdodDogMjhweDsgfVxyXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGZsb2F0OiByaWdodDtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBoZWlnaHQ6IDI2cHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVyIHtcclxuICBjb2xvcjogIzk5OTsgfVxyXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgaGVpZ2h0OiAyNnB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDFweDtcclxuICByaWdodDogMXB4O1xyXG4gIHdpZHRoOiAyMHB4O1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZWVlZSA1MCUsICNjY2NjY2MgMTAwJSk7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZWVlZSA1MCUsICNjY2NjY2MgMTAwJSk7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2VlZWVlZSA1MCUsICNjY2NjY2MgMTAwJSk7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNGRkVFRUVFRScsIGVuZENvbG9yc3RyPScjRkZDQ0NDQ0MnLCBHcmFkaWVudFR5cGU9MCk7IH1cclxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgYiB7XHJcbiAgYm9yZGVyLWNvbG9yOiAjODg4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgYm9yZGVyLXdpZHRoOiA1cHggNHB4IDAgNHB4O1xyXG4gIGhlaWdodDogMDtcclxuICBsZWZ0OiA1MCU7XHJcbiAgbWFyZ2luLWxlZnQ6IC00cHg7XHJcbiAgbWFyZ2luLXRvcDogLTJweDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgd2lkdGg6IDA7IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XHJcbiAgZmxvYXQ6IGxlZnQ7IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XHJcbiAgYm9yZGVyOiBub25lO1xyXG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICBsZWZ0OiAxcHg7XHJcbiAgcmlnaHQ6IGF1dG87IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGV4dC1jb2xvci1tYWluKTsgfVxyXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiBub25lOyB9XHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGIge1xyXG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzg4OCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItd2lkdGg6IDAgNHB4IDVweCA0cHg7IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xyXG4gIGJvcmRlci10b3A6IG5vbmU7XHJcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcclxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDAlLCAjZWVlZWVlIDUwJSk7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgd2hpdGUgMCUsICNlZWVlZWUgNTAlKTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB3aGl0ZSAwJSwgI2VlZWVlZSA1MCUpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZGRkZGRkYnLCBlbmRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgR3JhZGllbnRUeXBlPTApOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcclxuICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlZWVlIDUwJSwgd2hpdGUgMTAwJSk7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZWVlZSA1MCUsIHdoaXRlIDEwMCUpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWVlZWUgNTAlLCB3aGl0ZSAxMDAlKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgZW5kQ29sb3JzdHI9JyNGRkZGRkZGRicsIEdyYWRpZW50VHlwZT0wKTsgfVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgY3Vyc29yOiB0ZXh0O1xyXG4gIG91dGxpbmU6IDA7XHJcbiAgcGFkZGluZy1ib3R0b206IDVweDtcclxuICBwYWRkaW5nLXJpZ2h0OiA1cHg7IH1cclxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGU6Zm9jdXMge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRleHQtY29sb3ItbWFpbik7IH1cclxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XHJcbiAgZGlzcGxheTogbm9uZTsgfVxyXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZTRlNDtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBtYXJnaW4tbGVmdDogNXB4O1xyXG4gIG1hcmdpbi10b3A6IDVweDtcclxuICBwYWRkaW5nOiAwOyB9XHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19kaXNwbGF5IHtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgcGFkZGluZy1sZWZ0OiAycHg7XHJcbiAgcGFkZGluZy1yaWdodDogNXB4OyB9XHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICBjb2xvcjogIzg4ODtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZm9udC1zaXplOiAxZW07XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgcGFkZGluZzogMCA0cHg7IH1cclxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZTpob3ZlciB7XHJcbiAgY29sb3I6ICM1NTU7XHJcbiAgb3V0bGluZTogbm9uZTsgfVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcclxuICBtYXJnaW4tbGVmdDogNXB4O1xyXG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19kaXNwbGF5IHtcclxuICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAycHg7IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcclxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xyXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTsgfVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRleHQtY29sb3ItbWFpbik7IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XHJcbiAgYm9yZGVyLXRvcDogbm9uZTtcclxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xyXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xyXG4gIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcclxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsgfVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICBvdXRsaW5lOiAwOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XHJcbiAgb3V0bGluZTogMDtcclxuICBib3gtc2hhZG93OiBub25lOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24tLWFib3ZlIHtcclxuICBib3JkZXItYm90dG9tOiBub25lOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24tLWJlbG93IHtcclxuICBib3JkZXItdG9wOiBub25lOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0cyA+IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMge1xyXG4gIG1heC1oZWlnaHQ6IDIwMHB4O1xyXG4gIG92ZXJmbG93LXk6IGF1dG87IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWdyb3VwIHtcclxuICBwYWRkaW5nOiAwOyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1kaXNhYmxlZCB7XHJcbiAgY29sb3I6IGdyZXk7IH1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gIGNvbG9yOiB3aGl0ZTsgfVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogNnB4OyB9XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd24ge1xyXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogIEVORCBTRUxFQ1QgIDIgKi9cclxuXHJcblxyXG4vKiBTVEFSVCBDQVNUT00gU0VMRUNUIDIgKi9cclxuXHJcbmJvZHksXHJcbmJvZHkgI3NpZGViYXIge1xyXG4gICNjb2x1bW5zICsgLnNlbGVjdDIsXHJcbiAgLnNlbGVjdDIgfiAqLFxyXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIH4gKixcclxuICAuamNmLXNlbGVjdCB+ICosXHJcbiAgdGV4dGFyZWEgfiAqLFxyXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0gKyBhLmljb24ge1xyXG4gICAgbWFyZ2luOiA1cHggMCA1cHggMTBweCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgaW5wdXRbdHlwZT1cInRleHRcIl0gfiAjaXNzdWVfZGVhbCB7XHJcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdICsgYnIge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgaW5wdXRbdHlwZT1cInRleHRcIl0gfiAuamNmLXNlbGVjdCB7XHJcbiAgICBtaW4td2lkdGg6IDUwcHg7XHJcbiAgfVxyXG5cclxuICAuc2ltcGxlY29sb3JwaWNrZXIge1xyXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAjcHJldmlld19zZXR0aW5nc193ZWxjb21lX3RleHQge1xyXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAuc2VsZWN0MiB7XHJcbiAgICAtbW96LWFwcGVhcmFuY2U6bm9uZTtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTpub25lO1xyXG4gICAgLW8tYXBwZWFyYW5jZTpub25lO1xyXG4gICAgb3V0bGluZTogMCBub25lO1xyXG5cclxuICAgICYgPiAqIHtcclxuICAgICAgLW1vei1hcHBlYXJhbmNlOm5vbmU7XHJcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTpub25lO1xyXG4gICAgICAtby1hcHBlYXJhbmNlOm5vbmU7XHJcbiAgICAgIG91dGxpbmU6IDAgbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNlbGVjdFttdWx0aXBsZV0gKyAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgbWluLXdpZHRoOiAxNTBweDtcclxuICAgIGhlaWdodDogMzBweDtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGZsZXg6IDEgMCAwO1xyXG4gICAgLW1vei1hcHBlYXJhbmNlOm5vbmU7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtcclxuICAgIC1vLWFwcGVhcmFuY2U6bm9uZTtcclxuICAgIG91dGxpbmU6IDAgbm9uZTtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDAsIDAsIDAsIDApO1xyXG4gICAgLW1vei1ib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XHJcblxyXG4gICAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICYgPiAqIHtcclxuICAgICAgLW1vei1hcHBlYXJhbmNlOm5vbmU7XHJcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTpub25lO1xyXG4gICAgICAtby1hcHBlYXJhbmNlOm5vbmU7XHJcbiAgICAgIG91dGxpbmU6IDAgbm9uZTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgICAgIC1tb3otYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDAsIDAsIDAsIDApO1xyXG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICYuc2VsZWN0Mi1jb250YWluZXItLW9wZW4ge1xyXG4gICAgICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiB7XHJcbiAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcclxuXHJcbiAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XHJcbiAgICAgIHRleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgcGFkZGluZzogMCAzMHB4IDAgMTBweDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgLW1vei1hcHBlYXJhbmNlOm5vbmU7XHJcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTpub25lO1xyXG4gICAgICAtby1hcHBlYXJhbmNlOm5vbmU7XHJcbiAgICAgIG91dGxpbmU6IDAgbm9uZTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgICAgIC1tb3otYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDAsIDAsIDAsIDApO1xyXG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XHJcblxyXG4gICAgICAmLmljb24ge1xyXG4gICAgICAgIGhlaWdodDogMjhweDtcclxuICAgICAgICBtaW4taGVpZ2h0OiAyOHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwcHg7XHJcbiAgICAgICAgbGVmdDogMHB4O1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmV5KTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xyXG4gICAgICAgIHdpZHRoOiAyOHB4O1xyXG4gICAgICAgIGhlaWdodDogMjhweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDotMXB4O1xyXG4gICAgICAgICAgbGVmdDotMXB4O1xyXG4gICAgICAgICAgd2lkdGg6IDI4cHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDI4cHg7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmV5KTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXJlZCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xyXG4gICAgICAgIG1hcmdpbjogMnB4IDQ0cHggM3B4IDEwcHg7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICByaWdodDogMHB4O1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBiIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XHJcbiAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGZzMTg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICAgICAgcGFkZGluZzogM3B4IDRweDtcclxuICAgICAgICBmb250LXNpemU6IEBmczExO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICAgICAgbWFyZ2luOiAycHggMTBweCAycHggMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2U7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZTtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2U7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2U7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2U7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIG1heC13aWR0aDogY2FsYyh+JzEwMCUgLSA0cHgnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogNHB4IDEwcHg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBmczEyO1xyXG4gICAgICAgIGNvbG9yOnZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCk7XHJcbiAgICAgICAgd2lkdGg6IDEycHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwIDVweCAwIDA7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxcHg7LW1vei1ib3JkZXItcmFkaXVzOiAxcHg7Ym9yZGVyLXJhZGl1czogMXB4O1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSB7XHJcbiAgICAgIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uc2VsZWN0Mi1jb250YWluZXIge1xyXG5cclxuICAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gIH1cclxuICAuc2VsZWN0Mi1kcm9wZG93biB7XHJcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgbWFyZ2luOiAwIDAgMCAtMXB4O1xyXG5cclxuICAgIC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdXBlcl9ncmV5X2xpZ2h0KTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGxpIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgcGFkZGluZzogNXB4IDEwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICY6ZW1wdHkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWdyb3VwIHtcclxuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25bcm9sZT1cImdyb3VwXCJdIHtcclxuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHNwYW57XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYWxsLWhvdmVyLWJnKTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDowO1xyXG4gICAgICAgIGxlZnQ6MDtcclxuICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0ge1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN1cGVyX2dyZXlfbGlnaHQpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmOm5vdCguc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWdyb3VwKTpub3QoLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW3JvbGU9XCJncm91cFwiXSk6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0ge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RlZFthcmlhLXNlbGVjdGVkPXRydWVdLFxyXG4gICAgICAmLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RlZFthcmlhLXNlbGVjdGVkPWZhbHNlXXtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbm90aWNlLWVycm9yLW1haW4tdGV4dCkgIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW5vdGljZS1lcnJvci1iZykgIWltcG9ydGFudDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaW1nIHtcclxuICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XHJcbiAgICAvKnBhZGRpbmc6IDAgOyAgINCy0ZbQv9Cw0LTQsNC50LrQuCDRgtC10LPQvtCyKi9cclxuICB9XHJcblxyXG4gIC5zZWxlY3QyLWNvbnRhY3RfX25hbWUge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgfVxyXG5cclxuICAuc2VsZWN0Mi1jb250YWN0X19lbWFpbCB7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vKiBFTkQgQ0FTVE9NIFNFTEVDVCAyICovXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEdFTkVSQUwgU1RZTEUgKi9cclxuXHJcbmJvZHkuYXZhdGFycy1vbiBkaXYuam91cm5hbCB7cGFkZGluZy1sZWZ0OjA7fVxyXG5cclxuaHRtbHtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XHJcbn1cclxuXHJcbmh0bWwsYm9keSB7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG59XHJcbmh0bWwgPiBib2R5ICNtYWluICNjb250ZW50ICB7XHJcblxyXG4gIG1pbi1oZWlnaHQ6IDA7XHJcbn1cclxuLnRvdWNoZGV2aWNlIHtcclxuICAjd3JhcHBlciB7XHJcbiAgICBtYXgtaGVpZ2h0OiA5OTk5OTk5OTk5OTk5OTk5OTk5cHg7XHJcblxyXG4gICAgI3dyYXBwZXIyIHtcclxuICAgICAgbWF4LWhlaWdodDogOTk5OTk5OTk5OTk5OTk5OTk5OXB4O1xyXG5cclxuICAgICAgI3dyYXBwZXIzIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA5OTk5OTk5OTk5OTk5OTk5OTk5cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuYm9keSB7XHJcbiAgbWluLXdpZHRoOiAzMjBweDtcclxuICBmb250LXNpemU6IEBnZnM7XHJcbiAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgZm9udC1mYW1pbHk6IEBnZmY7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tbWFpbi1iYWNrZ3JvdW5kKTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG5cclxuICAucXVlcnktY29sdW1ucyB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgfVxyXG5cclxuICBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSwgYnV0dG9uIHtcclxuICAgIG91dGxpbmU6IDAgbm9uZTtcclxuICB9XHJcblxyXG4gIHRhYmxlLnF1ZXJ5LWNvbHVtbnMgdGQuYnV0dG9ucyB7XHJcbiAgICBiciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaGlkZGVuLWJveCB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICBhIHtcclxuICAgIG91dGxpbmU6MDtcclxuICB9XHJcblxyXG4gIGFiYnIsXHJcbiAgc3Bhbi5maWVsZC1kZXNjcmlwdGlvblt0aXRsZV0ge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxuXHJcbiAgdGFibGUge1xyXG4gICAgdHIge1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBhLndpa2ktYW5jaG9yIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhLndpa2ktYW5jaG9yIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZm9udC1zaXplOiAwcHggIWltcG9ydGFudDtcclxuICAgIGxpbmUtaGVpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICBvcGFjaXR5OiAwO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICB0ZXh0LWluZGVudDogMDtcclxuICAgICAgY29udGVudDogQGZhdjtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbnB1dCwgc2VsZWN0LCBidXR0b24ge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0IHtcclxuICAgIGhlaWdodDogMzBweDtcclxuXHJcbiAgICAmW2NsYXNzKj1zZWxlY3QyXSB7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjcHJvamVjdC1qdW1wIC5kcmRuLXRyaWdnZXIsXHJcbiAgI3Byb2plY3QtanVtcCAuZHJkbi5leHBhbmRlZCAuZHJkbi10cmlnZ2VyLFxyXG4gIHNlbGVjdCxcclxuICAuaWNvbi1leHBlbmRlZCxcclxuICAuaWNvbi1zb3J0ZWQtYXNjLFxyXG4gIGJ1dHRvbi50YWItbGVmdCxcclxuICBidXR0b24udGFiLXJpZ2h0IHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gICN3cmFwcGVyMyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBwYWRkaW5nOiAwIDAgNDJweDtcclxuICB9XHJcblxyXG5cclxuICAjbWFpbiB7XHJcbiAgICAvKmRpc3BsYXk6IGJsb2NrOyovXHJcbiAgfVxyXG5cclxuICBoMSwgaDIsIGgzLCBoNCB7XHJcbiAgICBmb250LWZhbWlseTogQGdmZjtcclxuICB9XHJcbn1cclxuLmNvbnRleHR1YWw+Kjpub3QoOmZpcnN0LWNoaWxkKSxcclxuLmJ1dHRvbnM+Lmljb246bm90KDpmaXJzdC1jaGlsZCksXHJcbi5jb250ZXh0dWFsIC5qb3VybmFsLWFjdGlvbnM+Kjpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgbWFyZ2luLWxlZnQ6IDA7XHJcbn1cclxuXHJcbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcclxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXHJcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXHJcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcclxuICBib3JkZXItc3R5bGU6IG5vbmU7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxucHJlLCBjb2RlIHtcclxuICBvdmVyZmxvdy14OiBhdXRvO1xyXG59XHJcblxyXG5ociB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxufVxyXG5cclxuLmhpZ2hsaWdodCB7XHJcbiAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgV09SS0lORyAqL1xyXG4jd2F0Y2hlcnMgYS5kZWxldGUge1xyXG4gIG9wYWNpdHk6IDE7XHJcbn1cclxuLmhpZGRlbiB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogLTk5OTk5OTk5cHg7XHJcbiAgbGVmdDogLTk5OTk5OTk5cHg7XHJcbn1cclxuXHJcbi5pY29uLmZvdW5ke1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgcGFkZGluZzogMCAwIDAgY2FsYyh+J3ZhcigtLWljb24td2lkdGgpICsgNXB4Jyk7XHJcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgfVxyXG5cclxuICAmLmljb24tb2sge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1ub3RpY2Utc3VjY2Vzc2Z1LW1haW4pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLXdhcm5pbmcge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1ub3RpY2Utd29ybmluZy1tYWluKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxudGFibGUubGlzdDpub3QoLm9kZC1ldmVuKSB0Ym9keSB0cjpudGgtY2hpbGQoMm4rMSk6aG92ZXIsXHJcbi5vZGQ6aG92ZXIsXHJcbiNpc3N1ZS1jaGFuZ2VzZXRzIGRpdi5jaGFuZ2VzZXQ6bnRoLWNoaWxkKDJuKzEpOmhvdmVyLFxyXG50YWJsZS5saXN0Om5vdCgub2RkLWV2ZW4pIHRib2R5IHRyOm50aC1jaGlsZCgybik6aG92ZXIsXHJcbiNpc3N1ZS1jaGFuZ2VzZXRzIGRpdi5jaGFuZ2VzZXQ6bnRoLWNoaWxkKDJuKTpob3ZlciB7XHJcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbi5pY29uOm5vdCh0ZCksXHJcbmFbaHJlZio9XCJxdWVzdGlvbnNfc2VjdGlvbnMvbmV3XCJdIHtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIHBhZGRpbmc6IDAgMCAwIGNhbGMofid2YXIoLS1pY29uLXdpZHRoKSArIDVweCcpO1xyXG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICB9XHJcbn1cclxuXHJcbi5pc3N1ZSB7XHJcbiAgLmljb24tZW1haWwge1xyXG4gICAgcGFkZGluZzogMCAwIDAgMzBweDtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzcGFuLmljb24tZW1haWwge1xyXG4gICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gIH1cclxufVxyXG5cclxudGFibGUge1xyXG4gIC5pY29uLFxyXG4gIGFbaHJlZio9XCJxdWVzdGlvbnNfc2VjdGlvbnMvbmV3XCJdIHtcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgfVxyXG59XHJcblxyXG4uZmx5b3V0LWlzLWFjdGl2ZSB7XHJcbiAgI3dyYXBwZXIge1xyXG4gICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWZseW91dF9tZW51X2JnKTtcclxuICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgfVxyXG5cclxuICAgICN3cmFwcGVyMiB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDAgLTI1MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAuZmx5b3V0LW1lbnUge1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5hIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGZvbnQtc2l6ZTogMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDBweDtcclxuICB9XHJcbn1cclxuXHJcbi50b3VjaGRldmljZSB7XHJcbiAgI3dyYXBwZXIge1xyXG4gICAgI3dyYXBwZXIyIHtcclxuICAgICAgbWluLWhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiN3cmFwcGVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgYmFja2dyb3VuZDogbm9uZTtcclxuICBtaW4taGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICB0ci5ncm91cCB7XHJcbiAgICBhLnRvZ2dsZS1hbGwge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYS50b2dnbGUtYWxsIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc3Bhbi50b3RhbHMge1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICBoMSwgaDIsIGgzLCBoNCB7XHJcbiAgICBmb250LWZhbWlseTogQGdmZjtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgfVxyXG5cclxuICAmOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OicnO1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIGNsZWFyOmJvdGg7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6NTAlO1xyXG4gICAgbGVmdDo1MCU7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3JlZG1pbmUtZXZvbHV0aW9uLnN2Z1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgIHdpZHRoOiAxMDBweDtcclxuICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICBtYXJnaW46IC0xMzBweCAwIDAgLTUwcHg7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICB9XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDonJztcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBjbGVhcjpib3RoO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9zcGluZXIuc3ZnXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgd2lkdGg6IDUwcHg7XHJcbiAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6NTAlO1xyXG4gICAgbGVmdDo1MCU7XHJcbiAgICBtYXJnaW46IC0yNXB4IDAgMCAtMjVweDtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gIH1cclxuXHJcbiAgI3dyYXBwZXIyIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm9keSk7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQsIG1hcmdpbiB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQsIG1hcmdpbiB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dCwgbWFyZ2luIHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQsIG1hcmdpbiB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0LCBtYXJnaW4gdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICB9XHJcblxyXG4gICYgPiAqIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICB9XHJcbn1cclxuLm5vLWFuaW1hdGUge1xyXG4gICN3cmFwcGVyIHtcclxuICAgICN3cmFwcGVyMiB7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5zdGFydCB7XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gICN3cmFwcGVyIHtcclxuXHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJiA+ICosXHJcbiAgICAjd3JhcHBlcjIge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgU1RBUlQgV09SS0lORyAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgRk9STSBTVFlMRSAqL1xyXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxyXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbmlucHV0IHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbi8qIFNUQVJUIENIRUNLQk9YICovXHJcblxyXG5pbnB1dFt0eXBlPSdjaGVja2JveCddIHtcclxuICAtbW96LWFwcGVhcmFuY2U6bm9uZTtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtcclxuICAtby1hcHBlYXJhbmNlOm5vbmU7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG91dGxpbmU6IDAgbm9uZTtcclxuICBoZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcclxuICB3aWR0aDogMThweCAhaW1wb3J0YW50O1xyXG4gIG1hcmdpbjogMCA1cHggMCAwO1xyXG4gIGJvcmRlcjogMDtcclxuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgYmFja2dyb3VuZDogbm9uZTtcclxuXHJcbiAgJjpiZWZvcmUge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgd2lkdGg6IDE4cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuXHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKSBza2V3KC01ZGVnKSByb3RhdGUoLTUwZGVnKTtcclxuICAgIG1hcmdpbjogLTFweCAwIDA7XHJcbiAgICBoZWlnaHQ6IDRweDtcclxuICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XHJcbiAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgb3BhY2l0eTowO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICB9XHJcblxyXG4gICY6Y2hlY2tlZCB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6ZGlzYWJsZWQge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKkVORCBDSEVDS0JPWCovXHJcblxyXG4vKiBTVEFSVCBSQURJTyAqL1xyXG5cclxuaW5wdXRbdHlwZT0ncmFkaW8nXSB7XHJcbiAgLW1vei1hcHBlYXJhbmNlOm5vbmU7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7XHJcbiAgLW8tYXBwZWFyYW5jZTpub25lO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdXRsaW5lOiAwIG5vbmU7XHJcbiAgaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XHJcbiAgd2lkdGg6IDE4cHggIWltcG9ydGFudDtcclxuICBtYXJnaW46IDAgNXB4IDAgMDtcclxuICBib3JkZXI6IDA7XHJcbiAgYmFja2dyb3VuZDogbm9uZTtcclxuXHJcbiAgJjpiZWZvcmUge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgd2lkdGg6IDE4cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbjogLTVweCAwIDAgLTVweDtcclxuICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xyXG4gICAgb3BhY2l0eTowO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICB9XHJcblxyXG4gICY6Y2hlY2tlZCB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qRU5EIFJBRElPKi9cclxuXHJcbi8qIEVORCBGT1JNIFNUWUxFICovXHJcblxyXG4vKiBTVEFSVCBUT09MVElQICovXHJcblxyXG5ib2R5IGRpdi50b29sdGlwLW5ldyB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHotaW5kZXg6IDEwNzA7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zaXplOiBAZnMxMTtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICB0ZXh0LWFsaWduOiBzdGFydDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICB3b3JkLWJyZWFrOiBub3JtYWw7XHJcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XHJcbiAgd29yZC13cmFwOiBub3JtYWw7XHJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XHJcbiAgb3BhY2l0eTogMDtcclxuICBsaW5lLWJyZWFrOiBhdXRvO1xyXG5cclxuICAmLmluIHtcclxuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbiAgJi50b3Age1xyXG4gICAgcGFkZGluZzogNXB4IDA7XHJcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xyXG4gIH1cclxuICAmLnJpZ2h0IHtcclxuICAgIHBhZGRpbmc6IDAgNXB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDNweDtcclxuICB9XHJcbiAgJi5ib3R0b20ge1xyXG4gICAgcGFkZGluZzogNXB4IDA7XHJcbiAgICBtYXJnaW4tdG9wOiAzcHg7XHJcbiAgfVxyXG4gICYubGVmdCB7XHJcbiAgICBwYWRkaW5nOiAwIDVweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xyXG4gIH1cclxuICAudG9vbHRpcC1pbm5lciB7XHJcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xyXG4gICAgcGFkZGluZzogM3B4IDhweDtcclxuICAgIGNvbG9yOiB2YXIoLS10b29sdGlwLWNvbG9yKTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRvb2x0aXAtYmcpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gIH1cclxuICBkaXYudG9vbHRpcC1hcnJvdyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG5cclxuXHJcbiAgfVxyXG4gICYudG9wIGRpdi50b29sdGlwLWFycm93IHtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xyXG4gICAgYm9yZGVyLXdpZHRoOiA1cHggNXB4IDA7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS10b29sdGlwLWJnKTtcclxuICB9XHJcbiAgJi50b3AtbGVmdCBkaXYudG9vbHRpcC1hcnJvdyB7XHJcbiAgICByaWdodDogNXB4O1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLTVweDtcclxuICAgIGJvcmRlci13aWR0aDogNXB4IDVweCAwO1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tdG9vbHRpcC1iZyk7XHJcbiAgfVxyXG4gICYudG9wLXJpZ2h0IGRpdi50b29sdGlwLWFycm93IHtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDVweDtcclxuICAgIG1hcmdpbi1ib3R0b206IC01cHg7XHJcbiAgICBib3JkZXItd2lkdGg6IDVweCA1cHggMDtcclxuICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXRvb2x0aXAtYmcpO1xyXG4gIH1cclxuICAmLnJpZ2h0IGRpdi50b29sdGlwLWFycm93IHtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIG1hcmdpbi10b3A6IC01cHg7XHJcbiAgICBib3JkZXItd2lkdGg6IDVweCA1cHggNXB4IDA7XHJcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLXRvb2x0aXAtYmcpO1xyXG4gIH1cclxuICAmLmxlZnQgZGl2LnRvb2x0aXAtYXJyb3cge1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICByaWdodDogMDtcclxuICAgIG1hcmdpbi10b3A6IC01cHg7XHJcbiAgICBib3JkZXItd2lkdGg6IDVweCAwIDVweCA1cHg7XHJcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tdG9vbHRpcC1iZyk7XHJcbiAgfVxyXG4gICYuYm90dG9tIGRpdi50b29sdGlwLWFycm93IHtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwIDVweCA1cHg7XHJcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS10b29sdGlwLWJnKTtcclxuICB9XHJcbiAgJi5ib3R0b20tbGVmdCBkaXYudG9vbHRpcC1hcnJvdyB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogNXB4O1xyXG4gICAgbWFyZ2luLXRvcDogLTVweDtcclxuICAgIGJvcmRlci13aWR0aDogMCA1cHggNXB4O1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tdG9vbHRpcC1iZyk7XHJcbiAgfVxyXG4gICYuYm90dG9tLXJpZ2h0IGRpdi50b29sdGlwLWFycm93IHtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDVweDtcclxuICAgIG1hcmdpbi10b3A6IC01cHg7XHJcbiAgICBib3JkZXItd2lkdGg6IDAgNXB4IDVweDtcclxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLXRvb2x0aXAtYmcpO1xyXG4gIH1cclxufVxyXG4vKiBFTkQgVE9PTFRJUCAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuI25ldy1yZWxhdGlvbi1mb3JtIHtcclxuICBwIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgbWFyZ2luOiAwIDEwcHggMCAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAhaW1wb3J0YW50Oy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCkgIWltcG9ydGFudDtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgJiArIGEge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZyk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvcik7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAhaW1wb3J0YW50Oy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCkgIWltcG9ydGFudDtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLW5vdGVzLFxyXG4uY29udHJvbGxlci1hdHRhY2htZW50cyB7XHJcbiAgI21haW4ge1xyXG4gICAgLmF0dGFjaG1lbnRzIHtcclxuICAgICAgbWFyZ2luLXRvcDogMDtcclxuXHJcbiAgICAgIHRhYmxlIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG5cclxuICAgICAgICAuaWNvbi1hdHRhY2htZW50IHtcclxuICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogU1RBUlQgTUFJTiAqL1xyXG4jbWFpbiB7XHJcbiAgei1pbmRleDogMTtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIHBhZGRpbmc6MCAzMHB4IDIwcHggMzBweDtcclxuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBtYXJnaW4tbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gIC1tb3otdHJhbnNpdGlvbjogbWFyZ2luLWxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAtbXMtdHJhbnNpdGlvbjogbWFyZ2luLWxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAtby10cmFuc2l0aW9uOiBtYXJnaW4tbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gIHRyYW5zaXRpb246IG1hcmdpbi1sZWZ0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gIC50YWctbGFiZWwtY29sb3Ige1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNhZG1pbi1pbmRleCB7XHJcbiAgICAubm9kYXRhIHtcclxuICAgICAgLmpjZi1zZWxlY3Qge1xyXG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBwIHtcclxuICAgICAgICBtYXJnaW46IDE1cHggMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmF0dGFjaG1lbnRzIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcblxyXG4gICAgJi5kb25lLWF0dGFjaG1lbnRzIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC50aHVtYm5haWxzIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICB0YWJsZSB7XHJcblxyXG4gICAgICAuZGVsZXRlIHtcclxuICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGEuaWNvbiB7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNwYW4uaWNvbi16b29tLWluLFxyXG4gIHNwYW4uaWNvbi16b29tLW91dCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgZm9udC1zaXplOiAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgbWluLWhlaWdodDogMDtcclxuICAgIG1pbi13aWR0aDogMDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXJlZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAub3BlbiAuaWNvbi1mb2xkZXIge1xyXG4gICAgYmFja2dyb3VuZDpub25lO1xyXG4gIH1cclxuXHJcbiAgYVtocmVmKj1cImRtc2Yvd2ViZGF2XCJdLFxyXG4gIC5pY29uLWZhbmN5Ym94LFxyXG4gIGEuY3VycmVudC1mcm9tLWFkZHJlc3MsXHJcbiAgLnJlcGVhdC12YWx1ZSxcclxuICAuY29udGV4dHVhbDpub3QoLm5leHQtcHJldi1saW5rcykgYTpub3QoI3Nob3dfbm90ZV9mb3JtX2V4dHJhcyksXHJcbiAgLmNvbnRleHR1YWwgYVtocmVmPVwiL2lzc3Vlc1wiXSxcclxuICAuY29udGV4dHVhbCBhW2hyZWY9XCIvdGltZV9lbnRyaWVzXCJdLFxyXG4gIC5jb250ZXh0dWFsICBhW2hyZWY9XCIvYWN0aXZpdHlcIl0sXHJcbiAgLnRvZ2dsZS1tdWx0aXNlbGVjdCxcclxuICAuYXZhdGFyLmV4dGVuZGVkIC5kZWxldGUsXHJcbiAgYVtocmVmKj1cInF1ZXN0aW9uc19zZWN0aW9ucy9uZXdcIl0sXHJcbiAgLmhvbGQtY29udHJvbCAuY29udHJvbHMgLmJ0bixcclxuICAjY2hlY2tsaXN0X2Zvcm1faXRlbXMgLm5ldyBzcGFuLmljb24sXHJcbiAgLmZhLXBlbmNpbCxcclxuICAjY29udGVudCAjY29tbWVudHMgLmNvbnRleHR1YWwgYVtocmVmKj1cIm9yZGVyX2NvbW1lbnRzXCJdLFxyXG4gIGRpdi5pc3N1ZS5vcmRlci5kZXRhaWxzICNpbnZvaWNlcyAuaWNvbi1pbnZvaWNlICsgYVtocmVmKj1cImludm9pY2VzXCJdLFxyXG4gIC5xdWVyeS1jb2x1bW5zIC5idXR0b25zIHNwYW4sXHJcbiAgI3NpZGViYXIgLmNvbnRleHR1YWwgYSxcclxuICBhLm9wZW4tZmlsdGVyLFxyXG4gIGEuaHRtbCxcclxuICBhLnR4dCxcclxuICBhLm9kdCxcclxuICBhLmljb246bm90KC5hZGQtY2hlY2tsaXN0LWl0ZW0pLFxyXG4gIHNwYW4uaWNvbi1vbmx5LFxyXG4gIGEuYXRvbSxcclxuICBhLmNzdixcclxuICBhLnBkZixcclxuICAuc29ydC1oYW5kbGUsXHJcbiAgYS5pY29uLXNldHRpbmdzLFxyXG4gIGEuaWNvbi1jbG9zZSxcclxuICBhLmljb24tb25seSxcclxuICBhLnBuZyxcclxuICBhLnZjZixcclxuICBhLnhscyxcclxuICBhLnByb2plY3QsXHJcbiAgI29wZXJhdGlvbl9jb250YWN0X2lkX2FkZF9saW5rLFxyXG4gICNkZWFsX2NvbnRhY3RfaWRfYWRkX2xpbmssXHJcbiAgI2V4cGVuc2VfY29udGFjdF9pZF9hZGRfbGluayxcclxuICAjaW52b2ljZV9jb250YWN0X2lkX2FkZF9saW5rLFxyXG4gICNvcmRlcl9jb250YWN0X2lkX2FkZF9saW5rLFxyXG4gICNjb21wYW55X3Byb2ZpbGVfZWRpdCBhLFxyXG4gIC5pY29uLW5vdC1vayB7XHJcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgcGFkZGluZzowO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgei1pbmRleDoyO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGZvbnQtc2l6ZTowcHg7XHJcbiAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgbWluLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICBtYXJnaW46MDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgei1pbmRleDoxO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uX2NvbG9yX2FjdGl2ZSk7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbl9jb2xvcl9hY3RpdmUpO1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWljb25fYmdfYWN0aXZlKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuZGlzYWJsZWQge1xyXG4gICAgICBvcGFjaXR5OiAwLjM7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5saXN0IHtcclxuICAgIC5pY29uLWZhbmN5Ym94LFxyXG4gICAgYS5jdXJyZW50LWZyb20tYWRkcmVzcyxcclxuICAgIC5yZXBlYXQtdmFsdWUsXHJcbiAgICAuY29udGV4dHVhbDpub3QoLm5leHQtcHJldi1saW5rcykgYTpub3QoI3Nob3dfbm90ZV9mb3JtX2V4dHJhcyksXHJcbiAgICAuY29udGV4dHVhbCBhW2hyZWY9XCIvaXNzdWVzXCJdLFxyXG4gICAgLmNvbnRleHR1YWwgYVtocmVmPVwiL3RpbWVfZW50cmllc1wiXSxcclxuICAgIC5jb250ZXh0dWFsICBhW2hyZWY9XCIvYWN0aXZpdHlcIl0sXHJcbiAgICAudG9nZ2xlLW11bHRpc2VsZWN0LFxyXG4gICAgLmF2YXRhci5leHRlbmRlZCAuZGVsZXRlLFxyXG4gICAgYVtocmVmKj1cInF1ZXN0aW9uc19zZWN0aW9ucy9uZXdcIl0sXHJcbiAgICAuaG9sZC1jb250cm9sIC5jb250cm9scyAuYnRuLFxyXG4gICAgI2NoZWNrbGlzdF9mb3JtX2l0ZW1zIC5uZXcgc3Bhbi5pY29uLFxyXG4gICAgLmZhLXBlbmNpbCxcclxuICAgICNjb250ZW50ICNjb21tZW50cyAuY29udGV4dHVhbCBhW2hyZWYqPVwib3JkZXJfY29tbWVudHNcIl0sXHJcbiAgICBkaXYuaXNzdWUub3JkZXIuZGV0YWlscyAjaW52b2ljZXMgLmljb24taW52b2ljZSArIGFbaHJlZio9XCJpbnZvaWNlc1wiXSxcclxuICAgIC5xdWVyeS1jb2x1bW5zIC5idXR0b25zIHNwYW4sXHJcbiAgICAjc2lkZWJhciAuY29udGV4dHVhbCBhLFxyXG4gICAgYS5vcGVuLWZpbHRlcixcclxuICAgIGEuaHRtbCxcclxuICAgIGEudHh0LFxyXG4gICAgYS5vZHQsXHJcbiAgICBhLmljb246bm90KC5hZGQtY2hlY2tsaXN0LWl0ZW0pLFxyXG4gICAgc3Bhbi5pY29uLW9ubHksXHJcbiAgICBhLmF0b20sXHJcbiAgICBhLmNzdixcclxuICAgIGEucGRmLFxyXG4gICAgLnNvcnQtaGFuZGxlLFxyXG4gICAgYS5pY29uLXNldHRpbmdzLFxyXG4gICAgYS5pY29uLWNsb3NlLFxyXG4gICAgYS5pY29uLW9ubHksXHJcbiAgICBhLnBuZyxcclxuICAgIGEudmNmLFxyXG4gICAgYS54bHMsXHJcbiAgICBhLnByb2plY3QsXHJcbiAgICAjb3BlcmF0aW9uX2NvbnRhY3RfaWRfYWRkX2xpbmssXHJcbiAgICAjZGVhbF9jb250YWN0X2lkX2FkZF9saW5rLFxyXG4gICAgI2V4cGVuc2VfY29udGFjdF9pZF9hZGRfbGluayxcclxuICAgICNpbnZvaWNlX2NvbnRhY3RfaWRfYWRkX2xpbmssXHJcbiAgICAjb3JkZXJfY29udGFjdF9pZF9hZGRfbGluayxcclxuICAgICNjb21wYW55X3Byb2ZpbGVfZWRpdCBhLFxyXG4gICAgLmljb24tbm90LW9rIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItbGlzdCk7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1saXN0KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctbGlzdCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWxpc3QpO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWxpc3QpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1saXN0KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItbGlzdCk7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWxpc3QpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmFkbWluLWZpbHRlciB7XHJcbiAgICAudG9nZ2xlLW11bHRpc2VsZWN0IHtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaWNvbi1mYW5jeWJveCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtaW4td2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgbWluLWhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICBtaW4td2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgbWluLWhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBtYXJnaW46IDAgMTVweCAwIDA7XHJcblxyXG4gICAgJjphZnRlciB7XHJcblxyXG4gICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgfVxyXG5cclxuICAgIC5ibG9jay1pbmZvIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IC05OTk5OXB4O1xyXG4gICAgICBsZWZ0OiAtOTk5OTlweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yZXBlYXQtdmFsdWUge1xyXG4gICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gIH1cclxuXHJcbiAgLnRvZ2dsZS1tdWx0aXNlbGVjdCB7XHJcbiAgICBtYXJnaW46IDAgMCAwIDEwcHg7XHJcblxyXG4gICAgJi5pY29uLXRvZ2dsZS1taW51cyB7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICAucmVwZWF0LXZhbHVlIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAjY29udGVudCB7XHJcbiAgIC5yaWdodC1xdWVzdGlvbnMsXHJcbiAgIC5vdGhlci1mb3JtYXRzLFxyXG4gICAmID4gLmNvbnRleHR1YWw6bm90KC5uZXh0LXByZXYtbGlua3MpIHtcclxuICAgICBhOm5vdCgjc2hvd19ub3RlX2Zvcm1fZXh0cmFzKSxcclxuICAgICAuaWNvbi1vbmx5IHtcclxuICAgICAgIGhlaWdodDp2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgIHdpZHRoOnZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuXHJcbiAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgIH1cclxuICAgICB9XHJcbiAgIH1cclxuIH1cclxuXHJcbiAgdGFibGUubGlzdCB7XHJcbiAgICAuY29udGV4dC1tZW51LXNlbGVjdGlvbiB7XHJcbiAgICAgIC5pY29uLW9ubHkge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmID4gdGQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5vdGhlci1mb3JtYXRzIHtcclxuICAgIGEge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZpbHRlcnMge1xyXG4gICAgLnRvZ2dsZS1tdWx0aXNlbGVjdCxcclxuICAgIHNwYW4udG9nZ2xlLW11bHRpc2VsZWN0Lmljb24tb25seSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZmlsdGVycyxcclxuICAubGlzdCB0aCxcclxuICAuYm94LFxyXG4gIC50YWJ1bGFyICxcclxuICAubXlwYWdlLWJveHtcclxuICAgIGEuY3VycmVudC1mcm9tLWFkZHJlc3MsXHJcbiAgICBhW2hyZWYqPVwicXVlc3Rpb25zX3NlY3Rpb25zL25ld1wiXSxcclxuICAgIC5ob2xkLWNvbnRyb2wgLmNvbnRyb2xzIC5idG4sXHJcbiAgICAjY2hlY2tsaXN0X2Zvcm1faXRlbXMgLm5ldyBzcGFuLmljb24sXHJcbiAgICAuZmEtcGVuY2lsLFxyXG4gICAgI2NvbnRlbnQgI2NvbW1lbnRzIC5jb250ZXh0dWFsIGFbaHJlZio9XCJvcmRlcl9jb21tZW50c1wiXSxcclxuICAgIGRpdi5pc3N1ZS5vcmRlci5kZXRhaWxzICNpbnZvaWNlcyAuaWNvbi1pbnZvaWNlICsgYVtocmVmKj1cImludm9pY2VzXCJdLFxyXG4gICAgLnF1ZXJ5LWNvbHVtbnMgLmJ1dHRvbnMgc3BhbixcclxuICAgICNzaWRlYmFyIC5jb250ZXh0dWFsIGEsXHJcbiAgICBhLm9wZW4tZmlsdGVyLFxyXG4gICAgYS5odG1sLFxyXG4gICAgYS50eHQsXHJcbiAgICBhLm9kdCxcclxuICAgIGEuaWNvbjpub3QoLmFkZC1jaGVja2xpc3QtaXRlbSksXHJcbiAgICBzcGFuLmljb24tb25seSxcclxuICAgIGEuYXRvbSxcclxuICAgIGEuY3N2LFxyXG4gICAgYS5wZGYsXHJcbiAgICAuc29ydC1oYW5kbGUsXHJcbiAgICBhLmljb24tc2V0dGluZ3MsXHJcbiAgICBhLmljb24tY2xvc2UsXHJcbiAgICBhLmljb24tb25seSxcclxuICAgIGEucG5nLFxyXG4gICAgYS52Y2YsXHJcbiAgICBhLnhscyxcclxuICAgIGEucHJvamVjdCxcclxuICAgICNkZWFsX2NvbnRhY3RfaWRfYWRkX2xpbmssXHJcbiAgICAjZXhwZW5zZV9jb250YWN0X2lkX2FkZF9saW5rLFxyXG4gICAgI2ludm9pY2VfY29udGFjdF9pZF9hZGRfbGluayxcclxuICAgICNvcGVyYXRpb25fY29udGFjdF9pZF9hZGRfbGluayxcclxuICAgICNvcmRlcl9jb250YWN0X2lkX2FkZF9saW5rLFxyXG4gICAgI2NvbXBhbnlfcHJvZmlsZV9lZGl0IGEsXHJcbiAgICAuaWNvbi1ub3Qtb2sge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ib3ggLmxpc3QsXHJcbiAgLnRhYnVsYXIgLmxpc3QsXHJcbiAgLm15cGFnZS1ib3ggLmxpc3QsXHJcbiAgLmxpc3QsXHJcbiAgLnRhYmxlLWxpc3Qge1xyXG4gICAgc3Bhbi5pY29uLFxyXG4gICAgc3Bhbi5pY29uLW9ubHksXHJcbiAgICBhLmljb24sXHJcbiAgICBhLmljb24tb25seSB7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzcGFuLmljb24sXHJcbiAgICBzcGFuLmljb24tb25seSB7XHJcbiAgICAgICYuaWNvbi1jaGVja2VkIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgdGFibGUge1xyXG5cclxuICAgIHRoIHtcclxuICAgICAgLnNvcnQ6bm90KC5hZGQtY2hlY2tsaXN0LWl0ZW0pIHtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgcGFkZGluZzogMCAyNXB4IDAgMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcikgIWltcG9ydGFudDtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgbWluLWhlaWdodDogMXB4O1xyXG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgbWFyZ2luOiAtMTBweCAwIDA7XHJcbiAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcikgIWltcG9ydGFudDtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCkgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB1bC5zdWJwcm9qZWN0cyB7XHJcbiAgICBsaSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgcGFkZGluZzogMCA1cHggMCAwO1xyXG4gICAgICBtYXJnaW46IDAgNXB4IDVweCAwO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB3aWR0aDogMXB4O1xyXG4gICAgICAgIGhlaWdodDogMTJweDtcclxuICAgICAgICBtYXJnaW46IC02cHggMCAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW46IDAgMCA1cHggMDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgYS5wcm9qZWN0IHtcclxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpICFpbXBvcnRhbnQ7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OjEuNWVtO1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIG1pbi13aWR0aDogMXB4O1xyXG4gICAgICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgICAmOmFmdGVyLFxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNjb21wYW55X3Byb2ZpbGVfZWRpdCBhIHtcclxuICAgIHdpZHRoOiAyMnB4O1xyXG4gICAgaGVpZ2h0OiAyMnB4O1xyXG5cclxuICAgIGltZ1tzcmMqPSdlZGl0LnBuZyddIHtcclxuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY2hlY2tib3ggYXtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6dmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICB3aWR0aDp2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgIG1hcmdpbjowO1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OjI7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgZm9udC1zaXplOjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OjBweDtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWxpc3QpO1xyXG5cclxuICAgIGltZ1tzcmMqPSd0b2dnbGVfY2hlY2sucG5nJ10ge1xyXG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWxpc3QpO1xyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWxpc3QpO1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWxpc3QpO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItbGlzdCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWxpc3QpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhW2hyZWYqPVwicXVlc3Rpb25zX3NlY3Rpb25zL25ld1wiXSB7XHJcbiAgICBpbWdbc3JjKj0nYWRkLnBuZyddIHtcclxuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbGkuaWNvbixcclxuICAjYWxsX2F0dHJpYnV0ZXMgc3Bhbi5pY29uLFxyXG4gIGZpZWxkc2V0LmNvbGxhcHNpYmxlLmNvbGxhcHNlZD5sZWdlbmQsXHJcbiAgZmllbGRzZXQuY29sbGFwc2libGU+bGVnZW5kLFxyXG4gIHRyLnByb2plY3QuaWRudCB0ZC5uYW1lIHNwYW4ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgIGltZ1tzcmMqPSdhZGQucG5nJ10ge1xyXG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBtYXJnaW46MDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgei1pbmRleDoxO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGxhYmVsW2Zvcj1cImlzc3VlX2F1dGhvcl9pZFwiXSArIGEsXHJcbiAgI2FsbF9hdHRyaWJ1dGVzIGxhYmVsW2Zvcj1cImlzc3VlX2Rlc2NyaXB0aW9uXCJdICsgYSB7XHJcbiAgICAuaWNvbiB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIG1hcmdpbjogLTEwcHggMCAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUtc21hbGwpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgIH1cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDo1MCU7XHJcbiAgICAgICAgbWFyZ2luOiAtMTBweCAwIDA7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgei1pbmRleDogMDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgLmljb24ge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7fVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhW2hyZWYqPVwicXVlc3Rpb25zX3NlY3Rpb25zL25ld1wiXTpob3ZlcjphZnRlcixcclxuICBsaS5pY29uOmFmdGVyIHtcclxuICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICB9XHJcblxyXG4gIHRyLnByb2plY3QuaWRudCB0ZC5uYW1lIHNwYW4ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZzogMCAwIDAgMjVweDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDo1MCU7XHJcbiAgICAgIG1hcmdpbjotMTBweCAwIDA7XHJcbiAgICAgIGxlZnQ6MDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgaGVpZ2h0OnZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICB3aWR0aDp2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgei1pbmRleDoxO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUtc21hbGwpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZpZWxkc2V0LmNvbGxhcHNpYmxlLmNvbGxhcHNlZD5sZWdlbmQsXHJcbiAgZmllbGRzZXQuY29sbGFwc2libGU+bGVnZW5kIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZmEtcGVuY2lsLFxyXG4gICNzaWRlYmFyIC5jb250ZXh0dWFsIGEsXHJcbiAgI3NpZGViYXIgYS5pY29uLW9ubHksXHJcbiAgI3NpZGViYXIgYS5pY29uIHtcclxuICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjaGlzdG9yeSB7XHJcbiAgICBhLmh0bWwsXHJcbiAgICBhLmljb24sXHJcbiAgICBhLmF0b20sXHJcbiAgICBhLmNzdixcclxuICAgIGEucGRmLFxyXG4gICAgLnNvcnQtaGFuZGxlLFxyXG4gICAgYS5pY29uLXNldHRpbmdzLFxyXG4gICAgYS5pY29uLWNsb3NlLFxyXG4gICAgYS5pY29uLW9ubHksXHJcbiAgICBhLnBuZyxcclxuICAgIGEudmNmLFxyXG4gICAgYS54bHMsXHJcbiAgICAuaWNvbi1ub3Qtb2sge1xyXG4gICAgICBoZWlnaHQ6dmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgd2lkdGg6dmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnKTtcclxuICAgICAgICBoZWlnaHQ6dmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICB3aWR0aDp2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBoZWlnaHQ6dmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICB3aWR0aDp2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5kZXNjcmlwdGlvbiB7XHJcbiAgICAuaWNvbiB7XHJcbiAgICAgIGhlaWdodDp2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICB3aWR0aDp2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgIGhlaWdodDp2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIHdpZHRoOnZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGhlaWdodDp2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIHdpZHRoOnZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmhvbGQtY29udHJvbCAuY29udHJvbHMgLmJ0biB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogU1RBUlQgQkcgQk9EWSBGT1IgQlVUVE9OICovXHJcbiAgZGl2Lmlzc3VlLm9yZGVyLmRldGFpbHMgI2ludm9pY2VzIC5pY29uLWludm9pY2UgKyBhW2hyZWYqPVwiaW52b2ljZXNcIl0sXHJcbiAgI2NvbnRlbnQgI2NvbW1lbnRzIC5jb250ZXh0dWFsIGFbaHJlZio9XCJvcmRlcl9jb21tZW50c1wiXSB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmlzc3VlIHtcclxuICAgIC5pY29uLFxyXG4gICAgLmljb24tb25seSB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdHIuaXNzdWUge1xyXG4gICAgLmljb24sXHJcbiAgICAuaWNvbi1vbmx5IHtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qIEVORCBCRyBCT0RZIEZPUiBCVVRUT04gKi9cclxuXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgcC5vdGhlci1mb3JtYXRzIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgd2lkdGg6IDUwJTtcclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50YWItY29udGVudCB7XHJcbiAgICAgIHAub3RoZXItZm9ybWF0cyB7XHJcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICNub3RlcyB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgLnBhZ2luYXRpb24ge1xyXG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHAub3RoZXItZm9ybWF0cyB7XHJcbiAgICBmb250LXNpemU6IDAuODU3cmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDIuMTQzcmVtO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgd2lkdGg6IDQ5JTtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG5cclxuICAgIHNwYW4ge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIFNUQVJUIEFHSUxFICovXHJcbiAgICAuYWdpbGUtYm9hcmQge1xyXG4gICAgICAudXNlcjphZnRlciB7Y29udGVudDogJyc7fVxyXG5cclxuICAgICAgLmljb24tY29tbWVudCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDowO1xyXG4gICAgICAgICAgbGVmdDowO1xyXG4gICAgICAgICAgd2lkdGg6IDE0cHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphZnRlciB7ZGlzcGxheTogbm9uZTt9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAvKiBFTkQgQUdJTEUgKi9cclxuXHJcbiAgLyogICEhISEhICAgRU5EIEZPUiBCVVRUT04gKi9cclxuXHJcbn1cclxuXHJcbiNub3RlcyB7XHJcblxyXG4gIHRhYmxlLm5vdGVfZGF0YSB7XHJcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG4gIH1cclxuXHJcbiAgLmF0dGFjaG1lbnRzIHtcclxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gIH1cclxuICAucmVkbWluZS1ldm9sdXRpb24tYXR0YWNobWVudHMge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIH1cclxufVxyXG4vKiBFTkQgTUFJTiAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogREVMTCBGT09URVIgKi9cclxuI2Zvb3RlciB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tYmcpO1xyXG4gIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBib3R0b206IDA7XHJcbiAgbGVmdDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgZm9udC1zaXplOiBAZnMxMTtcclxuICBsaW5lLWhlaWdodDogQGZzMTE7XHJcbiAgcGFkZGluZzogNXB4O1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogIHBhZGRpbmctcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAtbW96LXRyYW5zaXRpb246ICBwYWRkaW5nLXJpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgLW1zLXRyYW5zaXRpb246ICBwYWRkaW5nLXJpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgLW8tdHJhbnNpdGlvbjogIHBhZGRpbmctcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICB0cmFuc2l0aW9uOiAgcGFkZGluZy1yaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgJiA+IGEge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIElORk8gQk9YICovXHJcbmRpdi5mbGFzaC5lcnJvcixcclxuI2Vycm9yRXhwbGFuYXRpb24ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5vdGljZS1lcnJvci1iZyk7XHJcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ub3RpY2UtZXJyb3ItbWFpbik7XHJcbiAgY29sb3I6IHZhcigtLW5vdGljZS1lcnJvci1tYWluLXRleHQpO1xyXG59XHJcbiN3cmFwcGVyIHtcclxuICAjZXJyb3JFeHBsYW5hdGlvbixcclxuICAjZmxhc2hfZXJyb3Ige1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5vdGljZS1lcnJvci1tYWluKTtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcmVkX2JvcmRlcl9lcnJvcik7XHJcbiAgICBjb2xvcjogdmFyKC0tcmVkX2Vycm9yX3RleHQpO1xyXG4gICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1taWRsZSk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWlkbGUpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1taWRsZSk7XHJcbiAgICBwYWRkaW5nOiAxNHB4O1xyXG5cclxuICAgIHVsIHtcclxuICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMjBweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6MC41cmVtO1xyXG4gICAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgICB3aWR0aDogNnB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiA2cHg7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIElORk8gQk9YICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG5pbWcuZ3JhdmF0YXIge1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTUFZIFBBR0UgICovXHJcblxyXG4uY29udGV4dHVhbCAgZm9ybSB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmb250LXNpemU6IEBmczEyO1xyXG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xyXG4gIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gIHNlbGVjdCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG4gIGxhYmVsIHtcclxuXHJcbiAgfVxyXG4gIC5qY2Ytc2VsZWN0IHtcclxuICAgIG1pbi13aWR0aDogMjAwcHg7XHJcbiAgICBtYXJnaW46IDAgMCAwIDEwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgTUFZIFBBR0UgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEZJTFRFUiAqL1xyXG5cclxuLnF1ZXJ5LWNvbHVtbnMsXHJcbiN2YXVsdF93aGl0ZWxpc3Qge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAuYnV0dG9ucyB7XHJcbiAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgc3BhbiB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgb3V0bGluZTogMCBub25lO1xyXG4gICAgICBtYXJnaW46IDVweCAxMHB4O1xyXG4gICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tYmctYmcpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWJnKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlci1iZyk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvci1ob3Zlci1iZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGxhYmVsIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMCAwIDEwcHggIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLmFkZC1maWx0ZXIge1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblxyXG4gIC5qY2Ytc2VsZWN0IHtcclxuICAgIG1pbi13aWR0aDogMjAwcHg7XHJcbiAgfVxyXG5cclxuICBsYWJlbCB7XHJcbiAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgfVxyXG59XHJcblxyXG5maWVsZHNldCNmaWx0ZXJzIHtcclxuICB0YWJsZSB7XHJcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG5cclxuICAgIHRkIHtcclxuICAgICAgcGFkZGluZzogMCAyMHB4IDEwcHggMDtcclxuXHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5maWVsZCB7XHJcbiAgICAgICAgd2lkdGg6IDI3NXB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLm9wZXJhdG9yIHtcclxuICAgICAgICB3aWR0aDogMTUwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYudmFsdWVzIHtcclxuICAgICAgICAmID4gc3BhbiB7XHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYWRkLWZpbHRlciB7XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4jcXVlcnlfZm9ybSxcclxuI2VxLWZpbHRlci1jb250cm9scyB7XHJcbiAgJi5vcGVuLWZpbHRlcnMge1xyXG4gICAgLmhvbGRlci1maWx0ZXJzIHtcclxuICAgICAgbWF4LWhlaWdodDogMjAwMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmhvbGRlci1maWx0ZXJzIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIG1heC1oZWlnaHQ6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogIG1heC1oZWlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiAgbWF4LWhlaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgIC5pbi1maWx0ZXIge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgcGFkZGluZzogMCAwIDEwcHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmFkbWluLWZpbHRlciA+IGRpdiB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgIH1cclxuXHJcbiAgICAuZmlsdGVycy10YWJsZSB7XHJcbiAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIC5hZGQtZmlsdGVyIHtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgICAgLmpjZi1zZWxlY3Qge1xyXG4gICAgICAgIG1pbi13aWR0aDogMjAwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0YWJsZSB7XHJcbiAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xyXG5cclxuICAgICAgdGQge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweCAxMHB4IDA7XHJcblxyXG4gICAgICAgICYjY2hhcnQtdW5pdC1yb3cge1xyXG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDdweDtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmlubGluZSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmpjZi1zZWxlY3Qge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiNxdWVyeV9mb3JtIHtcclxuICAuYnV0dG9ucyB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG59XHJcbiNxdWVyeV9mb3JtX3dpdGhfYnV0dG9ucyxcclxuI3F1ZXJ5X2Zvcm1fY29udGVudCxcclxuI2VxLWZpbHRlci1jb250cm9scyB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB3aWR0aDogMTAwJTtcclxuICBmb250LXNpemU6IEBnZnM7XHJcbiAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcblxyXG4gIC5idXR0b25zIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBmczEyO1xyXG4gIH1cclxuXHJcbiAgZmllbGRzZXQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZzogMjVweCAzMnB4IDE1cHg7XHJcbiAgICBtYXJnaW46IDAgMCAxNXB4O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuXHJcbiAgICBsZWdlbmQge1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHBhZGRpbmc6IDAgMjBweCAwIDUwcHg7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgdG9wOjA7XHJcbiAgICAgIGxlZnQ6MDtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgJi5vcGVuLWluLWJveCB7XHJcbiAgICAgICAgLmljb24tZG93biB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5pY29uLWRvd24ge1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDo1cHg7XHJcbiAgICAgICAgbGVmdDoxMHB4O1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0taWNvbi13aWR0aCkgdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDowO1xyXG4gICAgICAgICAgbGVmdDowO1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBoZWlnaHQ6dmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICB3aWR0aDp2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDowO1xyXG4gICAgICAgICAgbGVmdDowO1xyXG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICAuaWNvbi1kb3duIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgICB3ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgIC5pY29uLWRvd24ge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlLWJnKTtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWljb25fYmdfYWN0aXZlLWJnKTtcclxuICAgICAgICAgICAgd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAub3Blbi1pbi1ib3ggfiAub3Blbi1ib3gge1xyXG4gICAgbWF4LWhlaWdodDogMTAwMHB4O1xyXG4gIH1cclxuXHJcbiAgLm9wZW4tYm94IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtaGVpZ2h0OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgbWF4LWhlaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiAgbWF4LWhlaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiAgbWF4LWhlaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogIG1heC1oZWlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuXHJcblxyXG4gICAgJiA+IGRpdiB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHBhZGRpbmc6IDIwcHggMCAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmFkZC1maWx0ZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuICAgIGxhYmVsIHtcclxuICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI3F1ZXJ5X2Zvcm0ge1xyXG4gIC5hZGQtZmlsdGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBGSUxURVIgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEZPUk0gKi9cclxuXHJcbiNjb250ZW50IGZvcm0ge1xyXG4gIC5zZWxlY3QyIHtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAuc2VsZWN0MixcclxuICBzZWxlY3Qge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBmbGV4OiAxIDAgMDtcclxuICB9XHJcblxyXG4gIHNlbGVjdCB+IC5pY29uLW9ubHksXHJcbiAgc2VsZWN0IH4gLmljb24sXHJcbiAgaW5wdXQgfiAuaWNvbi1vbmx5LFxyXG4gIGlucHV0IH4gLmljb24sXHJcbiAgdGV4dGFyZWEgfiAuaWNvbi1vbmx5LFxyXG4gIHRleHRhcmVhIH4gLmljb24sXHJcbiAgYnV0dG9uIH4gLmljb24tb25seSxcclxuICBidXR0b24gfiAuaWNvbntcclxuICAgIG1hcmdpbjogMCAwIDAgMTBweCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB+IC5pY29uLmljb24tcmVsb2FkIHtcclxuICAgIG1hcmdpbi10b3A6IDVweCAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICBwIHtcclxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0gfiAuaWNvbi5pY29uLXJlbG9hZCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJ1dHRvbnMge1xyXG4gICAgaW5wdXQgfiAuaWNvbiB7XHJcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJveCBwIHtcclxuICAgIHBhZGRpbmc6IDAgMCAwIDI5NXB4O1xyXG5cclxuICAgICY6ZW1wdHkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcblxyXG4gICAgJiA+IGxhYmVsIHtcclxuICAgICAgbWFyZ2luOiAwIDEwcHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuXHJcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAtMjk1cHggIWltcG9ydGFudDtcclxuICAgICAgICB3aWR0aDogMjk1cHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMDtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuaW5saW5lIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJltmb3I9XCJpbnZvaWNlX2Rlc2NyaXB0aW9uXCJdIHtcclxuICAgICAgICAmIH4gZGl2IHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgJiNpc3N1ZV9pc19wcml2YXRlX3dyYXAge1xyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgJi5pbmxpbmUge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJlthY3Rpb249XCIvY3VzdG9tX2ZpZWxkcy9uZXdcIl0ge1xyXG4gICAgLmJveCBwIHtcclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIG1hcmdpbjogNXB4IDAgMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnRhYnVsYXIgcCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICBlbS5pbmZvIHtcclxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmstZ3JleSk7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgfVxyXG5cclxuICAgICYubm9kYXRhIHtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBwOmVtcHR5IHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBiciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICBwYWRkaW5nOiAwIDEwMDAwMDBweDtcclxuICAgICAgbWFyZ2luOiAwIDAgNXB4O1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2lzc3VlX2Rlc2NyaXB0aW9uX2FuZF90b29sYmFyIHtcclxuICAgIGZsZXg6IDEgMCAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICBpbnB1dFt0eXBlPVwidXJsXCJdLFxyXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcclxuICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXHJcbiAgaW5wdXRbdHlwZT1cInRleHRcIl0sXHJcbiAgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcclxuICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcclxuICB0ZXh0YXJlYTpub3QoLnNlbGVjdDItc2VhcmNoX19maWVsZCkge1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgbWluLWhlaWdodDogMzBweDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICBwYWRkaW5nOiA2cHggMTJweDtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICBsaW5lLWhlaWdodDogQGZzMTg7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIG1pbi13aWR0aDogMTkwcHg7XHJcbiAgICBvdXRsaW5lOiAwIG5vbmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIGZsZXg6IDE7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgbWluLWhlaWdodDogMzBweDtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcclxuICAgIC1tb3otYm94LXNoYWRvdzogbm9uZTtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcblxyXG4gICAgJi5hdXRvY29tcGxldGUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24vc2VhcmNoLnN2Zyk7XHJcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDI2cHggMjZweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgICAgIHBhZGRpbmc6IDhweCAzOHB4IDhweCA4cHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNpc3N1ZV9hZ2lsZV9kYXRhX2F0dHJpYnV0ZXNfc3RvcnlfcG9pbnRzIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcclxuICB9XHJcblxyXG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxyXG4gIC5oYXNEYXRlcGlja2VyLFxyXG4gIC5oYXNEYXRlcGlja2VbdHlwZT1cInRleHRcIl17XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24vY2FsZW5kYXIuc3ZnKSAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSA1MCUgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMjZweCAyNnB4ICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgJjo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yICB7XHJcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICBmb250LXNpemU6IDBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDBweDtcclxuICAgIH1cclxuICB9XHJcbiAgLmhhc0RhdGVwaWNrZXIgKyBpbWcge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgaW5wdXRbdHlwZT1cInRleHRcIl0gKyBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICBtaW4td2lkdGg6IGF1dG87XHJcbiAgfVxyXG5cclxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdLFxyXG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gIH1cclxuICB0ZXh0YXJlYTpub3QoLnNlbGVjdDItc2VhcmNoX19maWVsZCkge1xyXG4gICAgbWluLWhlaWdodDogMTkwcHg7XHJcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuXHJcbiAgLml0ZW0ge1xyXG4gICAgdGV4dGFyZWEge1xyXG4gICAgICBtaW4taGVpZ2h0OiAzMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaW5wdXQjaXNzdWVfc3ViamVjdCxcclxuICBpbnB1dCNkb2N1bWVudF90aXRsZSxcclxuICBpbnB1dCN0aW1lX2VudHJ5X2NvbW1lbnRze1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgIHBhZGRpbmc6IDhweCAzMHB4O1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBvdXRsaW5lOiAwIG5vbmU7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWhvdmVyKTtcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmRpc2FibGVkIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctZGlzYWJsZWQpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItZGlzYWJsZWQpO1xyXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1kaXNhYmxlZCk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWRpc2FibGVkKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYgKyBhLFxyXG4gICAgJiArIGlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgcGFkZGluZzogOHB4IDE1cHg7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yKTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAmOmFmdGVyLFxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5pY29uLXJlbG9hZCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmFkbWluLWZpbHRlciB7XHJcbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgJiArIGEsXHJcbiAgICAgICYgKyBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmcpO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaWNvbi1yZWxvYWQge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYm94IHtcclxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAmICsgYSxcclxuICAgICAgJiArIGlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3IpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZyk7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5pY29uLXJlbG9hZCB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuXHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNpc3N1ZV9lc3RpbWF0ZWRfaG91cnMsXHJcbiAgI3RpbWVfZW50cnlfaG91cnMge1xyXG4gICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gIH1cclxuXHJcblxyXG4gICYjbmV3X3RpbWVfZW50cnkge1xyXG4gICAgI3RpbWVfZW50cnlfaG91cnMge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gICAgI3RpbWVfZW50cnlfaXNzdWVfaWQge1xyXG4gICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjdGltZV9lbnRyeV9pc3N1ZSA+IGF7XHJcbiAgICBtYXJnaW46IDAgMCAwIDEwcHg7XHJcbiAgfVxyXG4gIGVtLmluZm8ge1xyXG4gICAgbWFyZ2luOiA1cHggMCA1cHggMTBweDtcclxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl17XHJcbiAgICAgIG1hcmdpbjogMCAwIDAgLTEwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwICsgZW0uaW5mbyB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG5cclxuICAmLmVkaXRfdGltZV9lbnRyeSB7XHJcbiAgICAjdGltZV9lbnRyeV9ob3VycyB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuI25ld190aW1lX2VudHJ5IHtcclxuICAjaXNzdWVfcGFyZW50X2lzc3VlX2lkLFxyXG4gICNpc3N1ZV9kdWVfZGF0ZSxcclxuICAjaXNzdWVfc3RhcnRfZGF0ZSxcclxuICAjaXNzdWVfZXN0aW1hdGVkX2hvdXJzLFxyXG4gICN0aW1lX2VudHJ5X2hvdXJzIHtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBGT1JNICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4uYXV0b3Njcm9sbCB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIC8qcGFkZGluZzogMXB4OyovXHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTk9USUNFICovXHJcbi8qIFNUQVJUIFNVQ0NFU1NGVUwgTk9USUNFIFBPU0lUSU9OIEZJWEVEICovXHJcbmRpdi5mbGFzaCB7XHJcbiAgJi5ub3RpY2Uge1xyXG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogNDFweDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgcGFkZGluZzogMTRweCA1NXB4IDE0cHggMTBweCAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS1ub3RpY2Utc3VjY2Vzc2Z1LW1haW4pO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5vdGljZS1zdWNjZXNzZnUtYmcpO1xyXG4gICAgY29sb3I6IHZhcigtLW5vdGljZS1zdWNjZXNzZnUtbWFpbik7XHJcbiAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICBsaW5lLWhlaWdodDogQGZzMTg7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgIHotaW5kZXg6IDUwICFpbXBvcnRhbnQ7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDo1MCU7XHJcbiAgICAgIHJpZ2h0OjEwcHg7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIGhlaWdodDp2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgd2lkdGg6dmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIG1hcmdpbjotMTVweCAwIDA7XHJcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIHotaW5kZXg6MTtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1yZWRfYm9yZGVyX2Vycm9yKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjUwJTtcclxuICAgICAgcmlnaHQ6MTBweDtcclxuICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBtYXJnaW46LTE1cHggMCAwO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ub3RpY2UtZXJyb3ItbWFpbik7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgei1pbmRleDogMTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXJlZF9lcnJvcl90ZXh0KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGgyIHtcclxuICAgICAgZm9udC1zaXplOiBAZnMxNjtcclxuICAgICAgbGluZS1oZWlnaHQ6IEBmczE4O1xyXG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbjogMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgbWFyZ2luOiAxMHB4IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmLmVycm9yIHtcclxuICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS1ub3RpY2UtZXJyb3ItbWFpbik7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5vdGljZS1lcnJvci1iZyk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1ub3RpY2UtZXJyb3ItbWFpbi10ZXh0KTtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1ub3RpY2UtZXJyb3ItbWFpbi10ZXh0KTtcclxuICAgICAgfVxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbm90aWNlLWVycm9yLW1haW4pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1yZWRfZXJyb3JfdGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8qIEVORCBTVUNDRVNTRlVMIE5PVElDRSBQT1NJVElPTiBGSVhFRCAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgRVJST1IgTk9USUNFIFBPU0lUSU9OIEZJWEVEICovXHJcblxyXG4ub3Blbi1zaWRlYmFyICN3cmFwcGVyIGZvcm0gPiAjZXJyb3JFeHBsYW5hdGlvbiB7XHJcbiAgcmlnaHQ6IDI1NnB4O1xyXG59XHJcbiN3cmFwcGVyIGZvcm0gPiAjZXJyb3JFeHBsYW5hdGlvbiB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogNDFweDtcclxuICByaWdodDogMDtcclxuICBtYXJnaW46IDA7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIHBhZGRpbmc6IDE0cHggNTVweCAxNHB4IDEwcHggIWltcG9ydGFudDtcclxuICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLW5vdGljZS1lcnJvci1tYWluKTtcclxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbm90aWNlLWVycm9yLWJnKTtcclxuICBjb2xvcjogdmFyKC0tbm90aWNlLWVycm9yLW1haW4tdGV4dCk7XHJcbiAgZm9udC1zaXplOiBAZnMxNjtcclxuICBsaW5lLWhlaWdodDogQGZzMTg7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICB6LWluZGV4OiAxMDAwICFpbXBvcnRhbnQ7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgdG9wOjUwJTtcclxuICAgIHJpZ2h0OjEwcHg7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgY2xlYXI6Ym90aDtcclxuICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICBtYXJnaW46LTE1cHggMCAwO1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIHotaW5kZXg6MTtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgY29sb3I6IHZhcigtLW5vdGljZS1lcnJvci1tYWluLXRleHQpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICB9XHJcblxyXG4gICY6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgY2xlYXI6Ym90aDtcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgdG9wOjUwJTtcclxuICAgIHJpZ2h0OjEwcHg7XHJcbiAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgbWFyZ2luOi0xNXB4IDAgMDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXJlZF9ib3JkZXJfZXJyb3IpO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyIHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb2xvcjogdmFyKC0tcmVkX2Vycm9yX3RleHQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdWwge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBwYWRkaW5nOiAwIDAgMCAxNnB4O1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1cHg7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogNnB4O1xyXG4gICAgICAgIGhlaWdodDogNnB4O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1yZWRfYm9yZGVyX2Vycm9yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnRhYnVsYXIgaW5wdXQsIC50YWJ1bGFyIHNlbGVjdCB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ubm9kYXRhLCAud2FybmluZyB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5vdGljZS13b3JuaW5nLWJnKTtcclxuICBib3JkZXItY29sb3I6IHZhcigtLW5vdGljZS13b3JuaW5nLW1haW4pO1xyXG4gIGNvbG9yOiB2YXIoLS1ub3RpY2Utd29ybmluZy1jb2xvcik7XHJcblxyXG4gIHAge1xyXG4gICAgbWFyZ2luOiAxMHB4IDA7XHJcblxyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLm5vZGF0YSxcclxuZGl2LmZsYXNoLndhcm5pbmcsXHJcbi5jb25mbGljdCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbm90aWNlLXdvcm5pbmctYmcpO1xyXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbm90aWNlLXdvcm5pbmctbWFpbik7XHJcbiAgY29sb3I6IHZhcigtLW5vdGljZS13b3JuaW5nLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEB3YXJuaW5nO1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIGNsZWFyOmJvdGg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDVweDtcclxuICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICBtYXJnaW46IC0xMHB4IDAgMDtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplLXNtYWxsKTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgIGNvbG9yOiB2YXIoLS1ub3RpY2Utd29ybmluZy1tYWluKTtcclxuICB9XHJcblxyXG4gIGJyIHtcclxuICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgY2xlYXI6Ym90aDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiA1cHg7XHJcbiAgfVxyXG5cclxuICAmID4gc3Ryb25nIHtcclxuICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gIH1cclxuXHJcbiAgLmNvbmZsaWN0LWRldGFpbHMge1xyXG4gICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgbWFyZ2luOiA1cHggMCAwO1xyXG5cclxuICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgRVJST1IgTk9USUNFIFBPU0lUSU9OIEZJWEVEICovXHJcblxyXG4vKiBFTkQgTk9USUNFICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBCUkVBRENSVU1CICovXHJcblxyXG4jbWFpbiAuYnJlYWRjcnVtYiB7XHJcbiAgZm9udC1zaXplOiBAZnMxMjtcclxuICBsaW5lLWhlaWdodDogQGdmcztcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIG1hcmdpbjogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAtMjBweDtcclxuICBsZWZ0OiAwO1xyXG59XHJcblxyXG4uY29udHJvbGxlci1hZGRpdGlvbmFsc19tYWNyb3Mge1xyXG4gICYuYWN0aW9uLXNob3cge1xyXG4gICAgLmluZm8ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgYm9keSAjbWFpbiB7XHJcbiAgICAmID4gI2NvbnRlbnQge1xyXG4gICAgICAuYnJlYWRjcnVtYiB+IC5jb250ZXh0dWFsIHtcclxuICAgICAgICB0b3A6IDQ5cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICBib2R5ICNtYWluIHtcclxuICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgIC5icmVhZGNydW1iIH4gLmNvbnRleHR1YWwge1xyXG4gICAgICAgIHRvcDogNDRweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItYWRkaXRpb25hbHNfbWFjcm9zIHtcclxuICAgICYuYWN0aW9uLXNob3cge1xyXG4gICAgICAuaW5mbyB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgZGl2Lm1hY3JvLXRpdGxlIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIEJSRUFEQ1JVTUIgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qICBTVEFSVCBBREQgRklMRSAqL1xyXG5cclxuI2FjY291bnRfZm9ybSB7XHJcbiAgZmllbGRzZXQge1xyXG4gICAgcGFkZGluZzo1MnB4IDIwcHggMzVweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Oy1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgbWFyZ2luOiAyMHB4IDAgMDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcblxyXG4gICAgbGVnZW5kIHtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDoxN3B4O1xyXG4gICAgICBsZWZ0OjIwcHg7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICB9XHJcblxyXG4gICAgJiA+IHAge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYXR0cmlidXRlczplbXB0eSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLyogIEVORCBBREQgRklMRSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTUVESUEqL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICNtYWluIHtcclxuICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTAwcHgpIHt9XHJcbi8qIEVORCBDT01NT04gKi9cclxuXHJcbiNuZXdfdXNlciB7XHJcbiAgI3Bhc3N3b3JkX2ZpZWxkcyB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDAgMDtcclxuICB9XHJcblxyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBKU1RUQUJTICovXHJcbmJvZHkgLmpzdEVkaXRvciB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuI2NvbnRlbnQgZm9ybSB7XHJcbiAgLmpzdEVkaXRvci56ZW4uZGFyay10aGVtZSB0ZXh0YXJlYTpob3ZlcixcclxuICAuanN0RWRpdG9yLnplbi5kYXJrLXRoZW1lIHRleHRhcmVhOmFjdGl2ZSxcclxuICAuanN0RWRpdG9yLnplbi5kYXJrLXRoZW1lIHRleHRhcmVhOmZvY3VzIHtcclxuICAgIGNvbG9yOiAjZGJlMGUwO1xyXG4gIH1cclxuICAuanN0RWRpdG9yLnplbi5kYXJrLXRoZW1lIHRleHRhcmVhIHtcclxuICAgIGNvbG9yOiAjYTRiMWIxO1xyXG4gIH1cclxuXHJcbiAgLmpzdEVkaXRvciB7XHJcbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMHB4O1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbmJvZHkgLmpzdEVkaXRvcntcclxuICB0ZXh0YXJlYSB7XHJcbiAgICAmICsgZGl2IHtcclxuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi56ZW4ge1xyXG4gICN0b3AtbWVudSxcclxuICAjaGVhZGVyLFxyXG4gICNzaWRlYmFyLFxyXG4gIC5vcGVuLXNpZGViYXItbGluayB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmpzdEVkaXRvci56ZW4ge1xyXG4gICAgcGFkZGluZzogNDBweDtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgfVxyXG59XHJcblxyXG4uanN0QmxvY2sge1xyXG4gIGZsZXg6IDEgMCBhdXRvO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgLmljb24tdXNlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vLi4vaW1hZ2VzL3VzZXIucG5nKTtcclxuICB9XHJcblxyXG4gIHRleHRhcmVhLFxyXG4gIC53aWtpLXByZXZpZXcgIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgIHBhZGRpbmc6IDZweCAxMnB4O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgbWFyZ2luOjAgIWltcG9ydGFudDtcclxuICAgIG1pbi13aWR0aDogMTkwcHg7XHJcbiAgICBvdXRsaW5lOiAwIG5vbmU7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICBsaW5lLWhlaWdodDogQGdmcztcclxuXHJcbiAgICBQIHtcclxuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmpzdFRhYnMge1xyXG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICB1bCB7XHJcbiAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBmczEyO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgYSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcblxyXG4gICAgICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIEpTVFRBQlMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEZJTEUgUEFHRSAqL1xyXG5cclxuI21haW4gI2NvbnRlbnQge1xyXG4gIC5saXN0IHtcclxuICAgIC5pY29uLXBhY2thZ2Uge1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICBwYWRkaW5nOiAwIDAgMCAzNnB4O1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICAgICAmOmFmdGVyLFxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIG1hcmdpbjogLTEzcHggMCAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLmNvbnRyb2xsZXItZmlsZXMuYWN0aW9uLWluZGV4IHtcclxuICAuYXV0b3Njcm9sbCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBTVEFSVCBGSUxFIFBBR0UgKi9cclxuXHJcbiNjb250ZW50IHtcclxuICAuZmlsZWNvbnRlbnQtY29udGFpbmVyIHtcclxuICAgIG1pbi1oZWlnaHQ6IGF1dG87XHJcbiAgfVxyXG5cclxuICB0YWJsZS5maWxlY29udGVudCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbnRyLmdyb3VwIHtcclxuICBhLnRvZ2dsZS1hbGwge1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vKiBTVEFSVCBJTlBVVCBUWVBFIEZJTEUgKi9cclxuXHJcbmJvZHkge1xyXG4gICNuZXctYXR0YWNobWVudHMge1xyXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0gfiAqIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMCAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jbWFpbiB7XHJcbiAgLmNvbnRleHR1YWw6bm90KC5uZXh0LXByZXYtbGlua3MpIHtcclxuICAgIGFbb25jbGljayo9XCIkKCcjZXhpc3RpbmctYXR0YWNobWVudHMnKVwiXTpub3QoI3Nob3dfbm90ZV9mb3JtX2V4dHJhcykge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uX2NvbG9yX2FjdGl2ZS1iZyk7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI25ldy1hdHRhY2htZW50cyB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcblxyXG4gIC5hdmF0YXIuZXh0ZW5kZWQgLmRlbGV0ZSB7XHJcbiAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmF0dGFjaG1lbnRzX2Zvcm0ge1xyXG4gICAgZmxleDogMSAwIGF1dG87XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAuYXR0YWNobWVudHNfZmllbGRzIHtcclxuICAgICAgJiA+IHNwYW4ge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZykgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaWNvbi1hdHRhY2htZW50IHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmV4dGVuZGVkIHtcclxuICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgLmFkZF9hdHRhY2htZW50IHtcclxuICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2F0dGFjaG1lbnRzX2ZpZWxkcyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IC05OTk5OTk5cHg7XHJcbiAgICBsZWZ0OiAtOTk5OTk5OXB4O1xyXG4gIH1cclxuXHJcbiAgLmFkZF9hdHRhY2htZW50IHtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICBwYWRkaW5nOiA2cHggMTJweCA2cHggMzVweDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgIG1hcmdpbjowO1xyXG4gICAgbWluLXdpZHRoOiAxOTBweDtcclxuICAgIG91dGxpbmU6IDAgbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrLWdyZXkpO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpbnB1dFt0eXBlPVwiZmlsZVwiXSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5ib2R5ICN0aW1lX2VudHJ5X2lzc3Vle1xyXG4gICY6ZW1wdHkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIH4gI3RpbWVfZW50cnlfaXNzdWUge1xyXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5kaXYuaXNzdWUge1xyXG4gIGltZy5ncmF2YXRhciB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIElOUFVUIFRZUEUgRklMRSovXHJcblxyXG4uY29udHJvbGxlci1pbXBvcnRzIHtcclxuICAmLmFjdGlvbi1uZXcge1xyXG4gICAgI2NvbnRlbnQgZm9ybSAuYm94IHAge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qIFNUQVJUIFVTUkVSIFBBR0UgKi9cclxuXHJcbi5jb250cm9sbGVyLXVzZXJzIHtcclxuICAmLmFjdGlvbi1zaG93IHtcclxuICAgICNtYWluIHtcclxuICAgICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIGhlaWdodDogY2FsYyh+JzEwMCUgLSA1NnB4Jyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDQ1cHggMTVweCAyMHB4O1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgICByaWdodDogMjBweDtcclxuXHJcbiAgICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO1xyXG5cclxuICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zcGxpdGNvbnRlbnRsZWZ0LFxyXG4gICAgLnNwbGl0Y29udGVudHJpZ2h0IHtcclxuICAgICAgbWFyZ2luOiAwIDAgMzBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbnRhYmxlIHtcclxuICBmb3JtIHtcclxuICAgIC5ibG9jayB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jdXNlcl9ncm91cF9pZHMge1xyXG4gYnIge1xyXG4gICBkaXNwbGF5OiBub25lO1xyXG4gfVxyXG4gIGxhYmVsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICB9XHJcbn1cclxuXHJcbi5vYmplY3RzLXNlbGVjdGlvbj5kaXYsICN1c2VyX2dyb3VwX2lkcyB7XHJcbiAgY29sdW1uLWNvdW50OiAxO1xyXG4gIGNvbHVtbi13aWR0aDogMDtcclxuICAtd2Via2l0LWNvbHVtbi1jb3VudDogMTtcclxuICAtd2Via2l0LWNvbHVtbi13aWR0aDogMDtcclxuICAtd2Via2l0LWNvbHVtbi1nYXA6IDA7XHJcbiAgLXdlYmtpdC1jb2x1bW4tcnVsZTogMDtcclxuICAtbW96LWNvbHVtbi1jb3VudDogMTtcclxuICAtbW96LWNvbHVtbi13aWR0aDogMDtcclxuICAtbW96LWNvbHVtbi1nYXA6IDA7XHJcbiAgLW1vei1jb2x1bW4tcnVsZTogMDtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLyogRU5EIFVTUkVSIFBBR0UgKi9cclxuXHJcbi50ZXh0LWRpZmYge1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuYm9keSB7XHJcbiAgI2lzc3VlX2JhZGdlID4gbGkgPiBkaXYgYSwgYTpsaW5rLCBhOnZpc2l0ZWQge1xyXG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XHJcbiAgfVxyXG59XHJcblxyXG5ib2R5ICNzb3J0IHtcclxuICAuc2VsZWN0MiB7XHJcbiAgICBtYXgtd2lkdGg6IDcwcHg7XHJcbiAgICBtYXJnaW46IDVweCAwIDVweCAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBNUkRJQSAqL1xyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM1MHB4KSB7XHJcbiAgI3F1ZXJ5X2Zvcm0gLmhvbGRlci1maWx0ZXJzIHtcclxuICAgIC5hZG1pbi1maWx0ZXIgPiBkaXYge1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmaWVsZHNldCNmaWx0ZXJzIHtcclxuICAgIGZsb2F0OiBub25lO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgIHRhYmxlIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgdGR7XHJcbiAgICAgICAgJi5vcGVyYXRvciB7XHJcbiAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYWRkLWZpbHRlciB7XHJcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIHdpZHRoOiAyOTVweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xyXG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjUwcHgpIHtcclxuICAjY29udGVudCB7XHJcbiAgICBmb3JtIHtcclxuICAgICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxyXG4gICAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXHJcbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG4gICAgICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxyXG4gICAgICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcclxuICAgICAgdGV4dGFyZWEge1xyXG4gICAgICAgIG1pbi13aWR0aDogNzBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTAwcHgpIHtcclxuICAjcXVlcnlfZm9ybSB7XHJcbiAgICAuaG9sZGVyLWZpbHRlcnMge1xyXG4gICAgICAuYWRtaW4tZmlsdGVyIHtcclxuICAgICAgICAmID4gZGl2IHtcclxuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICNmaWx0ZXJzLXRhYmxlIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFkZC1maWx0ZXIge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICBib2R5IC50b29sdGlwIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcbiAgI3dyYXBwZXIgdHIuZ3JvdXAgYS50b2dnbGUtYWxsIHtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgfVxyXG4gIGZpZWxkc2V0I2ZpbHRlcnMge1xyXG4gICAgdGFibGUge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgIHRke1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAgICAgJi5maWVsZCB7XHJcbiAgICAgICAgICB3aWR0aDogMjk1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBib2R5ICNzb3J0IHtcclxuICAgIC5qY2Ytc2VsZWN0IHtcclxuICAgICAgbWFyZ2luOiA1cHggMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLmpjZi1zZWxlY3QgfiAuamNmLXNlbGVjdCB7XHJcbiAgICAgIG1hcmdpbjogNXB4IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgIHBhZGRpbmc6IDUwcHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuICB9XHJcbiAgI3dyYXBwZXIge1xyXG4gICAgI3dyYXBwZXIyIHtcclxuICAgICAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAjbWFpbiAubGlzdCB0aCAuc29ydDphZnRlciB7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcikgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcbiAgLmNvbnRyb2xsZXItdXNlcnMge1xyXG4gICAgJi5hY3Rpb24tc2hvdyB7XHJcbiAgICAgICNtYWluIHtcclxuICAgICAgICAmID4gI2NvbnRlbnQge1xyXG4gICAgICAgICAgLmNvbnRleHR1YWwge1xyXG4gICAgICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggNzVweCAxNXB4IDEwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICNtYWluIGFbaHJlZio9XCJkbXNmL3dlYmRhdlwiXTpiZWZvcmUsXHJcbiAgI21haW4gYS5jdXJyZW50LWZyb20tYWRkcmVzczpiZWZvcmUsXHJcbiAgI21haW4gLnJlcGVhdC12YWx1ZTpiZWZvcmUsXHJcbiAgI21haW4gLmNvbnRleHR1YWw6bm90KC5uZXh0LXByZXYtbGlua3MpIGE6YmVmb3JlLFxyXG4gICNtYWluIC5jb250ZXh0dWFsIGFbaHJlZj1cIi9pc3N1ZXNcIl06YmVmb3JlLFxyXG4gICNtYWluIC5jb250ZXh0dWFsIGFbaHJlZj1cIi90aW1lX2VudHJpZXNcIl06YmVmb3JlLFxyXG4gICNtYWluIC5jb250ZXh0dWFsIGFbaHJlZj1cIi9hY3Rpdml0eVwiXTpiZWZvcmUsXHJcbiAgI21haW4gLnRvZ2dsZS1tdWx0aXNlbGVjdDpiZWZvcmUsXHJcbiAgI21haW4gLmF2YXRhci5leHRlbmRlZCAuZGVsZXRlOmJlZm9yZSxcclxuICAjbWFpbiBhW2hyZWYqPVwicXVlc3Rpb25zX3NlY3Rpb25zL25ld1wiXTpiZWZvcmUsXHJcbiAgI21haW4gLmhvbGQtY29udHJvbCAuY29udHJvbHMgLmJ0bjpiZWZvcmUsXHJcbiAgI21haW4gI2NoZWNrbGlzdF9mb3JtX2l0ZW1zIC5uZXcgc3Bhbi5pY29uOmJlZm9yZSxcclxuICAjbWFpbiAuZmEtcGVuY2lsOmJlZm9yZSxcclxuICAjbWFpbiAjY29udGVudCAjY29tbWVudHMgLmNvbnRleHR1YWwgYVtocmVmKj1cIm9yZGVyX2NvbW1lbnRzXCJdOmJlZm9yZSxcclxuICAjbWFpbiBkaXYuaXNzdWUub3JkZXIuZGV0YWlscyAjaW52b2ljZXMgLmljb24taW52b2ljZSArIGFbaHJlZio9XCJpbnZvaWNlc1wiXTpiZWZvcmUsXHJcbiAgI21haW4gLnF1ZXJ5LWNvbHVtbnMgLmJ1dHRvbnMgc3BhbjpiZWZvcmUsICNtYWluICNzaWRlYmFyIC5jb250ZXh0dWFsIGE6YmVmb3JlLFxyXG4gICNtYWluIGEub3Blbi1maWx0ZXI6YmVmb3JlLFxyXG4gICNtYWluIGEuaHRtbDpiZWZvcmUsXHJcbiAgI21haW4gYS50eHQ6YmVmb3JlLFxyXG4gICNtYWluIGEuaWNvbjpiZWZvcmUsXHJcbiAgI21haW4gc3Bhbi5pY29uLW9ubHk6YmVmb3JlLFxyXG4gICNtYWluIGEuYXRvbTpiZWZvcmUsXHJcbiAgI21haW4gYS5jc3Y6YmVmb3JlLFxyXG4gICNtYWluIGEucGRmOmJlZm9yZSxcclxuICAjbWFpbiAuc29ydC1oYW5kbGU6YmVmb3JlLFxyXG4gICNtYWluIGEuaWNvbi1zZXR0aW5nczpiZWZvcmUsXHJcbiAgI21haW4gYS5pY29uLWNsb3NlOmJlZm9yZSxcclxuICAjbWFpbiBhLmljb24tb25seTpiZWZvcmUsXHJcbiAgI21haW4gYS5wbmc6YmVmb3JlLFxyXG4gICNtYWluIGEudmNmOmJlZm9yZSxcclxuICAjbWFpbiBhLnhsczpiZWZvcmUsXHJcbiAgI21haW4gYS5wcm9qZWN0OmJlZm9yZSxcclxuICAjbWFpbiAjb3BlcmF0aW9uX2NvbnRhY3RfaWRfYWRkX2xpbms6YmVmb3JlLFxyXG4gICNtYWluICNkZWFsX2NvbnRhY3RfaWRfYWRkX2xpbms6YmVmb3JlLFxyXG4gICNtYWluICNleHBlbnNlX2NvbnRhY3RfaWRfYWRkX2xpbms6YmVmb3JlLFxyXG4gICNtYWluICNpbnZvaWNlX2NvbnRhY3RfaWRfYWRkX2xpbms6YmVmb3JlLFxyXG4gICNtYWluICNvcmRlcl9jb250YWN0X2lkX2FkZF9saW5rOmJlZm9yZSxcclxuICAjbWFpbiAjY29tcGFueV9wcm9maWxlX2VkaXQgYTpiZWZvcmUsXHJcbiAgI21haW4gLmljb24tbm90LW9rOmJlZm9yZSB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIGEud2lraS1hbmNob3Ige1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIFNUQVJUIFNVQ0NFU1NGVUwgTk9USUNFIFBPU0lUSU9OIEZJWEVEICovXHJcbiAgZGl2LmZsYXNoIHtcclxuICAgICYubm90aWNlIHtcclxuICAgICAgdG9wOiA1MXB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAvKiBFTkQgU1VDQ0VTU0ZVTCBOT1RJQ0UgUE9TSVRJT04gRklYRUQgKi9cclxuXHJcbiAgYm9keSAuc2VsZWN0MiB+IC5pY29uICxcclxuICBib2R5IC5zZWxlY3QyIH4gLmljb24tb25seSxcclxuICBib2R5ICNzaWRlYmFyIC5zZWxlY3QyIH4gLmljb24sXHJcbiAgYm9keSAjc2lkZWJhciAuc2VsZWN0MiB+IC5pY29uLW9ubHksXHJcbiAgYm9keSBpbnB1dFt0eXBlPVwidGV4dFwiXSB+IC5pY29uLFxyXG4gIGJvZHkgaW5wdXRbdHlwZT1cInRleHRcIl0gfiAuaWNvbi1vbmx5LFxyXG4gIGJvZHkgI3NpZGViYXIgaW5wdXRbdHlwZT1cInRleHRcIl0gfiAuaWNvbixcclxuICBib2R5ICNzaWRlYmFyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIH4gLmljb24tb25seSxcclxuICBib2R5IC5qY2Ytc2VsZWN0IH4gLmljb24sXHJcbiAgYm9keSAuamNmLXNlbGVjdCB+IC5pY29uLW9ubHksXHJcbiAgYm9keSAjc2lkZWJhciAuamNmLXNlbGVjdCB+IC5pY29uLFxyXG4gIGJvZHkgI3NpZGViYXIgLmpjZi1zZWxlY3QgfiAuaWNvbi1vbmx5LFxyXG4gIGJvZHkgdGV4dGFyZWEgfiAuaWNvbixcclxuICBib2R5IHRleHRhcmVhIC5pY29uLW9ubHksXHJcbiAgYm9keSAjc2lkZWJhciB0ZXh0YXJlYSB+IC5pY29uXHJcbiAgYm9keSAjc2lkZWJhciB0ZXh0YXJlYSB+IC5pY29uLW9ubHkge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEwcHggIWltcG9ydGFudDtcclxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gICN3cmFwcGVye1xyXG4gICAgZm9ybSB7XHJcbiAgICAgICYgPiAjZXJyb3JFeHBsYW5hdGlvbiB7XHJcbiAgICAgICAgdG9wOiA1MXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICNmb290ZXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrLWdyZXkpO1xyXG4gIH1cclxuICBib2R5IC5qc3RFZGl0b3IuemVuLCAuanN0RWxlbWVudHMuemVuIHtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcblxyXG4gICNtYWluICB7XHJcbiAgICBwLm90aGVyLWZvcm1hdHMge1xyXG4gICAgICBwYWRkaW5nOiAwIDEwcHggMjBweCAwO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIH1cclxuICB9XHJcbiAgI21haW4ge1xyXG5cclxuICAgIHRhYmxlLmxpc3QsXHJcbiAgICAudGFibGUtbGlzdCB7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLm90aGVyLWZvcm1hdHMge1xyXG4gICAgICBhLmF0b20sXHJcbiAgICAgIGEuY3N2LFxyXG4gICAgICBhLnBkZiB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuXHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50b2dnbGUtbXVsdGlzZWxlY3Qge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5icmVhZGNydW1iIHtcclxuICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgbWFyZ2luOiAxMHB4IDA7XHJcbiAgICB9XHJcblxyXG4gICAgdHIge1xyXG4gICAgICAuaWNvbixcclxuICAgICAgLmljb24tb25seSB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluIGFbaHJlZio9XCJkbXNmL3dlYmRhdlwiXSxcclxuICBib2R5IGEud2lraS1hbmNob3IsXHJcbiAgI21haW4gLmNvbnRleHR1YWw6bm90KC5uZXh0LXByZXYtbGlua3MpIGEsXHJcbiAgI21haW4gYS5jdXJyZW50LWZyb20tYWRkcmVzcyxcclxuICAjbWFpbiAucmVwZWF0LXZhbHVlLFxyXG4gICNtYWluIC5jb250ZXh0dWFsIGFbaHJlZj1cIi9pc3N1ZXNcIl0sXHJcbiAgI21haW4gLmNvbnRleHR1YWwgYVtocmVmPVwiL3RpbWVfZW50cmllc1wiXSxcclxuICAjbWFpbiAuY29udGV4dHVhbCBhW2hyZWY9XCIvYWN0aXZpdHlcIl0sXHJcbiAgI21haW4gLnRvZ2dsZS1tdWx0aXNlbGVjdCxcclxuICAjbWFpbiAuYXZhdGFyLmV4dGVuZGVkIC5kZWxldGUsXHJcbiAgI21haW4gYVtocmVmKj1cInF1ZXN0aW9uc19zZWN0aW9ucy9uZXdcIl0sXHJcbiAgI21haW4gLmhvbGQtY29udHJvbCAuY29udHJvbHMgLmJ0bixcclxuICAjbWFpbiAjY2hlY2tsaXN0X2Zvcm1faXRlbXMgLm5ldyBzcGFuLmljb24sXHJcbiAgI21haW4gLmZhLXBlbmNpbCxcclxuICAjbWFpbiAjY29udGVudCAjY29tbWVudHMgLmNvbnRleHR1YWwgYVtocmVmKj1cIm9yZGVyX2NvbW1lbnRzXCJdLFxyXG4gICNtYWluIGRpdi5pc3N1ZS5vcmRlci5kZXRhaWxzICNpbnZvaWNlcyAuaWNvbi1pbnZvaWNlICsgYVtocmVmKj1cImludm9pY2VzXCJdLFxyXG4gICNtYWluIC5xdWVyeS1jb2x1bW5zIC5idXR0b25zIHNwYW4sXHJcbiAgI21haW4gI3NpZGViYXIgLmNvbnRleHR1YWwgYSxcclxuICAjbWFpbiBhLm9wZW4tZmlsdGVyLFxyXG4gICNtYWluIGEuaHRtbCwgI21haW4gYS50eHQsXHJcbiAgI21haW4gYS5pY29uLFxyXG4gICNtYWluIHNwYW4uaWNvbi1vbmx5LFxyXG4gICNtYWluIGEuYXRvbSxcclxuICAjbWFpbiBhLmNzdixcclxuICAjbWFpbiBhLnBkZixcclxuICAjbWFpbiAuc29ydC1oYW5kbGUsXHJcbiAgI21haW4gYS5pY29uLXNldHRpbmdzLFxyXG4gICNtYWluIGEuaWNvbi1jbG9zZSxcclxuICAjbWFpbiBhLmljb24tb25seSxcclxuICAjbWFpbiBhLnBuZyxcclxuICAjbWFpbiBhLnZjZixcclxuICAjbWFpbiBhLnhscyxcclxuICAjbWFpbiBhLnByb2plY3QsXHJcbiAgI21haW4gI29wZXJhdGlvbl9jb250YWN0X2lkX2FkZF9saW5rLFxyXG4gICNtYWluICNkZWFsX2NvbnRhY3RfaWRfYWRkX2xpbmssXHJcbiAgI21haW4gI2V4cGVuc2VfY29udGFjdF9pZF9hZGRfbGluayxcclxuICAjbWFpbiAjaW52b2ljZV9jb250YWN0X2lkX2FkZF9saW5rLFxyXG4gICNtYWluICNvcmRlcl9jb250YWN0X2lkX2FkZF9saW5rLFxyXG4gICNtYWluICNjb21wYW55X3Byb2ZpbGVfZWRpdCBhLFxyXG4gICNtYWluIC5pY29uLW5vdC1vayB7XHJcbiAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZykgIWltcG9ydGFudDtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjcXVlcnlfZm9ybSxcclxuICAjcXVlcnlfZm9ybV9jb250ZW50IHtcclxuICAgIC5ob2xkZXItZmlsdGVycyB7XHJcbiAgICAgIC5pbi1maWx0ZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCAxMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAjb3B0aW9ucyB7XHJcbiAgICAgICAgdGFibGUge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgICAgdGJvZHkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnF1ZXJ5LWNvbHVtbnMge1xyXG4gICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgIC5qY2YtbGlzdC1ib3gge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5hZG1pbi1maWx0ZXIge1xyXG4gICAgICAgICYgPiBkaXYge1xyXG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGFibGUge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgICAgdGJvZHkge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgICAgICYuZmlsdGVyIHtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgICAgICAgJi5maWVsZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgc2VsZWN0IHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMztcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICYudmFsdWVzIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hZGQtZmlsdGVyIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuXHJcbiAgICAgICAgICBsYWJlbFtmb3I9XCJhZGRfZmlsdGVyX3NlbGVjdFwiXSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI29wdGlvbnMge1xyXG4gICAgICAgICAgdGFibGUge1xyXG4gICAgICAgICAgICB0ciB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDEwcHg7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLnF1ZXJ5LWNvbHVtbnMge1xyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIC5qY2YtbGlzdC1ib3gge1xyXG4gICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgZm9ybSB7XHJcbiAgICAgIC50YWJ1bGFyIHtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgIGVtLmluZm8ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luOiA1cHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJiAuY29udGV4dHVhbCAuZHJkbiB7XHJcbiAgICAgIC5kcmRuLWNvbnRlbnQge1xyXG4gICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgICNjb250ZW50IHtcclxuICAgICAgcC5vdGhlci1mb3JtYXRzIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gIGZpZWxkc2V0I2ZpbHRlcnMge1xyXG4gICAgdGFibGUge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICB0Ym9keSxcclxuICAgICAgdHIge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRke1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDA7XHJcblxyXG4gICAgICAgICYuZmllbGQge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG5cclxuICAjbm90ZXMge1xyXG4gICAgLnJlZG1pbmUtZXZvbHV0aW9uLWF0dGFjaG1lbnRzIHtcclxuICAgICAgLmhvbGRlci1nYWwge1xyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDIyMHB4O1xyXG5cclxuICAgICAgICAgICAgLmluIHtcclxuICAgICAgICAgICAgICBtaW4td2lkdGg6IDIxMHB4O1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAyMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuY29udHJvbGxlci1yZXNvdXJjZV9ib29raW5ncyBhW2FjY2Vzc2tleT1cInBcIl0sXHJcbiAgLmNvbnRyb2xsZXItcmVzb3VyY2VfYm9va2luZ3MgYVthY2Nlc3NrZXk9XCJuXCJdIHtcclxuICAgIHBhZGRpbmc6IDhweCAxMHB4O1xyXG4gIH1cclxuICBmaWVsZHNldCNmaWx0ZXJzIHtcclxuICAgIHRhYmxlIHtcclxuICAgICAgdGQge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCA1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYWRkLWZpbHRlciB7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuXHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW46IDAgMCA1cHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBib2R5IHtcclxuICAgICN3cmFwcGVyMyB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCAzMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI21haW4gI2NvbnRlbnQge1xyXG5cclxuICAgIGZvcm0ge1xyXG4gICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcclxuXHJcbiAgICAgICAgJiArIGEge1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIG1hcmdpbjogMTBweCAwIDA7XHJcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMzBweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBlbS5pbmZvLFxyXG4gICAgICAjdGltZV9lbnRyeV9pc3N1ZSA+IGF7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC50YWJ1bGFyIHtcclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICBlbS5pbmZvIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW46IDVweCAwIDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5ib3ggcCB7XHJcbiAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgJi5pbmxpbmUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICNpc3N1ZV9kdWVfZGF0ZSxcclxuICAgICAgI2lzc3VlX3N0YXJ0X2RhdGUge1xyXG4gICAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGZvcm0ge1xyXG4gICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICBtYXJnaW46IDEwcHggMCAwO1xyXG5cclxuICAgICAgICAmICsgYSxcclxuICAgICAgICAmICsgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XHJcbiAgICAgICAgICBtYXJnaW46IDEwcHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBlbS5pbmZvIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI21haW4ge1xyXG4gICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgcC5vdGhlci1mb3JtYXRzIHtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBkaXYuaXNzdWUge1xyXG4gICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICYubmV4dC1wcmV2LWxpbmtzIHtcclxuICAgICAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmpvdXJuYWwtbGluayB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmF0dGFjaG1lbnRzIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcclxuXHJcbiAgICAgICAgLmNvbnRleHR1YWwge1xyXG4gICAgICAgICAgdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmF0dGFjaG1lbnRzIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogLTMwcHggIWltcG9ydGFudDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGFibGUge1xyXG4gICAgICAgIHBhZGRpbmc6IDMwcHggMCAwO1xyXG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuXHJcbiAgICAgICAgdHIge1xyXG4gICAgICAgICAgJltpZCo9XCJhdHRhY2htZW50LVwiXSB7XHJcblxyXG4gICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IEBmczE2O1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAxMHB4O1xyXG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG5cclxuICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206MDtcclxuICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI21haW4ge1xyXG4gICAgLmF0dGFjaG1lbnRzIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgIHRhYmxlIHtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4IDAgMDtcclxuICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRlbGV0ZSB7XHJcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubmV3X3JlbGF0aW9uIHtcclxuICAgIHAge1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29udHJvbGxlci1yZXNvdXJjZV9ib29raW5ncy5hY3Rpb24taW5kZXgge1xyXG4gICAgLnJlc291cmNlLXBsYW5uaW5nLWNoYXJ0IHtcclxuICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgIC5ib3guYXR0YWNobWVudHMge1xyXG4gICAgICB0YWJsZSB7XHJcblxyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgICZbaWQqPVwiYXR0YWNobWVudC1cIl0ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLmpzdEJsb2NrIC5qc3RFZGl0b3IgPiBkaXYge1xyXG4gIC5ja2VfY2hyb21lIHtcclxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTtcclxuICAgIC1tb3otYm94LXNoYWRvdzogMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcbi8qIFNUQVJUIEJPT1RTVFJBUCBEUk9QRE9XTiBNRU5VICovXHJcblxyXG4jd3JhcHBlciB7XHJcbiAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1kcm9wLWJvcmRlci1jb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kcm9wLWJnKTtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgfVxyXG5cclxuICAjdG9wLW1lbnUsXHJcbiAgI2NtX2NvbnRleHR1YWxfbWVudSB7XHJcbiAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICYgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgLmRyb3Bkb3duIHtcclxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBjb250ZW50OiBAZXh0cmEtbWVudTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICNkZC11bCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZHJvcC1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZHJvcC1iZyk7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWRyb3AtdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogNHB4IDVweCA0cHggMzBweDtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDowO1xyXG4gICAgICAgICAgICAgICAgbGVmdDo1cHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcC1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUtc21hbGwpO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcC1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWRyb3AtaWNvbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcblxyXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wLWljb24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWRyb3AtYmctaG92ZXIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItcmVwb3NpdG9yaWVzIHtcclxuICAjbWFpbiB7XHJcbiAgICAubGlzdC5lbnRyaWVzIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuXHJcbiAgICAgIHRkIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE0cHggIWltcG9ydGFudDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICYuc2l6ZSxcclxuICAgICAgICAmLmFnZSxcclxuICAgICAgICAmLmF1dGhvIHtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5pY29uLWZpbGUsXHJcbiAgICAgIC5pY29uLWZvbGRlciB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBwYWRkaW5nOiAwIDAgMCAzMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuXHJcbiAgICAgICAgJjphZnRlcixcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICB3aWR0aDogMjZweDtcclxuICAgICAgICAgIGhlaWdodDogMjZweDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuaWNvbi1maWxle1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDogQGRvd25sb2FkO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuaWNvbi1mb2xkZXJ7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OiBAbGRhcC1hdXRoZW50aWNhdGlvbjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuZmlsZW5hbWUge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDIycHg7XHJcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xyXG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdHIuZW50cnkgdGQuZmlsZW5hbWUge1xyXG4gICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICNjb250ZW50IHtcclxuICAgICAgaDIge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDg1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBmb3JtW2FjdGlvbio9XCJkaWZmXCJdIHtcclxuICAgICAgJiArIHAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYXV0b3Njcm9sbCB7XHJcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNjb250ZW50IHtcclxuICAgIGgyIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTAzcHg7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDg1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgI3JldmlzaW9uX3NlbGVjdG9yIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDEwMCU7XHJcbiAgICAgIHJpZ2h0OiAzMHB4O1xyXG4gICAgICBtYXJnaW46IDY0cHggMCAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB3aWR0aDogNTAwcHg7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblxyXG4gICAgICAuc2VsZWN0MiB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICAgIC5zZWxlY3QyLFxyXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMjBweDtcclxuICAgICAgICBtaW4td2lkdGg6IDEyMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuc2VsZWN0MiB+IGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmFjdGlvbi1kaWZmLFxyXG4gICYuYWN0aW9uLXJldmlzaW9uLFxyXG4gICYuYWN0aW9uLXJldmlzaW9ucyB7XHJcbiAgICAjbWFpbiB7XHJcbiAgICAgICYgID4gI2NvbnRlbnQge1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmID4gLmNvbnRleHR1YWw6bm90KC5uZXh0LXByZXYtbGlua3MpIHtcclxuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuXHJcbiAgICAgICAgICBmb3JtW2FjdGlvbio9XCJyZXBvc2l0b3J5XCJdIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMTBweDtcclxuXHJcbiAgICAgICAgICAgICNyZXYsXHJcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0YWJsZS5maWxlY29udGVudCxcclxuICAgICAgdGFibGUuY2hhbmdlc2V0c3tcclxuICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmb3JtW2FjdGlvbio9XCJyZXBvc2l0b3J5XCJdICsgcCB7XHJcbiAgICBjb2xvcjogdmFyKC0tYmctZmZmKTtcclxuXHJcbiAgICBhW2hyZWYqPVwicmVwb3NpdG9yeVwiXSB7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICBwYWRkaW5nOiA4cHggMzBweDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG4gICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgb3V0bGluZTogMCBub25lO1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5vdGhlci1mb3JtYXRzIHtcclxuICAgIGEge1xyXG4gICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgcGFkZGluZzowO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgIHotaW5kZXg6MjtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGZvbnQtc2l6ZTowcHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OjBweDtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICBtaW4td2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItcmVwb3NpdG9yaWVzIHtcclxuICAgICNtYWluIHtcclxuICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2NvbnRlbnQge1xyXG4gICAgICAjcmV2aXNpb25fc2VsZWN0b3Ige1xyXG4gICAgICAgIG1hcmdpbjogMjlweCAwIDA7XHJcbiAgICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItcmVwb3NpdG9yaWVzIHtcclxuICAgICNtYWluIHtcclxuICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmID4gI2NvbnRlbnQge1xyXG4gICAgICAgICYgPiAuY29udGV4dHVhbDpub3QoLm5leHQtcHJldi1saW5rcykge1xyXG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcblxyXG4gICAgICAgICAgZm9ybVthY3Rpb24qPVwicmVwb3NpdG9yeVwiXSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5hY3Rpb24tZGlmZixcclxuICAgICYuYWN0aW9uLXJldmlzaW9uLFxyXG4gICAgJi5hY3Rpb24tcmV2aXNpb25zIHtcclxuICAgICAgI21haW4ge1xyXG4gICAgICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJiA+IC5jb250ZXh0dWFsOm5vdCgubmV4dC1wcmV2LWxpbmtzKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgZm9ybVthY3Rpb24qPVwicmVwb3NpdG9yeVwiXSB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgICAgICAgI3JldixcclxuICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjowIDAgMCAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gIC5jb250cm9sbGVyLXJlcG9zaXRvcmllcyB7XHJcbiAgICAjbWFpbiB7XHJcbiAgICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICAgJiA+IC5jb250ZXh0dWFsOm5vdCgubmV4dC1wcmV2LWxpbmtzKSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICAgICBmb3JtW2FjdGlvbio9XCJyZXBvc2l0b3J5XCJdIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAjY29udGVudCB7XHJcbiAgICAgICNyZXZpc2lvbl9zZWxlY3RvciB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwdncgLSAyMHB4KTtcclxuXHJcbiAgICAgICAgLnNlbGVjdDIge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc2VsZWN0MixcclxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAyMHB4KTtcclxuICAgICAgICAgIG1pbi13aWR0aDogY2FsYygxMDB2dyAtIDIwcHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5hY3Rpb24tZGlmZixcclxuICAgICYuYWN0aW9uLXJldmlzaW9uLFxyXG4gICAgJi5hY3Rpb24tcmV2aXNpb25zIHtcclxuICAgICAgI21haW4ge1xyXG4gICAgICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICAgICAmID4gLmNvbnRleHR1YWw6bm90KC5uZXh0LXByZXYtbGlua3MpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgICBmb3JtW2FjdGlvbio9XCJyZXBvc2l0b3J5XCJdIHtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgICAjcmV2IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46MTBweCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZm9ybVthY3Rpb24qPVwicmVwb3NpdG9yeVwiXSArIHAge1xyXG4gICAgICBhW2hyZWYqPVwicmVwb3NpdG9yeVwiXSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuY29udHJvbGxlci1yZXBvc2l0b3JpZXMuYWN0aW9uLWVkaXQge1xyXG4gICAgI21haW4ge1xyXG4gICAgICAmID4gI2NvbnRlbnQge1xyXG4gICAgICAgICYgPiAuY29udGV4dHVhbDpub3QoLm5leHQtcHJldi1saW5rcykge1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcclxuICBib2R5ICNzb3J0IHtcclxuICAgIC5zZWxlY3QyIHtcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXJnaW46IDVweCAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBTdGFydCB0d28tZmFjdG9yIGF1dGhlbnRpY2F0aW9uICovXHJcbi5jb250cm9sbGVyLXR3b2ZhIHtcclxuICAmLmFjdGlvbi1hY3RpdmF0ZV9jb25maXJtIHtcclxuICAgICNtYWluIHtcclxuICAgICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgICAuc3BsaXRjb250ZW50bGVmdCB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8qIEVuZCB0d28tZmFjdG9yIGF1dGhlbnRpY2F0aW9uICovXHJcbmlucHV0W3R5cGU9XCJkYXRlXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcclxuaW5wdXRbdHlwZT1cImRhdGVcIl06Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvciB7XHJcbiAgZGlzcGxheTpub25lO1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICBtYXJnaW46IDA7XHJcbiAgb3BhY2l0eTowO1xyXG59XHJcblxyXG4jZGFzaGJvYXJkLWZvcm0ge1xyXG4gIC5ib3gge1xyXG4gICAgLnNwbGl0Y29udGVudCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jZXhpc3RpbmctYXR0YWNobWVudHMge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gIC5leGlzdGluZy1hdHRhY2htZW50IHtcclxuICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4jbWFpbiB7XHJcbiAgLnRhYnVsYXIge1xyXG4gICAgaW5wdXQuZmlsZW5hbWUge1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gICNtYWluLW1lbnUge1xyXG4gICAgLnRhYnMtYnV0dG9ucyB7XHJcbiAgICAgIHRvcDogLTk5OTk5OXB4O1xyXG4gICAgICBsZWZ0OiAtOTk5OTk5cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwcHgpIHtcclxuICAuYmlnLW1lbnUsXHJcbiAgLm9wZW4tc2lkZWJhciB7XHJcbiAgICAjY29udGVudCB7XHJcbiAgICAgIGZvcm0ge1xyXG4gICAgICAgIC5ib3gge1xyXG4gICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwMHB4O1xyXG5cclxuICAgICAgICAgICAgJiA+IGxhYmVsIHtcclxuICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgLTIwMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIElDT04gRk9OVFMgKi9cclxuXHJcbkBjbGFzc2ljLWFjY291bnQtcHJvamVjdHM6IFwiXFxFMDAxXCI7XHJcbkBjbGFzc2ljLWFjdGlvbi1sYXlvdXRzOiBcIlxcRTAwMlwiO1xyXG5AY2xhc3NpYy1hY3Rpdml0eS1saXN0OiBcIlxcRTAwM1wiO1xyXG5AY2xhc3NpYy1hY3Rpdml0eTogXCJcXEUwMDRcIjtcclxuQGNsYXNzaWMtYWRkLXBheW1lbnQ6IFwiXFxFMDA1XCI7XHJcbkBjbGFzc2ljLWFkZGl0aW9uYWxzOiBcIlxcRTAwNlwiO1xyXG5AY2xhc3NpYy1hZG1pbmlzdHJhdGlvbjogXCJcXEUwMDdcIjtcclxuQGNsYXNzaWMtYWdpbGU6IFwiXFxFMDA4XCI7XHJcbkBjbGFzc2ljLWFyY2hpdmUtMjogXCJcXEUwMDlcIjtcclxuQGNsYXNzaWMtYXJjaGl2ZTogXCJcXEUwMEFcIjtcclxuQGNsYXNzaWMtYXJyb3ctYm90dG9tOiBcIlxcRTAwQlwiO1xyXG5AY2xhc3NpYy1hcnJvdy1kb3VibGUtZG93bjogXCJcXEUwMENcIjtcclxuQGNsYXNzaWMtYXJyb3ctZG91YmxlLXVwOiBcIlxcRTAwRFwiO1xyXG5AY2xhc3NpYy1hcnJvdy1kb3duOiBcIlxcRTAwRVwiO1xyXG5AY2xhc3NpYy1hcnJvdy1sZWZ0OiBcIlxcRTAwRlwiO1xyXG5AY2xhc3NpYy1hcnJvdy1yaWdodDogXCJcXEUwMTBcIjtcclxuQGNsYXNzaWMtYXJyb3ctdG9wOiBcIlxcRTAxMVwiO1xyXG5AY2xhc3NpYy1hcnJvdy13aWRlLXJpZ2h0OiBcIlxcRTAxMlwiO1xyXG5AY2xhc3NpYy1hdG9tOiBcIlxcRTAxM1wiO1xyXG5AY2xhc3NpYy1hdHRhY2htZW50OiBcIlxcRTAxNFwiO1xyXG5AY2xhc3NpYy1iYWNrOiBcIlxcRTAxNVwiO1xyXG5AY2xhc3NpYy1iYWNrbG9nOiBcIlxcRTAxNlwiO1xyXG5AY2xhc3NpYy1iYXNrZXQ6IFwiXFxFMDE3XCI7XHJcbkBjbGFzc2ljLWJhdHRlcnk6IFwiXFxFMDE4XCI7XHJcbkBjbGFzc2ljLWJvYXJkczogXCJcXEUwMTlcIjtcclxuQGNsYXNzaWMtYm9va21hcms6IFwiXFxFMDFBXCI7XHJcbkBjbGFzc2ljLWNhbGVuZGFyOiBcIlxcRTAxQlwiO1xyXG5AY2xhc3NpYy1jYXJ0OiBcIlxcRTAxQ1wiO1xyXG5AY2xhc3NpYy1jaGFuZ2UtdXNlcjogXCJcXEUwMURcIjtcclxuQGNsYXNzaWMtY2hlY2tlZDogXCJcXEUwMUVcIjtcclxuQGNsYXNzaWMtY2xpcDogXCJcXEUwMUZcIjtcclxuQGNsYXNzaWMtY2xvc2UtbmV3LXNtYWxsOiBcIlxcRTAyMFwiO1xyXG5AY2xhc3NpYy1jbG9zZS1uZXc6IFwiXFxFMDIxXCI7XHJcbkBjbGFzc2ljLWNsb3NlLXNlYXJjaDogXCJcXEUwMjJcIjtcclxuQGNsYXNzaWMtY29tbWVudDogXCJcXEUwMjNcIjtcclxuQGNsYXNzaWMtY29tbWVudHM6IFwiXFxFMDI0XCI7XHJcbkBjbGFzc2ljLWNvbXBhbnk6IFwiXFxFMDI1XCI7XHJcbkBjbGFzc2ljLWNvbnRhY3RzOiBcIlxcRTAyNlwiO1xyXG5AY2xhc3NpYy1jb3B5OiBcIlxcRTAyN1wiO1xyXG5AY2xhc3NpYy1jcGx1czogXCJcXEUwMjhcIjtcclxuQGNsYXNzaWMtY3JtOiBcIlxcRTAyOVwiO1xyXG5AY2xhc3NpYy1jc2hhcnA6IFwiXFxFMDJBXCI7XHJcbkBjbGFzc2ljLWNzczogXCJcXEUwMkJcIjtcclxuQGNsYXNzaWMtY3N2OiBcIlxcRTAyQ1wiO1xyXG5AY2xhc3NpYy1jdXN0b20tZmllbGRzOiBcIlxcRTAyRFwiO1xyXG5AY2xhc3NpYy1kYXY6IFwiXFxFMDJFXCI7XHJcbkBjbGFzc2ljLWRlYWxzOiBcIlxcRTAyRlwiO1xyXG5AY2xhc3NpYy1kZWw6IFwiXFxFMDMwXCI7XHJcbkBjbGFzc2ljLWRlc2NyaXB0aW9uOiBcIlxcRTAzMVwiO1xyXG5AY2xhc3NpYy1kaWFtb25kOiBcIlxcRTAzMlwiO1xyXG5AY2xhc3NpYy1kaWZmOiBcIlxcRTAzM1wiO1xyXG5AY2xhc3NpYy1kbXNmOiBcIlxcRTAzNFwiO1xyXG5AY2xhc3NpYy1kb2N1bWVudDogXCJcXEUwMzVcIjtcclxuQGNsYXNzaWMtZG9jdW1lbnRzOiBcIlxcRTAzNlwiO1xyXG5AY2xhc3NpYy1kb2N4LTI6IFwiXFxFMDM3XCI7XHJcbkBjbGFzc2ljLWRvY3gtZmlsZTogXCJcXEUwMzhcIjtcclxuQGNsYXNzaWMtZG9jeDogXCJcXEUwMzlcIjtcclxuQGNsYXNzaWMtZG9sbGFyOiBcIlxcRTAzQVwiO1xyXG5AY2xhc3NpYy1kb3duLTE6IFwiXFxFMDNCXCI7XHJcbkBjbGFzc2ljLWRvd24tMjogXCJcXEUwM0NcIjtcclxuQGNsYXNzaWMtZG93bmxvYWQ6IFwiXFxFMDNEXCI7XHJcbkBjbGFzc2ljLWRyaXZlOiBcIlxcRTAzRVwiO1xyXG5AY2xhc3NpYy1lZGl0OiBcIlxcRTAzRlwiO1xyXG5AY2xhc3NpYy1lbWFpbDogXCJcXEUwNDBcIjtcclxuQGNsYXNzaWMtZW51bWVyYXRpb25zOiBcIlxcRTA0MVwiO1xyXG5AY2xhc3NpYy1FUlA6IFwiXFxFMDQyXCI7XHJcbkBjbGFzc2ljLUVWTTogXCJcXEUwNDNcIjtcclxuQGNsYXNzaWMtZXhwZW5zZXM6IFwiXFxFMDQ0XCI7XHJcbkBjbGFzc2ljLWV4dGVybmFsOiBcIlxcRTA0NVwiO1xyXG5AY2xhc3NpYy1leHRyYS1tZW51OiBcIlxcRTA0NlwiO1xyXG5AY2xhc3NpYy1mYXYtb2ZmOiBcIlxcRTA0N1wiO1xyXG5AY2xhc3NpYy1mYXY6IFwiXFxFMDQ4XCI7XHJcbkBjbGFzc2ljLWZhdm9yaXQ6IFwiXFxFMDQ5XCI7XHJcbkBjbGFzc2ljLWZpbGVzOiBcIlxcRTA0QVwiO1xyXG5AY2xhc3NpYy1maWx0ZXI6IFwiXFxFMDRCXCI7XHJcbkBjbGFzc2ljLWZpbmFuY2U6IFwiXFxFMDRDXCI7XHJcbkBjbGFzc2ljLWZvbGRlcjogXCJcXEUwNERcIjtcclxuQGNsYXNzaWMtZnVsbHNjcmVlbjogXCJcXEUwNEVcIjtcclxuQGNsYXNzaWMtZ2FudHQ6IFwiXFxFMDRGXCI7XHJcbkBjbGFzc2ljLWdpZjogXCJcXEUwNTBcIjtcclxuQGNsYXNzaWMtZ2l0LW5ldzogXCJcXEUwNTFcIjtcclxuQGNsYXNzaWMtZ2l0OiBcIlxcRTA1MlwiO1xyXG5AY2xhc3NpYy1ncm91cDogXCJcXEUwNTNcIjtcclxuQGNsYXNzaWMtaGVhcnQ6IFwiXFxFMDU0XCI7XHJcbkBjbGFzc2ljLWhlbHA6IFwiXFxFMDU1XCI7XHJcbkBjbGFzc2ljLWhpc3Rvcnk6IFwiXFxFMDU2XCI7XHJcbkBjbGFzc2ljLWhvbWU6IFwiXFxFMDU3XCI7XHJcbkBjbGFzc2ljLWhvdXJnbGFzczogXCJcXEUwNThcIjtcclxuQGNsYXNzaWMtaHRtbDogXCJcXEUwNTlcIjtcclxuQGNsYXNzaWMtaW1wb3J0OiBcIlxcRTA1QVwiO1xyXG5AY2xhc3NpYy1pbnZlbnRvcnk6IFwiXFxFMDVCXCI7XHJcbkBjbGFzc2ljLWludm9pY2VzOiBcIlxcRTA1Q1wiO1xyXG5AY2xhc3NpYy1pc3N1ZXM6IFwiXFxFMDVEXCI7XHJcbkBjbGFzc2ljLWphdmE6IFwiXFxFMDVFXCI7XHJcbkBjbGFzc2ljLWpwZzogXCJcXEUwNUZcIjtcclxuQGNsYXNzaWMtanM6IFwiXFxFMDYwXCI7XHJcbkBjbGFzc2ljLWthbmJhbjogXCJcXEUwNjFcIjtcclxuQGNsYXNzaWMta2V5OiBcIlxcRTA2MlwiO1xyXG5AY2xhc3NpYy1rZXkyOiBcIlxcRTA2M1wiO1xyXG5AY2xhc3NpYy1rbm93bGVkZ2ViYXNlOiBcIlxcRTA2NFwiO1xyXG5AY2xhc3NpYy1sZGFwLWF1dGhlbnRpY2F0aW9uOiBcIlxcRTA2NVwiO1xyXG5AY2xhc3NpYy1saWtlOiBcIlxcRTA2NlwiO1xyXG5AY2xhc3NpYy1saW5rLWJyZWFrOiBcIlxcRTA2N1wiO1xyXG5AY2xhc3NpYy1sb2NrOiBcIlxcRTA2OFwiO1xyXG5AY2xhc3NpYy1sb2dpbjogXCJcXEUwNjlcIjtcclxuQGNsYXNzaWMtbG9nb3V0OiBcIlxcRTA2QVwiO1xyXG5AY2xhc3NpYy1sb2dzOiBcIlxcRTA2QlwiO1xyXG5AY2xhc3NpYy1tYWlsY2hpbXA6IFwiXFxFMDZDXCI7XHJcbkBjbGFzc2ljLW1lZXRpbmc6IFwiXFxFMDZEXCI7XHJcbkBjbGFzc2ljLW1lbnVzOiBcIlxcRTA2RVwiO1xyXG5AY2xhc3NpYy1tZXJnZTogXCJcXEUwNkZcIjtcclxuQGNsYXNzaWMtbW9uZXk6IFwiXFxFMDcwXCI7XHJcbkBjbGFzc2ljLW1vbml0b3JpbmctY29udHJvbGxpbmc6IFwiXFxFMDcxXCI7XHJcbkBjbGFzc2ljLW1vdmU6IFwiXFxFMDcyXCI7XHJcbkBjbGFzc2ljLW15LWFjY291bnQ6IFwiXFxFMDczXCI7XHJcbkBjbGFzc2ljLW15LXBhZ2U6IFwiXFxFMDc0XCI7XHJcbkBjbGFzc2ljLW5ldy1vYmplY3Q6IFwiXFxFMDc1XCI7XHJcbkBjbGFzc2ljLW5ld3M6IFwiXFxFMDc2XCI7XHJcbkBjbGFzc2ljLW5leHQ6IFwiXFxFMDc3XCI7XHJcbkBjbGFzc2ljLW5vLWludm9pY2VzOiBcIlxcRTA3OFwiO1xyXG5AY2xhc3NpYy1ub3JtYWwtaXNzdWVzOiBcIlxcRTA3OVwiO1xyXG5AY2xhc3NpYy1ub3RlOiBcIlxcRTA3QVwiO1xyXG5AY2xhc3NpYy1ub3RpZmljYXRpb25zOiBcIlxcRTA3QlwiO1xyXG5AY2xhc3NpYy1vZHQ6IFwiXFxFMDdDXCI7XHJcbkBjbGFzc2ljLW9wZW4tZm9sZGVyOiBcIlxcRTA3RFwiO1xyXG5AY2xhc3NpYy1vcGVuLXNlYXJjaDogXCJcXEUwN0VcIjtcclxuQGNsYXNzaWMtb3Blbi1zaWRlYmFyLWhvcjogXCJcXEUwN0ZcIjtcclxuQGNsYXNzaWMtb3Blbi1zaWRlYmFyOiBcIlxcRTA4MFwiO1xyXG5AY2xhc3NpYy1vcmRlcnM6IFwiXFxFMDgxXCI7XHJcbkBjbGFzc2ljLW92ZXJ2aWV3OiBcIlxcRTA4MlwiO1xyXG5AY2xhc3NpYy1wYWdlczogXCJcXEUwODNcIjtcclxuQGNsYXNzaWMtcGFzc3dkOiBcIlxcRTA4NFwiO1xyXG5AY2xhc3NpYy1wYXVzZTogXCJcXEUwODVcIjtcclxuQGNsYXNzaWMtcGRmOiBcIlxcRTA4NlwiO1xyXG5AY2xhc3NpYy1wZW9wbGU6IFwiXFxFMDg3XCI7XHJcbkBjbGFzc2ljLXBlcmlvZGljLXRhc2tzOiBcIlxcRTA4OFwiO1xyXG5AY2xhc3NpYy1waG9uZTogXCJcXEUwODlcIjtcclxuQGNsYXNzaWMtcGhvdG86IFwiXFxFMDhBXCI7XHJcbkBjbGFzc2ljLXBocDogXCJcXEUwOEJcIjtcclxuQGNsYXNzaWMtcGxhbm5pbmc6IFwiXFxFMDhDXCI7XHJcbkBjbGFzc2ljLXBsYXk6IFwiXFxFMDhEXCI7XHJcbkBjbGFzc2ljLXBsdWdpbnM6IFwiXFxFMDhFXCI7XHJcbkBjbGFzc2ljLXBuZy0yOiBcIlxcRTA4RlwiO1xyXG5AY2xhc3NpYy1wbmc6IFwiXFxFMDkwXCI7XHJcbkBjbGFzc2ljLXByZXY6IFwiXFxFMDkxXCI7XHJcbkBjbGFzc2ljLXByZXZpZXctc2FsYXJ5OiBcIlxcRTA5MlwiO1xyXG5AY2xhc3NpYy1wcmludDogXCJcXEUwOTNcIjtcclxuQGNsYXNzaWMtcHJvZHVjdHM6IFwiXFxFMDk0XCI7XHJcbkBjbGFzc2ljLXByb2plY3RzOiBcIlxcRTA5NVwiO1xyXG5AY2xhc3NpYy1xdWVzdGlvbnM6IFwiXFxFMDk2XCI7XHJcbkBjbGFzc2ljLXF1aWNrLXNlYXJjaDogXCJcXEUwOTdcIjtcclxuQGNsYXNzaWMtcmVnaXN0ZXI6IFwiXFxFMDk4XCI7XHJcbkBjbGFzc2ljLXJlbG9hZC0yOiBcIlxcRTA5OVwiO1xyXG5AY2xhc3NpYy1yZWxvYWQ6IFwiXFxFMDlBXCI7XHJcbkBjbGFzc2ljLXJlbWluZGVyOiBcIlxcRTA5QlwiO1xyXG5AY2xhc3NpYy1yZXBvcnQ6IFwiXFxFMDlDXCI7XHJcbkBjbGFzc2ljLXJlcG9ydHM6IFwiXFxFMDlEXCI7XHJcbkBjbGFzc2ljLXJlcG9zaXRvcnk6IFwiXFxFMDlFXCI7XHJcbkBjbGFzc2ljLXJlc291cmNlczogXCJcXEUwOUZcIjtcclxuQGNsYXNzaWMtcmlza3M6IFwiXFxFMEEwXCI7XHJcbkBjbGFzc2ljLXJvYWRtYXA6IFwiXFxFMEExXCI7XHJcbkBjbGFzc2ljLXJvbGVzOiBcIlxcRTBBMlwiO1xyXG5AY2xhc3NpYy1yb3NldHRlOiBcIlxcRTBBM1wiO1xyXG5AY2xhc3NpYy1ydWJ5OiBcIlxcRTBBNFwiO1xyXG5AY2xhc3NpYy1zYXZlLW5ldzogXCJcXEUwQTVcIjtcclxuQGNsYXNzaWMtc2F2ZTogXCJcXEUwQTZcIjtcclxuQGNsYXNzaWMtc2Nyb2xsOiBcIlxcRTBBN1wiO1xyXG5AY2xhc3NpYy1zY3J1bTogXCJcXEUwQThcIjtcclxuQGNsYXNzaWMtc2VhcmNoLWRvd24tYXJyb3c6IFwiXFxFMEE5XCI7XHJcbkBjbGFzc2ljLXNlYXJjaDogXCJcXEUwQUFcIjtcclxuQGNsYXNzaWMtc2V0dGluZ3M6IFwiXFxFMEFCXCI7XHJcbkBjbGFzc2ljLXNtYWxsLWlzc3VlczogXCJcXEUwQUNcIjtcclxuQGNsYXNzaWMtc25pcHBldHM6IFwiXFxFMEFEXCI7XHJcbkBjbGFzc2ljLXNvcnQtaGFuZGxlOiBcIlxcRTBBRVwiO1xyXG5AY2xhc3NpYy1zcHJpbnQtYm9hcmQ6IFwiXFxFMEFGXCI7XHJcbkBjbGFzc2ljLXNwcmludC1idXJuZG93bjogXCJcXEUwQjBcIjtcclxuQGNsYXNzaWMtc3RhdGlzdGljczogXCJcXEUwQjFcIjtcclxuQGNsYXNzaWMtc3RhdHM6IFwiXFxFMEIyXCI7XHJcbkBjbGFzc2ljLXN0b3A6IFwiXFxFMEIzXCI7XHJcbkBjbGFzc2ljLXN1bW1hcnk6IFwiXFxFMEI0XCI7XHJcbkBjbGFzc2ljLXN1cnZleTogXCJcXEUwQjVcIjtcclxuQGNsYXNzaWMtdGFnczogXCJcXEUwQjZcIjtcclxuQGNsYXNzaWMtdGVtcGxhdGVzOiBcIlxcRTBCN1wiO1xyXG5AY2xhc3NpYy10ZXh0OiBcIlxcRTBCOFwiO1xyXG5AY2xhc3NpYy10aWNrZXRzOiBcIlxcRTBCOVwiO1xyXG5AY2xhc3NpYy10aW1lLWVudHJpZXM6IFwiXFxFMEJBXCI7XHJcbkBjbGFzc2ljLXRpbWVyOiBcIlxcRTBCQlwiO1xyXG5AY2xhc3NpYy10eHQ6IFwiXFxFMEJDXCI7XHJcbkBjbGFzc2ljLXVuLWxpa2U6IFwiXFxFMEJEXCI7XHJcbkBjbGFzc2ljLXVubG9jazogXCJcXEUwQkVcIjtcclxuQGNsYXNzaWMtdXAtMTogXCJcXEUwQkZcIjtcclxuQGNsYXNzaWMtdXAtMjogXCJcXEUwQzBcIjtcclxuQGNsYXNzaWMtdXBsb2FkOiBcIlxcRTBDMVwiO1xyXG5AY2xhc3NpYy11c2VyOiBcIlxcRTBDMlwiO1xyXG5AY2xhc3NpYy12YXJpYWJsZXM6IFwiXFxFMEMzXCI7XHJcbkBjbGFzc2ljLXZjZjogXCJcXEUwQzRcIjtcclxuQGNsYXNzaWMtdm90ZXM6IFwiXFxFMEM1XCI7XHJcbkBjbGFzc2ljLXdhcm5pbmc6IFwiXFxFMEM2XCI7XHJcbkBjbGFzc2ljLXdiczogXCJcXEUwQzdcIjtcclxuQGNsYXNzaWMtd2lraTogXCJcXEUwQzhcIjtcclxuQGNsYXNzaWMtd29ya2Zsb3c6IFwiXFxFMEM5XCI7XHJcbkBjbGFzc2ljLXdyZWNrOiBcIlxcRTBDQVwiO1xyXG5AY2xhc3NpYy14bHM6IFwiXFxFMENCXCI7XHJcbkBjbGFzc2ljLXhtbDogXCJcXEUwQ0NcIjtcclxuQGNsYXNzaWMteW91dHViZTogXCJcXEUwQ0RcIjtcclxuQGNsYXNzaWMtemlwOiBcIlxcRTBDRVwiO1xyXG5AY2xhc3NpYy16b29tLWluOiBcIlxcRTBDRlwiO1xyXG5AY2xhc3NpYy16b29tLW91dDogXCJcXEUwRDBcIjtcclxuQGljb24tdGhpbi1hY2NvdW50LXByb2plY3RzOiBcIlxcRTBEMVwiO1xyXG5AaWNvbi10aGluLWFjdGlvbi1sYXlvdXRzOiBcIlxcRTBEMlwiO1xyXG5AaWNvbi10aGluLWFjdGl2aXR5LWxpc3Q6IFwiXFxFMEQzXCI7XHJcbkBpY29uLXRoaW4tYWN0aXZpdHk6IFwiXFxFMEQ0XCI7XHJcbkBpY29uLXRoaW4tYWRkLXBheW1lbnQ6IFwiXFxFMEQ1XCI7XHJcbkBpY29uLXRoaW4tYWRkaXRpb25hbHM6IFwiXFxFMEQ2XCI7XHJcbkBpY29uLXRoaW4tYWRtaW5pc3RyYXRpb246IFwiXFxFMEQ3XCI7XHJcbkBpY29uLXRoaW4tYWdpbGU6IFwiXFxFMEQ4XCI7XHJcbkBpY29uLXRoaW4tYXJjaGl2ZTogXCJcXEUwRDlcIjtcclxuQGljb24tdGhpbi1hcnJvdy1ib3R0b206IFwiXFxFMERBXCI7XHJcbkBpY29uLXRoaW4tYXJyb3ctZG91YmxlLWRvd246IFwiXFxFMERCXCI7XHJcbkBpY29uLXRoaW4tYXJyb3ctZG91YmxlLXVwOiBcIlxcRTBEQ1wiO1xyXG5AaWNvbi10aGluLWFycm93LWRvd246IFwiXFxFMEREXCI7XHJcbkBpY29uLXRoaW4tYXJyb3ctbGVmdDogXCJcXEUwREVcIjtcclxuQGljb24tdGhpbi1hcnJvdy1yaWdodDogXCJcXEUwREZcIjtcclxuQGljb24tdGhpbi1hcnJvdy10b3A6IFwiXFxFMEUwXCI7XHJcbkBpY29uLXRoaW4tYXJyb3ctd2lkZS1yaWdodDogXCJcXEUwRTFcIjtcclxuQGljb24tdGhpbi1hdG9tOiBcIlxcRTBFMlwiO1xyXG5AaWNvbi10aGluLWF0dGFjaG1lbnQ6IFwiXFxFMEUzXCI7XHJcbkBpY29uLXRoaW4tYXZhdGFyOiBcIlxcRTBFNFwiO1xyXG5AaWNvbi10aGluLWJhY2s6IFwiXFxFMEU1XCI7XHJcbkBpY29uLXRoaW4tYmFja2xvZy0xOiBcIlxcRTBFNlwiO1xyXG5AaWNvbi10aGluLWJhY2tsb2c6IFwiXFxFMEU3XCI7XHJcbkBpY29uLXRoaW4tYmFza2V0OiBcIlxcRTBFOFwiO1xyXG5AaWNvbi10aGluLWJhdHRlcnk6IFwiXFxFMEU5XCI7XHJcbkBpY29uLXRoaW4tYm9hcmRzOiBcIlxcRTBFQVwiO1xyXG5AaWNvbi10aGluLWJvb2ttYXJrLTE6IFwiXFxFMEVCXCI7XHJcbkBpY29uLXRoaW4tYm9va21hcms6IFwiXFxFMEVDXCI7XHJcbkBpY29uLXRoaW4tY2FsZW5kYXI6IFwiXFxFMEVEXCI7XHJcbkBpY29uLXRoaW4tY2FydDogXCJcXEUwRUVcIjtcclxuQGljb24tdGhpbi1jaGFuZ2UtdXNlcjogXCJcXEUwRUZcIjtcclxuQGljb24tdGhpbi1jaGVja2VkLTE6IFwiXFxFMEYwXCI7XHJcbkBpY29uLXRoaW4tY2hlY2tlZDogXCJcXEUwRjFcIjtcclxuQGljb24tdGhpbi1jbGlwOiBcIlxcRTBGMlwiO1xyXG5AaWNvbi10aGluLWNsb3NlLW5ldy1zbWFsbDogXCJcXEUwRjNcIjtcclxuQGljb24tdGhpbi1jbG9zZS1uZXc6IFwiXFxFMEY0XCI7XHJcbkBpY29uLXRoaW4tY2xvc2Utc2VhcmNoOiBcIlxcRTBGNVwiO1xyXG5AaWNvbi10aGluLWNvbW1lbnQ6IFwiXFxFMEY2XCI7XHJcbkBpY29uLXRoaW4tY29tbWVudHM6IFwiXFxFMEY3XCI7XHJcbkBpY29uLXRoaW4tY29tcGFueTogXCJcXEUwRjhcIjtcclxuQGljb24tdGhpbi1jb250YWN0czogXCJcXEUwRjlcIjtcclxuQGljb24tdGhpbi1jb3B5OiBcIlxcRTBGQVwiO1xyXG5AaWNvbi10aGluLWNwbHVzOiBcIlxcRTBGQlwiO1xyXG5AaWNvbi10aGluLWNyZWRlbnRpYWxzOiBcIlxcRTBGQ1wiO1xyXG5AaWNvbi10aGluLWNybTogXCJcXEUwRkRcIjtcclxuQGljb24tdGhpbi1jc2hhcnA6IFwiXFxFMEZFXCI7XHJcbkBpY29uLXRoaW4tY3NzOiBcIlxcRTBGRlwiO1xyXG5AaWNvbi10aGluLWNzdjogXCJcXEUxMDBcIjtcclxuQGljb24tdGhpbi1jdXN0b20tZmllbGRzOiBcIlxcRTEwMVwiO1xyXG5AaWNvbi10aGluLWRhdjogXCJcXEUxMDJcIjtcclxuQGljb24tdGhpbi1kZWFsczogXCJcXEUxMDNcIjtcclxuQGljb24tdGhpbi1kZWw6IFwiXFxFMTA0XCI7XHJcbkBpY29uLXRoaW4tZGVzY3JpcHRpb246IFwiXFxFMTA1XCI7XHJcbkBpY29uLXRoaW4tZGlhbW9uZDogXCJcXEUxMDZcIjtcclxuQGljb24tdGhpbi1kaWZmOiBcIlxcRTEwN1wiO1xyXG5AaWNvbi10aGluLWRtc2Y6IFwiXFxFMTA4XCI7XHJcbkBpY29uLXRoaW4tZG9jOiBcIlxcRTEwOVwiO1xyXG5AaWNvbi10aGluLWRvY3VtZW50OiBcIlxcRTEwQVwiO1xyXG5AaWNvbi10aGluLWRvY3VtZW50czogXCJcXEUxMEJcIjtcclxuQGljb24tdGhpbi1kb2N4OiBcIlxcRTEwQ1wiO1xyXG5AaWNvbi10aGluLWRvbGxhcjogXCJcXEUxMERcIjtcclxuQGljb24tdGhpbi1kb3duLTE6IFwiXFxFMTBFXCI7XHJcbkBpY29uLXRoaW4tZG93bi0yOiBcIlxcRTEwRlwiO1xyXG5AaWNvbi10aGluLWRvd25sb2FkOiBcIlxcRTExMFwiO1xyXG5AaWNvbi10aGluLWRyaXZlOiBcIlxcRTExMVwiO1xyXG5AaWNvbi10aGluLWVkaXQtMjogXCJcXEUxMTJcIjtcclxuQGljb24tdGhpbi1lZGl0OiBcIlxcRTExM1wiO1xyXG5AaWNvbi10aGluLWVtYWlsOiBcIlxcRTExNFwiO1xyXG5AaWNvbi10aGluLWVudW1lcmF0aW9uczogXCJcXEUxMTVcIjtcclxuQGljb24tdGhpbi1FUlA6IFwiXFxFMTE2XCI7XHJcbkBpY29uLXRoaW4tRVZNOiBcIlxcRTExN1wiO1xyXG5AaWNvbi10aGluLWV4cGVuc2VzOiBcIlxcRTExOFwiO1xyXG5AaWNvbi10aGluLWV4dGVybmFsOiBcIlxcRTExOVwiO1xyXG5AaWNvbi10aGluLWV4dHJhLW1lbnU6IFwiXFxFMTFBXCI7XHJcbkBpY29uLXRoaW4tZmFpbHM6IFwiXFxFMTFCXCI7XHJcbkBpY29uLXRoaW4tZmF2LW9mZjogXCJcXEUxMUNcIjtcclxuQGljb24tdGhpbi1mYXY6IFwiXFxFMTFEXCI7XHJcbkBpY29uLXRoaW4tZmF2b3JpdDogXCJcXEUxMUVcIjtcclxuQGljb24tdGhpbi1maWxlczogXCJcXEUxMUZcIjtcclxuQGljb24tdGhpbi1maWx0ZXI6IFwiXFxFMTIwXCI7XHJcbkBpY29uLXRoaW4tZmluYW5jZTogXCJcXEUxMjFcIjtcclxuQGljb24tdGhpbi1mb2xkZXI6IFwiXFxFMTIyXCI7XHJcbkBpY29uLXRoaW4tZnVsbHNjcmVlbjogXCJcXEUxMjNcIjtcclxuQGljb24tdGhpbi1nYW50dDogXCJcXEUxMjRcIjtcclxuQGljb24tdGhpbi1naWY6IFwiXFxFMTI1XCI7XHJcbkBpY29uLXRoaW4tZ2l0LW5ldzogXCJcXEUxMjZcIjtcclxuQGljb24tdGhpbi1naXQ6IFwiXFxFMTI3XCI7XHJcbkBpY29uLXRoaW4tZ2xvc3Nhcnk6IFwiXFxFMTI4XCI7XHJcbkBpY29uLXRoaW4tZ3JvdXA6IFwiXFxFMTI5XCI7XHJcbkBpY29uLXRoaW4taGVhcnQ6IFwiXFxFMTJBXCI7XHJcbkBpY29uLXRoaW4taGVscDogXCJcXEUxMkJcIjtcclxuQGljb24tdGhpbi1oaXN0b3J5OiBcIlxcRTEyQ1wiO1xyXG5AaWNvbi10aGluLWhvbWU6IFwiXFxFMTJEXCI7XHJcbkBpY29uLXRoaW4taG91cmdsYXNzOiBcIlxcRTEyRVwiO1xyXG5AaWNvbi10aGluLWh0bWw6IFwiXFxFMTJGXCI7XHJcbkBpY29uLXRoaW4taW1wb3J0OiBcIlxcRTEzMFwiO1xyXG5AaWNvbi10aGluLWludmVudG9yeTogXCJcXEUxMzFcIjtcclxuQGljb24tdGhpbi1pbnZvaWNlczogXCJcXEUxMzJcIjtcclxuQGljb24tdGhpbi1pc3N1ZXM6IFwiXFxFMTMzXCI7XHJcbkBpY29uLXRoaW4tamF2YTogXCJcXEUxMzRcIjtcclxuQGljb24tdGhpbi1qcGc6IFwiXFxFMTM1XCI7XHJcbkBpY29uLXRoaW4tanM6IFwiXFxFMTM2XCI7XHJcbkBpY29uLXRoaW4ta2FuYmFuOiBcIlxcRTEzN1wiO1xyXG5AaWNvbi10aGluLWtleTogXCJcXEUxMzhcIjtcclxuQGljb24tdGhpbi1rZXkyOiBcIlxcRTEzOVwiO1xyXG5AaWNvbi10aGluLWtleXMtY2xvbmU6IFwiXFxFMTNBXCI7XHJcbkBpY29uLXRoaW4ta25vd2xlZGdlYmFzZTogXCJcXEUxM0JcIjtcclxuQGljb24tdGhpbi1sZGFwLWF1dGhlbnRpY2F0aW9uOiBcIlxcRTEzQ1wiO1xyXG5AaWNvbi10aGluLWxkYXAtd29ya2Zsb3c6IFwiXFxFMTNEXCI7XHJcbkBpY29uLXRoaW4tbGlrZTogXCJcXEUxM0VcIjtcclxuQGljb24tdGhpbi1saW5rLWJyZWFrOiBcIlxcRTEzRlwiO1xyXG5AaWNvbi10aGluLWxvY2s6IFwiXFxFMTQwXCI7XHJcbkBpY29uLXRoaW4tbG9naW46IFwiXFxFMTQxXCI7XHJcbkBpY29uLXRoaW4tbG9nb3V0OiBcIlxcRTE0MlwiO1xyXG5AaWNvbi10aGluLWxvZ3M6IFwiXFxFMTQzXCI7XHJcbkBpY29uLXRoaW4tbWVldGluZzogXCJcXEUxNDRcIjtcclxuQGljb24tdGhpbi1tZW51czogXCJcXEUxNDVcIjtcclxuQGljb24tdGhpbi1tZXJnZTogXCJcXEUxNDZcIjtcclxuQGljb24tdGhpbi1tb25leTogXCJcXEUxNDdcIjtcclxuQGljb24tdGhpbi1tb25pdG9yaW5nLWNvbnRyb2xsaW5nOiBcIlxcRTE0OFwiO1xyXG5AaWNvbi10aGluLW1vdmU6IFwiXFxFMTQ5XCI7XHJcbkBpY29uLXRoaW4tbXktYWNjb3VudDogXCJcXEUxNEFcIjtcclxuQGljb24tdGhpbi1teS1wYWdlOiBcIlxcRTE0QlwiO1xyXG5AaWNvbi10aGluLW5ldy1vYmplY3QtMjogXCJcXEUxNENcIjtcclxuQGljb24tdGhpbi1uZXctb2JqZWN0OiBcIlxcRTE0RFwiO1xyXG5AaWNvbi10aGluLW5ld3M6IFwiXFxFMTRFXCI7XHJcbkBpY29uLXRoaW4tbmV4dDogXCJcXEUxNEZcIjtcclxuQGljb24tdGhpbi1uby1pbnZvaWNlczogXCJcXEUxNTBcIjtcclxuQGljb24tdGhpbi1ub3JtYWwtaXNzdWVzOiBcIlxcRTE1MVwiO1xyXG5AaWNvbi10aGluLW5vdGU6IFwiXFxFMTUyXCI7XHJcbkBpY29uLXRoaW4tbm90aWZpY2F0aW9uczogXCJcXEUxNTNcIjtcclxuQGljb24tdGhpbi1vZHQ6IFwiXFxFMTU0XCI7XHJcbkBpY29uLXRoaW4tb3Blbi1mb2xkZXI6IFwiXFxFMTU1XCI7XHJcbkBpY29uLXRoaW4tb3Blbi1zZWFyY2g6IFwiXFxFMTU2XCI7XHJcbkBpY29uLXRoaW4tb3Blbi1zaWRlYmFyLWhvcjogXCJcXEUxNTdcIjtcclxuQGljb24tdGhpbi1vcGVuLXNpZGViYXI6IFwiXFxFMTU4XCI7XHJcbkBpY29uLXRoaW4tb3JkZXJzOiBcIlxcRTE1OVwiO1xyXG5AaWNvbi10aGluLW92ZXJ2aWV3OiBcIlxcRTE1QVwiO1xyXG5AaWNvbi10aGluLXBhZ2VzOiBcIlxcRTE1QlwiO1xyXG5AaWNvbi10aGluLXBhc3N3ZDogXCJcXEUxNUNcIjtcclxuQGljb24tdGhpbi1wYXVzZTogXCJcXEUxNURcIjtcclxuQGljb24tdGhpbi1wZGY6IFwiXFxFMTVFXCI7XHJcbkBpY29uLXRoaW4tcGVvcGxlOiBcIlxcRTE1RlwiO1xyXG5AaWNvbi10aGluLXBlcmlvZGljLXRhc2tzOiBcIlxcRTE2MFwiO1xyXG5AaWNvbi10aGluLXBob25lOiBcIlxcRTE2MVwiO1xyXG5AaWNvbi10aGluLXBob3RvOiBcIlxcRTE2MlwiO1xyXG5AaWNvbi10aGluLXBocDogXCJcXEUxNjNcIjtcclxuQGljb24tdGhpbi1wbGFubmluZzogXCJcXEUxNjRcIjtcclxuQGljb24tdGhpbi1wbGF5OiBcIlxcRTE2NVwiO1xyXG5AaWNvbi10aGluLXBsdWdpbnM6IFwiXFxFMTY2XCI7XHJcbkBpY29uLXRoaW4tcG5nOiBcIlxcRTE2N1wiO1xyXG5AaWNvbi10aGluLXByZXY6IFwiXFxFMTY4XCI7XHJcbkBpY29uLXRoaW4tcHJldmlldy1zYWxhcnk6IFwiXFxFMTY5XCI7XHJcbkBpY29uLXRoaW4tcHJpbnQ6IFwiXFxFMTZBXCI7XHJcbkBpY29uLXRoaW4tcHJvZHVjdHM6IFwiXFxFMTZCXCI7XHJcbkBpY29uLXRoaW4tcHJvamVjdHM6IFwiXFxFMTZDXCI7XHJcbkBpY29uLXRoaW4tcXVlc3Rpb25zOiBcIlxcRTE2RFwiO1xyXG5AaWNvbi10aGluLXF1aWNrLXNlYXJjaDogXCJcXEUxNkVcIjtcclxuQGljb24tdGhpbi1yZWdpc3RlcjogXCJcXEUxNkZcIjtcclxuQGljb24tdGhpbi1yZWxvYWQtMjogXCJcXEUxNzBcIjtcclxuQGljb24tdGhpbi1yZWxvYWQ6IFwiXFxFMTcxXCI7XHJcbkBpY29uLXRoaW4tcmVtaW5kZXI6IFwiXFxFMTcyXCI7XHJcbkBpY29uLXRoaW4tcmVwb3J0OiBcIlxcRTE3M1wiO1xyXG5AaWNvbi10aGluLXJlcG9ydHM6IFwiXFxFMTc0XCI7XHJcbkBpY29uLXRoaW4tcmVwb3NpdG9yeTogXCJcXEUxNzVcIjtcclxuQGljb24tdGhpbi1yZXNvdXJjZXM6IFwiXFxFMTc2XCI7XHJcbkBpY29uLXRoaW4tcmlza3M6IFwiXFxFMTc3XCI7XHJcbkBpY29uLXRoaW4tcm9hZG1hcDogXCJcXEUxNzhcIjtcclxuQGljb24tdGhpbi1yb2xlczogXCJcXEUxNzlcIjtcclxuQGljb24tdGhpbi1yb3NldHRlOiBcIlxcRTE3QVwiO1xyXG5AaWNvbi10aGluLXJ1Ynk6IFwiXFxFMTdCXCI7XHJcbkBpY29uLXRoaW4tc2F2ZS1uZXc6IFwiXFxFMTdDXCI7XHJcbkBpY29uLXRoaW4tc2F2ZTogXCJcXEUxN0RcIjtcclxuQGljb24tdGhpbi1zY3JvbGw6IFwiXFxFMTdFXCI7XHJcbkBpY29uLXRoaW4tc2NydW06IFwiXFxFMTdGXCI7XHJcbkBpY29uLXRoaW4tc2VhcmNoLWRvd24tYXJyb3c6IFwiXFxFMTgwXCI7XHJcbkBpY29uLXRoaW4tc2VhcmNoOiBcIlxcRTE4MVwiO1xyXG5AaWNvbi10aGluLXNldHRpbmdzOiBcIlxcRTE4MlwiO1xyXG5AaWNvbi10aGluLXNtYWxsLWlzc3VlczogXCJcXEUxODNcIjtcclxuQGljb24tdGhpbi1zbmlwcGV0czogXCJcXEUxODRcIjtcclxuQGljb24tdGhpbi1zb3J0LWhhbmRsZTogXCJcXEUxODVcIjtcclxuQGljb24tdGhpbi1zcHJpbnQtYm9hcmQ6IFwiXFxFMTg2XCI7XHJcbkBpY29uLXRoaW4tc3ByaW50LWJ1cm5kb3duOiBcIlxcRTE4N1wiO1xyXG5AaWNvbi10aGluLXNwcmludC1rYW5iYW46IFwiXFxFMTg4XCI7XHJcbkBpY29uLXRoaW4tc3RhdGlzdGljczogXCJcXEUxODlcIjtcclxuQGljb24tdGhpbi1zdGF0czogXCJcXEUxOEFcIjtcclxuQGljb24tdGhpbi1zdG9wLTE6IFwiXFxFMThCXCI7XHJcbkBpY29uLXRoaW4tc3RvcDogXCJcXEUxOENcIjtcclxuQGljb24tdGhpbi1zdW1tYXJ5OiBcIlxcRTE4RFwiO1xyXG5AaWNvbi10aGluLXN1cnZleTogXCJcXEUxOEVcIjtcclxuQGljb24tdGhpbi10YWdzOiBcIlxcRTE4RlwiO1xyXG5AaWNvbi10aGluLXRlbXBsYXRlczogXCJcXEUxOTBcIjtcclxuQGljb24tdGhpbi10aWNrZXRzOiBcIlxcRTE5MVwiO1xyXG5AaWNvbi10aGluLXRpZmY6IFwiXFxFMTkyXCI7XHJcbkBpY29uLXRoaW4tdGltZS1lbnRyaWVzOiBcIlxcRTE5M1wiO1xyXG5AaWNvbi10aGluLXR4dDogXCJcXEUxOTRcIjtcclxuQGljb24tdGhpbi11bi1saWtlOiBcIlxcRTE5NVwiO1xyXG5AaWNvbi10aGluLXVubG9jazogXCJcXEUxOTZcIjtcclxuQGljb24tdGhpbi11cC0xOiBcIlxcRTE5N1wiO1xyXG5AaWNvbi10aGluLXVwLTI6IFwiXFxFMTk4XCI7XHJcbkBpY29uLXRoaW4tdXBsb2FkOiBcIlxcRTE5OVwiO1xyXG5AaWNvbi10aGluLXVzZXI6IFwiXFxFMTlBXCI7XHJcbkBpY29uLXRoaW4tdmFyaWFibGVzOiBcIlxcRTE5QlwiO1xyXG5AaWNvbi10aGluLXZhdWx0OiBcIlxcRTE5Q1wiO1xyXG5AaWNvbi10aGluLXZjZjogXCJcXEUxOURcIjtcclxuQGljb24tdGhpbi12b3RlczogXCJcXEUxOUVcIjtcclxuQGljb24tdGhpbi13YXJuaW5nOiBcIlxcRTE5RlwiO1xyXG5AaWNvbi10aGluLXdiczogXCJcXEUxQTBcIjtcclxuQGljb24tdGhpbi13aWtpOiBcIlxcRTFBMVwiO1xyXG5AaWNvbi10aGluLXdvcmtmbG93OiBcIlxcRTFBMlwiO1xyXG5AaWNvbi10aGluLXdyZWNrOiBcIlxcRTFBM1wiO1xyXG5AaWNvbi10aGluLXhsczogXCJcXEUxQTRcIjtcclxuQGljb24tdGhpbi14bHN4LTE6IFwiXFxFMUE1XCI7XHJcbkBpY29uLXRoaW4teGxzeDogXCJcXEUxQTZcIjtcclxuQGljb24tdGhpbi14bWw6IFwiXFxFMUE3XCI7XHJcbkBpY29uLXRoaW4teW91dHViZTogXCJcXEUxQThcIjtcclxuQGljb24tdGhpbi16aXA6IFwiXFxFMUE5XCI7XHJcbkBpY29uLXRoaW4tem9vbS1pbjogXCJcXEUxQUFcIjtcclxuQGljb24tdGhpbi16b29tLW91dDogXCJcXEUxQUJcIjtcclxuXHJcblxyXG4vKiBFTkQgSUNPTiBGT05UUyAqL1xyIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuXHJcbi8qIFNUQVJUIENPTlRFTlQgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE5PIEJHIE9OIENPTlRFTlQgICovXHJcbi5jb250cm9sbGVyLWFkbWluLmFjdGlvbi1pbmRleCxcclxuLmNvbnRyb2xsZXItbmV3cy5hY3Rpb24taW5kZXgsXHJcbi5hY3Rpb24taW5kZXguY29udHJvbGxlci1wcm9qZWN0cyxcclxuLmNvbnRyb2xsZXItYWN0aXZpdGllcyB7XHJcbiAgI21haW4gI2NvbnRlbnQge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIE5PIEJHIE9OIENPTlRFTlQgICovXHJcblxyXG4uc2ltcGxlY29sb3JwaWNrZXIge1xyXG4gIG1hcmdpbjogMCAwIDAgMTBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaGFzLWZvb3RlciB7XHJcbiAgI21haW4gPiAjY29udGVudCB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNTZweDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgaGVpZ2h0OiBjYWxjKH4nMTAwJSAtIDEyMHB4Jyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBTVEFSVCBDT05URU5UIE1FTlUgKi9cclxuI2NvbnRlbnQge1xyXG4gICNjb250ZXh0LW1lbnUge1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgIG1pbi13aWR0aDogMXB4O1xyXG4gIH1cclxufVxyXG5cclxuYm9keSAjY29udGV4dC1tZW51IHtcclxuICBmb250LXNpemU6IEBmczEyO1xyXG4gIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIHotaW5kZXg6IDEwMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIGxlZnQ6IC05OTk5OTlweDtcclxuICB0b3A6IC05OTk5OTlweDtcclxuXHJcbiAgdWwge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgbWluLWhlaWdodDogYXV0bztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgY29sb3I6IHZhcigtLWRyb3AtdGV4dC1jb2xvcik7XHJcbiAgICBwYWRkaW5nOiA0cHggNXB4IDRweCAzMHB4O1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgbWFyZ2luOiAtMTBweCAwIDA7XHJcbiAgICAgIGxlZnQ6IDVweDtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUtc21hbGwpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1kcm9wLXRleHQtY29sb3IpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgd2lkdGg6IDA7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcC1iZyk7XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1kcm9wLXRleHQtY29sb3ItaG92ZXIpO1xyXG4gICAgICBib3JkZXI6IDA7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tZHJvcC10ZXh0LWNvbG9yLWhvdmVyKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWRyb3AtYmctaG92ZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5kaXNhYmxlZCB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgYm9yZGVyOiAwO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5kaXNhYmxlZCB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1ub3RpY2UtZXJyb3ItbWFpbi10ZXh0KTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tbm90aWNlLWVycm9yLWJnKTtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1ub3RpY2UtZXJyb3ItbWFpbi10ZXh0KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW5vdGljZS1lcnJvci1iZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1ub3RpY2UtZXJyb3ItbWFpbi10ZXh0KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ub3RpY2UtZXJyb3ItYmcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBsaTpob3ZlciB7XHJcbiAgICAmID4gYSB7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgY29sb3I6IHZhcigtLWRyb3AtdGV4dC1jb2xvci1ob3Zlcik7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wLXRleHQtY29sb3ItaG92ZXIpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcC1iZy1ob3Zlcik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuZGlzYWJsZWQge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1ub3RpY2UtZXJyb3ItbWFpbi10ZXh0KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ub3RpY2UtZXJyb3ItYmcpO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ub3RpY2UtZXJyb3ItbWFpbi10ZXh0KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbm90aWNlLWVycm9yLWJnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLW5vdGljZS1lcnJvci1tYWluLXRleHQpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbm90aWNlLWVycm9yLWJnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHVsID4gbGkge1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICYgPiB1bCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJiA+IHVsIHtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICBvcmRlcjogMztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdWwge1xyXG4gICAgLmljb24tY2hlY2tlZCB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweCBhdXRvO1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAycHggNTAlO1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWFyY2gtZWxlbWVudCB7XHJcbiAgICAgIG9yZGVyOiAyO1xyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3IteWVsbG93LWxpZ2h0KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5yZXZvbHV0aW9uLWF1dG9jb21wbGV0ZSB7XHJcbiAgICAgIG9yZGVyOiAxO1xyXG4gICAgICBwYWRkaW5nOiA0cHggNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCkgIWltcG9ydGFudDtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcikgIWltcG9ydGFudDtcclxuXHJcbiAgICAgIC5yZXZvbHV0aW9uLXNlYXJjaCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBDT05URU5UIE1FTlUgKi9cclxuXHJcbi5jb250cm9sbGVyLXdlbGNvbWUge1xyXG4gICYuYWN0aW9uLWluZGV4IHtcclxuICAgICNtYWluID4gI2NvbnRlbnQge1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC53aWtpIHtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnJlZG1pbmUtZXZvbHV0aW9uLWdvLXRvLXRvcCB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIGJvdHRvbTogLTI2cHg7XHJcbiAgcmlnaHQ6IDMwcHg7XHJcbiAgd2lkdGg6IDMwcHg7XHJcbiAgaGVpZ2h0OiAyNXB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpIHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpIDAgMDtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gIHotaW5kZXg6MTAwMDtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJvdHRvbSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJvdHRvbSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAtbXMtdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYm90dG9tIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gIC1vLXRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJvdHRvbSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBib3R0b20gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBhcnJvdy10b3A7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XHJcbiAgfVxyXG5cclxuICAmLnZpc2libGUge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG5cclxuI21haW4gPiAjY29udGVudCB7XHJcbiAgJiA+ICoge1xyXG4gICAgei1pbmRleDogMztcclxuICAgIG9yZGVyOiAyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIH1cclxuXHJcbiAgJiAuY29udGV4dHVhbDpub3QoLm5leHQtcHJldi1saW5rcykge1xyXG4gICAgLmRyZG4taXRlbXMge1xyXG4gICAgICBtaW4td2lkdGg6IDEwcHg7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgYS5pY29uIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wLXRleHQtY29sb3IpO1xyXG4gICAgICAgIHBhZGRpbmc6IDRweCA1cHggNHB4IDMwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6MDtcclxuICAgICAgICAgIGxlZnQ6NXB4O1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWRyb3AtaWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplLXNtYWxsKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcC1iZy1ob3Zlcik7XHJcbiAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG4gICAgICAgICAgYm9yZGVyOiAwO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRyZG4tY29udGVudCB7XHJcbiAgICAgIHRvcDogMTAwJTtcclxuICAgICAgbWluLXdpZHRoOiAxMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI21haW4gPiAjY29udGVudCB7XHJcbiAgYm9yZGVyOiBub25lO1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgb3JkZXI6IDE7XHJcbiAgZmxleDogMSAwO1xyXG4gIHBhZGRpbmc6IDAgMzBweCAzMHB4O1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWZsb3c6IHdyYXA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgY2xlYXI6Ym90aDtcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgdG9wOjc0cHg7XHJcbiAgICBsZWZ0OiAwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogY2FsYyh+JzEwMCUgLSA3NHB4Jyk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gIH1cclxuXHJcbiAgLyogU1RBUlQgQ09MT1IgKi9cclxuXHJcbiAgaDIge1xyXG4gICAgb3JkZXI6IDE7XHJcbiAgfVxyXG5cclxuICAmID4gKiB7XHJcbiAgICBvcmRlcjogMjtcclxuICAgIHotaW5kZXg6IDI7XHJcblxyXG4gICAgJmZvcm0ge1xyXG4gICAgICB6LWluZGV4OiAxMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGgxLFxyXG4gIGgyLFxyXG4gIGgzLFxyXG4gIGg0IHtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICB9XHJcblxyXG4gIGgzLCAud2lraSBoMixcclxuICAudGFiLWNvbnRlbnQgaDIge1xyXG4gICAgZm9udC1zaXplOiBAZnMxNjtcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgIGEuaWNvbi1vbmx5IHtcclxuICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3Bhbi5wYWdpbmF0aW9uLFxyXG4gIHAub3RoZXItZm9ybWF0cyB7XHJcbiAgICBjb2xvcjogIzgxOEU5NDtcclxuICB9XHJcblxyXG4gIHAge1xyXG4gICAgJjplbXB0eSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiBFTkQgQ09MT1IgKi9cclxuXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcblxyXG4gIC5zcGxpdGNvbnRlbnRyaWdodCxcclxuICAjbGlzdC1yaWdodCxcclxuICAuc3BsaXRjb250ZW50bGVmdCxcclxuICAjbGlzdC1sZWZ0e1xyXG4gICAgd2lkdGg6IDUwJTtcclxuICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgcGFkZGluZzowIDE1cHggMCAwO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgfVxyXG5cclxuICAuc3BsaXRjb250ZW50cmlnaHQsXHJcbiAgI2xpc3QtcmlnaHQge1xyXG4gICAgcGFkZGluZzogMCAwIDAgMTVweDtcclxuICB9XHJcblxyXG4gICYgPiBoMixcclxuICAjY29udGVudCA+IGgyLFxyXG4gICNxdWVyeV9mb3JtID4gaDIsXHJcbiAgLnRvcC1xdWVzdGlvbiBoMiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmb250LXNpemU6IEAxMDI0X2gyO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDQ1cHg7XHJcbiAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyA2MHB4Jyk7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgbWFyZ2luOiAwIC0zMHB4IDIwcHg7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogIDMwcHggMzBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgNTAlO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgIC5ncmF2YXRhciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMzBweDtcclxuICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5saXZlX3NlYXJjaCB7XHJcbiAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgbWF4LXdpZHRoOiAxODhweDtcclxuICAgICAgd2lkdGg6IDE4OHB4O1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICByaWdodDogMjY1cHg7XHJcbiAgICAgIG1hcmdpbjogLTE1cHggMCAwO1xyXG5cclxuICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgICAgbWFyZ2luOjAgMTBweCAwIDA7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxODhweDtcclxuICAgICAgICBvdXRsaW5lOiAwIG5vbmU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGZsZXg6IDEgMCAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc29ydC1oYW5kbGUge1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICB9XHJcblxyXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbiAgaDMuaWNvbiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAyMnB4IDIycHg7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCA1MCU7XHJcbiAgICBwYWRkaW5nOiAwIDAgMCAyNXB4O1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDNweDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6IDIycHg7XHJcbiAgICAgIGhlaWdodDogMjJweDtcclxuICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzcGFuLnBhZ2luYXRpb24ge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiA0OSU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZm9udC1zaXplOiAwLjg1N3JlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAyLjE0M3JlbTtcclxuICB9XHJcblxyXG4gICNwcm9qZWN0cy1pbmRleCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG5cclxuICBkaXYucHJvamVjdHMge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuXHJcbiAgICBhIHtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMTQzcmVtO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgbWluLWhlaWdodDogMDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5leHQtcHJldi1saW5rcyxcclxuICAmID4gLmNvbnRleHR1YWwge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICBjb2xvcjogdmFyKC0tYmctZmZmKTtcclxuXHJcbiAgICAuaWNvbixcclxuICAgIC5vcGVuLWZpbHRlciB7XHJcbiAgICAgIG1hcmdpbjogMCAzcHg7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJiA+IC5jb250ZXh0dWFsOm5vdCgubmV4dC1wcmV2LWxpbmtzKSxcclxuICAjY29udGVudCA+IC5jb250ZXh0dWFsOm5vdCgubmV4dC1wcmV2LWxpbmtzKSB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDE1cHg7XHJcbiAgICByaWdodDogMDtcclxuICAgIHotaW5kZXg6IDQ7XHJcbiAgICBjb2xvcjogdmFyKC0tYmctYm94KTtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG5cclxuICAgIGxhYmVsW2Zvcj1cImNsb3NlZFwiXSB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIH1cclxuXHJcblxyXG4gICAgYS5hc3NpZ24tdG8tbWUsXHJcbiAgICBhLmljb24tZmFuY3lib3gsXHJcbiAgICBhW2hyZWY9XCIvaXNzdWVzXCJdLFxyXG4gICAgYVtocmVmPVwiL3RpbWVfZW50cmllc1wiXSxcclxuICAgIGFbaHJlZj1cIi9hY3Rpdml0eVwiXSxcclxuICAgIC5pY29uLFxyXG4gICAgLm9wZW4tZmlsdGVyLFxyXG4gICAgLmRyZG4gLmljb24tb25seSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLm5ldy1pY29uLXNhdmUge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLXNhdmUtY29sb3IpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1zYXZlLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbi1zYXZlLWJnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tc2F2ZS1jb2xvci1ob3Zlcik7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLXNhdmUtY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uLXNhdmUtYmctaG92ZXIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5uZXctaWNvbi1jbG9zZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY2xvc2UtY29sb3IpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbi1jbG9zZS1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY2xvc2UtY29sb3IpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jbG9zZS1jb2xvci1ob3Zlcik7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNsb3NlLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbi1jbG9zZS1iZy1ob3Zlcik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29udGV4dC1tZW51LXNlbGVjdGlvbixcclxuICAuY29udGV4dC1tZW51LXNlbGVjdGlvbjpob3ZlcntcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXNlbGVjdC1iZy1yZWRtaW5ldXApICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBPVkVSTEFZICAqL1xyXG5cclxuI2FqYXgtaW5kaWNhdG9yIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIG9wYWNpdHk6IDE7XHJcblxyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgY2xlYXI6Ym90aDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXBvcHVwLW92ZXJsYXkpO1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgfVxyXG5cclxuICBzcGFuIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgaGVpZ2h0OiAxNjBweDtcclxuICAgIHBhZGRpbmc6IDExMHB4IDAgMCAwO1xyXG4gICAgbWFyZ2luOiAtODBweCAwIDAgLTUwcHg7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICB0ZXh0LWluZGVudDogLTk5OTk5OTk5cHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6MDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3JlZG1pbmUtZXZvbHV0aW9uLnN2Z1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiA5MHB4O1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3NwaW5lci5zdmdcIikgNTAlIDUwJSBuby1yZXBlYXQ7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBib3R0b206MTBweDtcclxuICAgICAgbGVmdDowO1xyXG4gICAgICBtYXJnaW46MDtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIE9WRVJMQVkgICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBUQUJTICAqL1xyXG4jbWFpbiAjY29udGVudCAsXHJcbiNtYWluID4gI2hpc3Rvcnkge1xyXG5cclxuICAuYm94IHtcclxuICAgIGRpdltjbGFzcz1cInRhYnNcIl17XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHVsIHtcclxuICAgICAgIGxpIHtcclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGRpdltjbGFzcz1cInRhYnNcIl0sXHJcbiAgZGl2W2NsYXNzPVwidGFicyBoaWRlLXdoZW4tcHJpbnRcIl17XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgbWFyZ2luOjAgMCAyMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDoyO1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgaGVpZ2h0OiA1MHB4O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOjFweDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuICAgIH1cclxuXHJcbiAgICAmID4gdWwge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICBmb250LXNpemU6IDA7XHJcblxyXG4gICAgICAmID4gbGkge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMTVweCAwIDA7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogQGdmZjtcclxuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMCAxNXB4O1xyXG4gICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLXRhYi1jb2xvci10ZXh0KTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGFiLWNvbG9yLXRleHQtc2VsZWNlZCk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICB2YXIoLS10YWItY29sb3ItdGV4dC1zZWxlY2VkKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgXHRjb250ZW50OicnO1xyXG4gICAgICAgICAgXHRkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgXHRjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOjBweDtcclxuICAgICAgICAgICAgbGVmdDo1MCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDNweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGFiLWNvbG9yLXRleHQtc2VsZWNlZCk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGxlZnQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGxlZnQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgbGVmdCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGxlZnQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBsZWZ0IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnRhYi1jb250ZW50IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG5cclxuICAgICZbc3R5bGUqPVwibm9uZVwiXXtcclxuICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICB0b3A6IC05OTk5OTk5cHg7XHJcbiAgICAgIGxlZnQ6IC05OTk5OTk5cHg7XHJcblxyXG4gICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNub3RpZmllZF9ldmVudHMge1xyXG4gICAgICBwIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMTVweCAwIDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gICAgICBhLmljb24ge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5ub2RhdGEge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0YWJsZSB7XHJcbiAgICAgIHAge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50YWItY29udGVudCxcclxuICAuc3BsaXRjb250ZW50cmlnaHQsXHJcbiAgLnNwbGl0Y29udGVudGxlZnQge1xyXG4gICAgI2FjdGl2aXR5IHtcclxuICAgICAgZGwge1xyXG4gICAgICAgIGR0IHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAyNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucHJvamVjdCB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBkZCB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICAgICAgbWFyZ2luOiAtMzBweCAwIDE1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGltZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgICAmOmVtcHR5IHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hdXRob3Ige1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGFicy1idXR0b25zIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgVEFCUyAgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIElOVEVSTkFMIFBBR0VTIChCT1gpICAqL1xyXG5cclxuLnN0YXJ0LW5vdGljZSB7XHJcbiAgI2NvbnRlbnQge1xyXG4gICAgZm9ybSB7XHJcbiAgICAgIHotaW5kZXg6IDEwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jY29udGVudCB7XHJcbiAgZm9ybSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgaDIgKyBmb3JtIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zcGxpdGNvbnRlbnRsZWZ0IC53aWtpLFxyXG4gIC50YWItY29udGVudCBmaWVsZHNldCxcclxuICAjc2V0dGluZ3MgLmJveCxcclxuICAuYm94IHtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Oy1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgcGFkZGluZzoyMHB4O1xyXG4gICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcblxyXG4gICAgdWwge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICZbc3R5bGUqPVwiYmFja2dyb3VuZC1jb2xvclwiXSB7XHJcbiAgICAgIHBhZGRpbmc6IDUycHggMTVweCAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgICY6ZW1wdHkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGEuaWNvbixcclxuICAgICNkZWFsX2NvbnRhY3RfaWRfYWRkX2xpbmt7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaW1nW3NyYyo9J2FkZC5wbmcnXXtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGFiLWNvbnRlbnQgZmllbGRzZXQge1xyXG4gICAgcGFkZGluZy10b3A6IDUycHg7XHJcblxyXG4gICAgbGVnZW5kIHtcclxuICAgICAgbGVmdDogMjBweDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDE3cHg7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3RhYi1jb250ZW50LXJlcG9zaXRvcmllcyB7XHJcbiAgICB0YWJsZSB7XHJcbiAgICAgIHRoIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJveC5lbmFibGVkX3NjbSB7XHJcbiAgICAgIHAge1xyXG4gICAgICAgIHBhZGRpbmc6MTBweCAwIDAgIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZm9ybS50YWJ1bGFyIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG5cclxuICBkaXYuYm94IHtcclxuICAgICYgPiAudGFidWxhciB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAmID4gZmllbGRzZXQge1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZzo1MnB4IDAgMDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcblxyXG4gICAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDoxN3B4O1xyXG4gICAgICAgICAgbGVmdDowO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgcGFkZGluZzogMTBweCAwO1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJiA+IGZpZWxkc2V0LFxyXG4gICAgJiA+IGZpZWxkc2V0LnRhYnVsYXJ7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgcGFkZGluZzo1MnB4IDAgMDtcclxuXHJcbiAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjE3cHg7XHJcbiAgICAgICAgbGVmdDowO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc2VsZWN0W25hbWUqPVwicXVlcnlbc29ydF9jcml0ZXJpYV1cIl0gKyAuamNmLXNlbGVjdCB7XHJcbiAgICAgIHdpZHRoOiA0MCU7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDEwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAucXVlcnlfc29ydF9jcml0ZXJpYV9jb3VudCB7XHJcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIGZpZWxkc2V0LmJveCB7XHJcbiAgICBwYWRkaW5nOiA1MnB4IDIwcHggMjBweDtcclxuXHJcbiAgICBsZWdlbmQge1xyXG4gICAgICBsZWZ0OiAyMHB4O1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjE3cHg7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAuaWNvbi1jaGVja2VkIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTRweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGZpZWxkc2V0IHtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHBhZGRpbmc6IDQwcHggMCAwO1xyXG5cclxuICAgICAgbGVnZW5kIHtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItcXVlcmllcyB7XHJcbiAgJi5hY3Rpb24tbmV3IHtcclxuICAgICNjb250ZW50IHtcclxuICAgICAgLmJveCB7XHJcbiAgICAgICAgZmllbGRzZXQge1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgSU5URVJOQUwgUEFHRVMgKEJPWCkgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1FRElBICovXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge31cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTAwcHgpIHt9XHJcbi8qIEVORCBDT05URU5UICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBIT01FIFBBR0UgKi9cclxuXHJcbi5jb250cm9sbGVyLXdlbGNvbWUuYWN0aW9uLWluZGV4IHtcclxuICAjbWFpbiA+ICNjb250ZW50IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIEhPTUUgUEFHRSAgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE9WRVJWSUVXIFBBR0UgKi9cclxuXHJcbi8qIEVORCBPVkVSVklFVyBQQUdFICovXHJcblxyXG5cclxuLnNjcm9sbGJhciB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIGhlaWdodDogMnB4O1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLXNjcm9sbGJhcik7XHJcbiAgbGluZS1oZWlnaHQ6IDA7XHJcblxyXG4gIC5oYW5kbGUge1xyXG4gICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyX2hhbmRsZSk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfVxyXG5cclxuICAubW91c2VhcmVhIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogLTlweDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMjBweDtcclxuICB9XHJcbn1cclxuXHJcbi5ob2xkLWNvbnRyb2wge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gIHBhZGRpbmc6IDEwcHggMCA1cHg7XHJcblxyXG4gIC5wYWdlcyB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgcGFkZGluZzogMCAxMHB4IDAgMDtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgZmxleDogMSAwIGF1dG87XHJcbiAgICBoZWlnaHQ6IDI2cHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgIG1hcmdpbjogMCA0cHg7XHJcbiAgICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNjcm9sbGJhcl9oYW5kbGUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLmNvbnRyb2xzIHtcclxuXHJcbiAgICAucHJldlBhZ2Uge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBAcHJldjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5uZXh0UGFnZSB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IEBuZXh0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG50ZC52YWx1ZXMge1xyXG4gICYgPiBzcGFuIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIH1cclxufVxyXG5cclxuaDJ7XHJcbiAgaW1nLmdyYXZhdGFyIHtcclxuICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICB9XHJcblxyXG4gIHNwYW4sXHJcbiAgYSB7XHJcbiAgICAmIH4gaW1nLmdyYXZhdGFyIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jd2F0Y2hlcnMgaW1nLmdyYXZhdGFyIHtcclxuICBtYXJnaW46IDA7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgVVNFUlMgKi9cclxuXHJcbiNjb250ZW50IHtcclxuICAjcGFzc3dvcmRfZmllbGRzIHtcclxuICAgIHBhZGRpbmc6IDEwcHggMCAwO1xyXG4gIH1cclxuXHJcbiAgI3RhYi1jb250ZW50LWdyb3VwcyB7XHJcblxyXG4gICAgLmJveCB7XHJcblxyXG4gICAgICAmID4gcCB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYmctYm94KTtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMzBweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZyk7XHJcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yKTtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6ZGlzYWJsZWQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmctZGlzYWJsZWQpO1xyXG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmctZGlzYWJsZWQpO1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItZGlzYWJsZWQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI3VzZXJfZ3JvdXBfaWRzIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG50YWJsZS5saXN0Om5vdCgub2RkLWV2ZW4pIHRib2R5IHRyOm50aC1jaGlsZCgybiksIC5ldmVuLCAjaXNzdWUtY2hhbmdlc2V0cyBkaXYuY2hhbmdlc2V0Om50aC1jaGlsZCgybikge1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbn1cclxuXHJcbi8qIEVORCBVU0VSUyAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgVElNRSBFTlRSSUVTICovXHJcblxyXG5mb3JtW2FjdGlvbio9XCJ0aW1lX2VudHJpZXMvcmVwb3J0XCJdIHtcclxuICAudGFicyB7XHJcbiAgICAmICsgcCB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggIWltcG9ydGFudDtcclxuICAgICAgbWF4LXdpZHRoOiA3MDBweDtcclxuXHJcbiAgICAgIC5qY2Ytc2VsZWN0IHtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYgKyAuYXV0b3Njcm9sbCB7XHJcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xyXG4gIH1cclxufVxyXG5mb3JtW2FjdGlvbio9XCJ0aW1lX2VudHJpZXNcIl0ge1xyXG4gIC5hdXRvc2Nyb2xsIHtcclxuICAgIG1hcmdpbjogMCAwIDMwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uY29udHJvbGxlci10aW1lbG9nIHtcclxuICAmLmFjdGlvbi1uZXcge1xyXG4gICAgZm9ybVthY3Rpb24qPVwidGltZV9lbnRyaWVzXCJdIHtcclxuICAgICAgLmF1dG9zY3JvbGwge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAuamNmLXNlbGVjdCB7XHJcbiAgICAgICAgICBtaW4td2lkdGg6IDEwMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGFibGUge1xyXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XHJcblxyXG4gICAgICAgICAgdGJvZHkge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB0aCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyOTVweDtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAyOTVweDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAyOTVweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG5cclxuICAgICAgICAgICAgLmpjZi1zZWxlY3Qtc3RhcnRfdGltZSxcclxuICAgICAgICAgICAgLmpjZi1zZWxlY3QtZW5kX3RpbWUge1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIFRJTUUgRU5UUklFUyAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgVElNRSBHQU5UICovXHJcblxyXG4jbWFpbiAuZ2FudHRfY29udGVudCB7XHJcbiAgIC5jb250ZXh0dWFsID4gc3BhbiB7XHJcbiAgICBjb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICBhIHtcclxuICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYXV0b3Njcm9sbCB7XHJcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgI21haW4gLmdhbnR0X2NvbnRlbnQge1xyXG4gICAgLmF1dG9zY3JvbGwge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jY29udGVudCAjcXVlcnlfZm9ybVthY3Rpb24qPVwiZ2FudHRcIl0ge1xyXG5cclxuICAmLm9wZW4tZmlsdGVycyB7XHJcbiAgICAjcXVlcnlfZm9ybV93aXRoX2J1dHRvbnMge1xyXG4gICAgICAuaG9sZGVyLWZpbHRlcnMge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNxdWVyeV9mb3JtX3dpdGhfYnV0dG9ucyB7XHJcbiAgICAmID4gLmJ1dHRvbnMge1xyXG4gICAgICBtYXgtd2lkdGg6IDcwMHB4O1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuXHJcbiAgICAgICNtb250aHMge1xyXG4gICAgICAgIGZsZXg6IDA7XHJcbiAgICAgICAgbWluLXdpZHRoOiA3MHB4O1xyXG4gICAgICAgIHdpZHRoOiA3MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmpjZi1zZWxlY3Qge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAgMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG5cclxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMCA1cHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnNlbGVjdDIge1xyXG4gICAgICAgIG1heC13aWR0aDogNzBweDtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgICAuaWNvbi1jaGVja2VkIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJiA+IC5idXR0b25zIHtcclxuICAgIG1heC13aWR0aDogNzAwcHg7XHJcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG5cclxuICAgICNtb250aHMge1xyXG4gICAgICBmbGV4OiAwO1xyXG4gICAgICBtaW4td2lkdGg6IDcwcHg7XHJcbiAgICAgIHdpZHRoOiA3MHB4O1xyXG4gICAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmpjZi1zZWxlY3Qge1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcblxyXG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDVweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWxlY3QyIHtcclxuICAgICAgbWF4LXdpZHRoOiA3MHB4O1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5pY29uLWNoZWNrZWQge1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLWdhbnR0cy5hY3Rpb24tc2hvdyB7XHJcbiAgI2NvbnRlbnQge1xyXG4gICAgJiA+IHRhYmxlIHtcclxuICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuXHJcbiAgICAgIC5pY29uIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDAgMCAyNHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZ2FudHRfc3ViamVjdHMge1xyXG4gICAgZm9udC1zaXplOiBAZnMxMjtcclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgICYgPiAjY29udGVudCAuY29udGV4dC1tZW51LXNlbGVjdGlvbiB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0LWJnKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgLmdhbnR0X3N1YmplY3RzIGEuaWNvbjphZnRlcixcclxuICAgICAgLmdhbnR0X3N1YmplY3RzIHNwYW4uaWNvbjphZnRlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb250ZXh0LW1lbnUtc2VsZWN0aW9uIHtcclxuICAgICAgLmdhbnR0X3N1YmplY3RzIGEuaWNvbjphZnRlcixcclxuICAgICAgLmdhbnR0X3N1YmplY3RzIHNwYW4uaWNvbjphZnRlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ncmF2YXRhciB7XHJcbiAgICBtYXJnaW46IDAgNXB4IDAgMCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLmdhbnR0X2hkciB7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuXHJcbiAgICAmW3N0eWxlKj1cImJhY2tncm91bmQ6XCJdIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmdhbnR0X2hkci5ud2RheSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gIH1cclxufVxyXG5cclxuI21haW4ge1xyXG4gIC5nYW50dF9zdWJqZWN0cyxcclxuICAuZ2FudHRfc2VsZWN0ZWRfY29sdW1uX2NvbnRlbnQuZ2FudHRfaGRyIHtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTE7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICB9XHJcbiAgI2dhbnR0X2FyZWEge1xyXG4gICAgJiAqIHtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5nYW50dF9zdWJqZWN0cyB7XHJcbiAgICBkaXYge1xyXG4gICAgICBsaW5lLWhlaWdodDogMTZweDtcclxuXHJcbiAgICAgICYgPiBzcGFuLmV4cGFuZGVyIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDE2cHg7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxNnB4O1xyXG4gICAgICAgIG1hcmdpbjogMCA1cHggMCAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiAgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAub3BlbiB7XHJcbiAgICAgICAgc3Bhbi5leHBhbmRlciB7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhLCBzcGFuIHtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XHJcblxyXG4gICAgICAmLmljb24ge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6MDtcclxuICAgICAgICAgIGxlZnQ6MDtcclxuICAgICAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmstZ3JleSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgVElNRSBHQU5UICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBTRVRUSU5HUyBQQUdFICovXHJcblxyXG4uY29udHJvbGxlci1wcm9qZWN0cy5hY3Rpb24tc2V0dGluZ3Mge1xyXG4gIC50YWItY29udGVudCB7XHJcbiAgICAmID4gcCB7XHJcbiAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI2NvbnRlbnQge1xyXG4gIC5zcGxpdGNvbnRlbnQge1xyXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgfVxyXG5cclxuICAudGFiLWNvbnRlbnQge1xyXG4gICAgJiN0YWItY29udGVudC12ZXJzaW9ucyB7XHJcbiAgICAgIGZpZWxkc2V0IHtcclxuICAgICAgICBwYWRkaW5nOiA1MnB4IDIwcHggMjBweDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICAgLmpjZi1zZWxlY3QsXHJcbiAgICAgICAgLnNlbGVjdDIge1xyXG4gICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsZWdlbmQge1xyXG4gICAgICAgICAgbGVmdDogMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWhvdmVyKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmICsgYTpub3QoLmljb24tcmVsb2FkKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3IpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgJiArIHAge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTVweDtcclxuXHJcbiAgICAgICAgICBhLmljb24ge1xyXG4gICAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGZvcm0ge1xyXG4gICAgICAgIC5zZWxlY3QyIHtcclxuICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBtYXJnaW46IDVweCAwIDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250ZXh0dWFsIHtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcbn1cclxuXHJcbi8qIFNUQVJUIEZPUlVNUyAqL1xyXG5cclxuI3RhYi1jb250ZW50LWJvYXJkcyB7XHJcbiAgLnRhYmxlLWxpc3Qge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG5cclxuICAudGFibGUtbGlzdC1oZWFkZXIge1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIHBhZGRpbmc6IDEzcHggMTRweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMDstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMDtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDA7XHJcbiAgfVxyXG5cclxuICAudGFibGUtbGlzdC1yb3cge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuXHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIC50YWJsZS1saXN0LWNlbGwge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFsbC1ob3Zlci1iZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGFibGUtbGlzdC1jZWxsIHtcclxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICBwYWRkaW5nOiAxM3B4IDE0cHggIWltcG9ydGFudDtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICYubmFtZSB7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IDAgMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IDAgMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmJ1dHRvbnMge1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpIDA7LW1vei1ib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgMDtib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIEZPUlVNUyAqL1xyXG5cclxuLyogU1RBUlQgQUNUSVZJVElFUyAqL1xyXG5cclxuI3RhYi1jb250ZW50LWFjdGl2aXRpZXMge1xyXG4gIC50YWJ1bGFyIHtcclxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC5jb250ZXh0dWFsIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC5saXN0IHtcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgQUNUSVZJVElFUyAqL1xyXG5cclxuLmFkbWluLWZpbHRlciB7XHJcbiAgPiBkaXYge1xyXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4jY29tbWl0LWtleXdvcmRzIHtcclxuICBtYXJnaW46IDAgMCAyMHB4O1xyXG59XHJcblxyXG4vKiBFTkQgU0VUVElOR1MgUEFHRSAqL1xyXG5cclxuI2NvbnRlbnQge1xyXG4gIGZvcm0ge1xyXG4gICAgLmJveCB7XHJcbiAgICAgIHAge1xyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICYuYmxvY2sge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gICAgICAgICAgICAmIH4gLmluZm8ge1xyXG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTVJESUEgKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTQ1MHB4KSB7XHJcbiAgI21haW4gPiAjY29udGVudCB7XHJcbiAgICAuc3BsaXRjb250ZW50IHtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgfVxyXG5cclxuICAgIC5zcGxpdGNvbnRlbnRyaWdodCxcclxuICAgIC5zcGxpdGNvbnRlbnRsZWZ0LFxyXG4gICAgI2xpc3QtcmlnaHQsXHJcbiAgICAjbGlzdC1sZWZ0IHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5zcGxpdGNvbnRlbnRyaWdodCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjUwcHgpIHtcclxuICAjbWFpbiB7XHJcbiAgICAmID4gI2NvbnRlbnQge1xyXG4gICAgICAuYXR0cmlidXRlcyB7XHJcbiAgICAgICAgLnNwbGl0Y29udGVudGxlZnQsXHJcbiAgICAgICAgLnNwbGl0Y29udGVudHJpZ2h0IHtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmpzdEJsb2NrIHtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAudGFicyB7XHJcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAyODBweDtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG5cclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogaW5oZXJpdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmpzdEVsZW1lbnRzIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gIGZvcm1bYWN0aW9uKj1cInRpbWVfZW50cmllc1wiXSB7XHJcbiAgICAuYXV0b3Njcm9sbCB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5mbHlvdXQtaXMtYWN0aXZlIHtcclxuICAgIC5sb2dnZWRhcyB7XHJcbiAgICAgICYuY29udHJvbGxlci1pc3N1ZXMsXHJcbiAgICAgICYuY29udHJvbGxlci1tZXNzYWdlcyxcclxuICAgICAgJi5jb250cm9sbGVyLXZlcnNpb25zLFxyXG4gICAgICAmLmNvbnRyb2xsZXItbmV3cyxcclxuICAgICAgJi5jb250cm9sbGVyLWRvY3VtZW50cyB7XHJcbiAgICAgICAgJi5hY3Rpb24tc2hvdyB7XHJcbiAgICAgICAgICAjbWFpbiAjY29udGVudCA+IC5jb250ZXh0dWFsIHtcclxuICAgICAgICAgICAgbGVmdDogLTI1MHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jb250cm9sbGVyLXdpa2kge1xyXG4gICAgICAmLmFjdGlvbi1zaG93LFxyXG4gICAgICAmLmFjdGlvbi1hbm5vdGF0ZSB7XHJcbiAgICAgICAgI21haW4gI2NvbnRlbnQgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgICBsZWZ0OiAtMjUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRyb2xsZXItdXNlcnMuYWN0aW9uLWVkaXQsXHJcbiAgICAuY29udHJvbGxlci1ib2FyZHMuYWN0aW9uLWluZGV4IHtcclxuICAgICAgI21haW4gI2NvbnRlbnQgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgbGVmdDogLTI1MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxvZ2dlZGFzIHtcclxuICAgICAgJi5jb250cm9sbGVyLXdvcmtmbG93cy5hY3Rpb24tcGVybWlzc2lvbnMsXHJcbiAgICAgICYuY29udHJvbGxlci13b3JrZmxvd3MuYWN0aW9uLWVkaXR7XHJcbiAgICAgICAgI21haW4gI2NvbnRlbnQgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgICBsZWZ0OiAtMjUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29udHJvbGxlci13aWtpLFxyXG4gIC5pc3N1ZXMtY29udGV4dHVhbCB7XHJcbiAgICAmLmFjdGlvbi1zaG93LFxyXG4gICAgJi5hY3Rpb24tYW5ub3RhdGV7XHJcblxyXG4gICAgICAjd3JhcHBlciB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQ4cHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICN3cmFwcGVyMyB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmhhcy1mb290ZXIge1xyXG4gICAgICAgICNtYWluIHtcclxuICAgICAgICAgICNjb250ZW50IHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjbWFpbiB7XHJcbiAgICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgICAgJiA+IC5jb250ZXh0dWFsIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBsZWZ0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtby10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAgICAgJi5oaWRkZW4tbGluayB7XHJcbiAgICAgICAgICAgICAgLmljb246bm90KC5uZXctaWNvbikge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5kcmRuLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgIHRvcDogYXV0bztcclxuICAgICAgICAgICAgICBib3R0b206IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuZmx5b3V0LWlzLWFjdGl2ZSB7XHJcbiAgICAgICAgI21haW4ge1xyXG5cclxuICAgICAgICAgICNjb250ZW50IHtcclxuICAgICAgICAgICAgJiA+IC5jb250ZXh0dWFsIHtcclxuICAgICAgICAgICAgICBsZWZ0OiAtMjUwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5sb2dnZWRhcyB7XHJcbiAgICAmLmNvbnRyb2xsZXItd29ya2Zsb3dzLmFjdGlvbi1wZXJtaXNzaW9ucyxcclxuICAgICYuY29udHJvbGxlci13b3JrZmxvd3MuYWN0aW9uLWVkaXQge1xyXG4gICAgICAjd3JhcHBlciB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQ4cHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICN3cmFwcGVyMyB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmhhcy1mb290ZXIge1xyXG4gICAgICAgICNtYWluIHtcclxuICAgICAgICAgICNjb250ZW50IHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjbWFpbiB7XHJcbiAgICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgICAgJiA+IC5jb250ZXh0dWFsIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBsZWZ0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtby10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG5cclxuXHJcbiAgICAgICAgICAgICYuaGlkZGVuLWxpbmsge1xyXG4gICAgICAgICAgICAgIC5pY29uOm5vdCgubmV3LWljb24pIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuZHJkbiB7XHJcbiAgICAgICAgICAgICAgLmRyZG4tdHJpZ2dlciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgLmRyZG4tY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICAgICAgICAgICAuZHJkbi1pdGVtcyB7XHJcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmZseW91dC1pcy1hY3RpdmUge1xyXG4gICAgICAgICNtYWluIHtcclxuXHJcbiAgICAgICAgICAjY29udGVudCB7XHJcbiAgICAgICAgICAgICYgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgICAgICAgbGVmdDogLTI1MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubG9nZ2VkYXMge1xyXG4gICAgJi5jb250cm9sbGVyLWlzc3VlcyxcclxuICAgICYuY29udHJvbGxlci1tZXNzYWdlcyxcclxuICAgICYuY29udHJvbGxlci12ZXJzaW9ucyxcclxuICAgICYuY29udHJvbGxlci1uZXdzLFxyXG4gICAgJi5jb250cm9sbGVyLWRvY3VtZW50cyB7XHJcbiAgICAgICYuYWN0aW9uLXNob3cge1xyXG5cclxuICAgICAgICAjd3JhcHBlciB7XHJcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDhweDtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjd3JhcHBlcjMge1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5oYXMtZm9vdGVyIHtcclxuICAgICAgICAgICNtYWluIHtcclxuICAgICAgICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjbWFpbiB7XHJcbiAgICAgICAgICAjY29udGVudCB7XHJcbiAgICAgICAgICAgICYgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgICAgICAgIHRvcDogYXV0bztcclxuICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDEwcHgnKTtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAtby10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIHRyYW5zaXRpb246ICBsZWZ0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcblxyXG5cclxuICAgICAgICAgICAgICAmLmhpZGRlbi1saW5rIHtcclxuICAgICAgICAgICAgICAgIC5pY29uOm5vdCgubmV3LWljb24pIHtcclxuICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIC5kcmRuIHtcclxuICAgICAgICAgICAgICAgIC5kcmRuLXRyaWdnZXIge1xyXG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5kcmRuLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgICAgICAgLmRyZG4taXRlbXMge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuZmx5b3V0LWlzLWFjdGl2ZSB7XHJcbiAgICAgICAgICAjbWFpbiB7XHJcblxyXG4gICAgICAgICAgICAjY29udGVudCB7XHJcbiAgICAgICAgICAgICAgJiA+IC5jb250ZXh0dWFsIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IC0yNTBweDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLWJvYXJkcy5hY3Rpb24taW5kZXgsXHJcbiAgLmNvbnRyb2xsZXItdXNlcnMuYWN0aW9uLWVkaXQge1xyXG5cclxuICAgICN3cmFwcGVyIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDQ4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgI3dyYXBwZXIzIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICYuaGFzLWZvb3RlciB7XHJcbiAgICAgICNtYWluIHtcclxuICAgICAgICAjY29udGVudCB7XHJcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjbWFpbiB7XHJcbiAgICAgICNjb250ZW50IHtcclxuICAgICAgICAmID4gLmNvbnRleHR1YWwge1xyXG4gICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogIGxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246ICBsZWZ0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgJi5oaWRkZW4tbGluayB7XHJcbiAgICAgICAgICAgIC5pY29uOm5vdCgubmV3LWljb24pIHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLmRyZG4ge1xyXG4gICAgICAgICAgICAuZHJkbi10cmlnZ2VyIHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuZHJkbi1jb250ZW50IHtcclxuICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgICAgIC5kcmRuLWl0ZW1zIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5mbHlvdXQtaXMtYWN0aXZlIHtcclxuICAgICAgI21haW4ge1xyXG5cclxuICAgICAgICAjY29udGVudCB7XHJcbiAgICAgICAgICAmID4gLmNvbnRleHR1YWwge1xyXG4gICAgICAgICAgICBsZWZ0OiAtMjUwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgI21haW4gPiAjY29udGVudCB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHJcbiAgICAmID4gaDIsXHJcbiAgICAmICNjb250ZW50ID4gaDIsXHJcbiAgICAmICNxdWVyeV9mb3JtID4gaDIsXHJcbiAgICAudG9wLXF1ZXN0aW9uIGgyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJiA+IC5jb250ZXh0dWFsLFxyXG4gICAgI2NvbnRlbnQgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgIHJpZ2h0OiAzMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgI2NvbnRlbnQge1xyXG4gICAgLnRhYi1jb250ZW50IHtcclxuICAgICAgJiN0YWItY29udGVudC12ZXJzaW9ucyB7XHJcbiAgICAgICAgZm9ybSB7XHJcbiAgICAgICAgICAuc2VsZWN0MiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluID4gI2NvbnRlbnQgPiAuY29udGV4dHVhbDpub3QoLm5leHQtcHJldi1saW5rcyksXHJcbiAgI21haW4gPiAjY29udGVudCAjY29udGVudCA+IC5jb250ZXh0dWFsOm5vdCgubmV4dC1wcmV2LWxpbmtzKSB7XHJcbiAgICByaWdodDogMTBweDtcclxuICB9XHJcblxyXG4gIC5oYXMtZm9vdGVyIHtcclxuICAgICNtYWluID4gI2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLXdlbGNvbWUge1xyXG4gICAgJi5hY3Rpb24taW5kZXgge1xyXG4gICAgICAjbWFpbiB7XHJcbiAgICAgICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgMTBweCAyMHB4O1xyXG5cclxuICAgICAgICAgIC5ib3gge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29udHJvbGxlci1nYW50dHMuYWN0aW9uLXNob3cge1xyXG4gICAgI3F1ZXJ5X2Zvcm1bYWN0aW9uKj1cImdhbnR0XCJdIHtcclxuICAgICAgLmhvbGRlci1maWx0ZXJzIHtcclxuICAgICAgICAuaW4tZmlsdGVyIHtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGFidWxhcixcclxuICAudGFidWxhci5zZXR0aW5ncyB7XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgIH1cclxuICB9XHJcbiAgI3dyYXBwZXIge1xyXG4gICAgI2FqYXgtaW5kaWNhdG9yIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGlucHV0W3R5cGU9J2NoZWNrYm94J10ge1xyXG4gICAgaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB3aWR0aDogMThweCAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luOiAwIDVweCAwIDAgIWltcG9ydGFudDtcclxuICB9XHJcbiAgI21haW4ge1xyXG4gICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgc3Bhbi5wYWdpbmF0aW9uIHtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuc3BsaXRjb250ZW50bGVmdCxcclxuICAgICAgI2xpc3QtbGVmdHtcclxuICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuc3BsaXRjb250ZW50cmlnaHQsXHJcbiAgICAgICNsaXN0LXJpZ2h0IHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kcmRuIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDVweDtcclxuICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgPiBoMixcclxuICAgICAgI3F1ZXJ5X2Zvcm0gPiBoMixcclxuICAgICAgI3F1ZXJ5X2Zvcm1bYWN0aW9uKj0nYWdpbGUvYm9hcmQnXSBoMiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctYm94KTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMHB4IDUwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHggMjVweDtcclxuICAgICAgICBtYXJnaW46IDAgLTEwcHggMjBweDtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHggMTVweCA0NXB4O1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyMHB4KTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudGFiLWNvbnRlbnQge1xyXG4gICAgICAgICNhY3Rpdml0eSB7XHJcbiAgICAgICAgICBkbCB7XHJcbiAgICAgICAgICAgIGR0IHtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHggMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBkZCB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjY29udGVudCB7XHJcbiAgICAuc3BsaXRjb250ZW50bGVmdCAud2lraXtcclxuICAgICAgcGFkZGluZzoyMHB4O1xyXG4gICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAuYm94IHtcclxuICAgICAgcGFkZGluZzoyMHB4O1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG5cclxuICAgICAgJi5zZXR0aW5ncyB7XHJcbiAgICAgICAgLmJveCB7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAudGFiLWNvbnRlbnQge1xyXG4gICAgICAmI3RhYi1jb250ZW50LXZlcnNpb25zIHtcclxuICAgICAgICBmaWVsZHNldCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiA1MnB4IDIwcHggMjBweDtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgIC5qY2Ytc2VsZWN0LFxyXG4gICAgICAgICAgLnNlbGVjdDIge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI21haW4ge1xyXG4gICAgLnRhYi1jb250ZW50IHtcclxuICAgICAgdGFibGUge1xyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbWFpbiA+ICNjb250ZW50ICsgI2hpc3Rvcnkge1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcwMHB4KSB7XHJcbiAgI2NvbnRlbnQge1xyXG4gICAgI3F1ZXJ5X2Zvcm1bYWN0aW9uKj1cImdhbnR0XCJdLFxyXG4gICAgI3F1ZXJ5X2Zvcm1bYWN0aW9uKj1cImdhbnR0XCJdICNxdWVyeV9mb3JtX3dpdGhfYnV0dG9ucyB7XHJcbiAgICAgICAgJiA+IC5idXR0b25zIHtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMCAwO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICAuamNmLXNlbGVjdCxcclxuICAgICAgICAgIC5zZWxlY3QyIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLmljb24tY2hlY2tlZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICNtb250aHMge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItdGltZWxvZyB7XHJcbiAgICAmLmFjdGlvbi1uZXcge1xyXG4gICAgICBmb3JtW2FjdGlvbio9XCJ0aW1lX2VudHJpZXNcIl0ge1xyXG4gICAgICAgIC5hdXRvc2Nyb2xsIHtcclxuXHJcbiAgICAgICAgICB0YWJsZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIDA7XHJcblxyXG4gICAgICAgICAgICB0ciB7XHJcbiAgICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRoIHtcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYjaXNzdWVsb2d0YWJsZSB7XHJcbiAgICAgICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmpjZi1zZWxlY3Qge1xyXG4gICAgICAgICAgbWluLXdpZHRoOiAxMDBweDtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluPiNjb250ZW50ICNjb250ZW50Pi5jb250ZXh0dWFsOm5vdCgubmV4dC1wcmV2LWxpbmtzKSxcclxuICAjbWFpbj4jY29udGVudD4uY29udGV4dHVhbDpub3QoLm5leHQtcHJldi1saW5rcykge1xyXG4gICAgdG9wOiAxMnB4O1xyXG4gIH1cclxuXHJcbiAgLmhhcy1mb290ZXIge1xyXG4gICAgI21haW4gPiAjY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbWFpbiB7XHJcblxyXG4gICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGgzIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAxNXB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmID4gaDIsXHJcbiAgICAgICNxdWVyeV9mb3JtID4gaDIsXHJcbiAgICAgICNxdWVyeV9mb3JtW2FjdGlvbio9J2FnaWxlL2JvYXJkJ10gaDIge1xyXG4gICAgICAgIG1hcmdpbjogMCAtMTBweCAyMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGgyO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAjcXVlcnlfZm9ybSA+IGgyICB7XHJcblxyXG4gICAgICAgIC5saXZlX3NlYXJjaCB7XHJcbiAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgbWFyZ2luOiAxNXB4IDAgMDtcclxuICAgICAgICAgIG1heC13aWR0aDogaW5oZXJpdDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGZvcm0ge1xyXG4gICAgICAgIC50YWJ1bGFyLFxyXG4gICAgICAgIC5ib3gge1xyXG4gICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgICAgICBsYWJlbCB7XHJcblxyXG4gICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXTpub3QoLmhhc0RhdGVwaWNrZXIpIHtcclxuICAgICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgJiB+IGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICYgfiBhIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAmIH4gLmpjZi1zZWxlY3Qge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgI3NldHRpbmdzX2ludm9pY2VzX3BheXBhbF9hY2NvdW50IHtcclxuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnRhYnVsYXIge1xyXG4gICAgICAgICAgcGFkZGluZzogNXB4IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuYm94IHtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHggIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICYudGFidWxhciB7XHJcblxyXG4gICAgICAgICAgLnRhYnVsYXIsXHJcbiAgICAgICAgICBmaWVsZHNldCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgZmllbGRzZXQuYm94IHtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHggMTVweDtcclxuXHJcbiAgICAgICAgJiN0cmFja2VyX3Byb2plY3RfaWRzIHtcclxuICAgICAgICAgIG1hcmdpbjogMjBweCAwIDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsZWdlbmQge1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLW1vYmlsZSk7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJveCArIC5ib3gge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJiAuY29udGV4dHVhbCxcclxuICAgICAgI2NvbnRlbnQgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgdG9wOiAxMXB4O1xyXG5cclxuICAgICAgICAmLm5leHQtcHJldi1saW5rcyB7XHJcbiAgICAgICAgICB0b3A6IC0xMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5hdHRhY2htZW50c19mb3JtIHtcclxuICAgICAgLmF0dGFjaG1lbnRzX2ZpZWxkcyB7XHJcbiAgICAgICAgJiA+IHNwYW4ge1xyXG4gICAgICAgICAgcGFkZGluZzogMCAwIDEwcHg7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAmIH4gaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJiB+IGEge1xyXG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjY29udGVudCB7XHJcbiAgICAuc3BsaXRjb250ZW50bGVmdCB7XHJcbiAgICAgIC53aWtpIHtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHggIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBmb3JtIHtcclxuICAgICAgI2lzc3VlX2VzdGltYXRlZF9ob3VycyxcclxuICAgICAgI3RpbWVfZW50cnlfaG91cnMge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGRpdi5ib3gge1xyXG4gICAgICAucXVlcnlfc29ydF9jcml0ZXJpYV9jb3VudCB7XHJcbiAgICAgICAgbWFyZ2luOiA1cHggMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmID4gZmllbGRzZXQudGFidWxhcixcclxuICAgICAgJiA+IGZpZWxkc2V0LFxyXG4gICAgICAmID4gLnRhYnVsYXIge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG5cclxuICAgICAgICBsZWdlbmQge1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB6LWluZGV4OiAyO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IC0xMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctbW9iaWxlKTtcclxuICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRhYi1jb250ZW50IHtcclxuICAgICAgZmllbGRzZXQge1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTBweCAxNXB4O1xyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICB0b3A6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICB6LWluZGV4OiAyO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IC0xMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctbW9iaWxlKTtcclxuICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYjdGFiLWNvbnRlbnQtdmVyc2lvbnMge1xyXG4gICAgICAgIGZpZWxkc2V0IHtcclxuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTBweCAxNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGZvcm1bYWN0aW9uKj1cInRpbWVfZW50cmllcy9yZXBvcnRcIl0ge1xyXG4gICAgICAudGFicyB7XHJcbiAgICAgICAgJiArIHAge1xyXG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICAgIC5qY2Ytc2VsZWN0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW46IDVweCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50YWItY29udGVudCN0YWItY29udGVudC12ZXJzaW9ucyB7XHJcbiAgICAgIGZpZWxkc2V0Om5vdCgudG9sKSB7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCAxMHB4IDE1cHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuXHJcbiAgICAgICAgbGVnZW5kIHtcclxuICAgICAgICAgIGxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICB0b3A6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZGl2LmJveCB7XHJcbiAgICAgICYgPiAudGFidWxhciB7XHJcbiAgICAgICAgJiA+IGZpZWxkc2V0e1xyXG4gICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG5cclxuICAgICAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgbGVmdDowICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICBsZWZ0OiAtMTBweDtcclxuICAgICAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLW1vYmlsZSk7XHJcbiAgICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGZpZWxkc2V0IHtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuXHJcbiAgICAgICAgbGVnZW5kIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBsZWZ0OjAgIWltcG9ydGFudDtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICAgICAgICB6LWluZGV4OiAyO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IC0xMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctbW9iaWxlKTtcclxuICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbWFpbiB7XHJcbiAgICAjY29udGVudCB7XHJcbiAgICAgIC50YWItY29udGVudCxcclxuICAgICAgLnNwbGl0Y29udGVudHJpZ2h0IHtcclxuICAgICAgICAjYWN0aXZpdHkge1xyXG4gICAgICAgICAgZGwge1xyXG5cclxuICAgICAgICAgICAgZHQge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGRkIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC50aW1lIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xyXG4gICNjb250ZW50ICN0YWItY29udGVudC1ncm91cHMgLmJveD5wIGEge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbi8qIFNUQVJUIFJFVk8gQlJFQURDUlVNQlMgKi9cclxuXHJcbiNtYWluID4gI2NvbnRlbnQge1xyXG4gIG1hcmdpbi10b3A6IDQxcHg7XHJcblxyXG4gICYgID4gaDIge1xyXG4gICAgLnJldm8tYnJlYWRjcnVtYnMge1xyXG4gICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yZXZvLWJyZWFkY3J1bWJzIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgIG9yZGVyOiAxO1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcblxyXG4gIC5yZXZvLWljb24taW5mbyB7XHJcbiAgICBtYXJnaW46IDAgMCAwIDEwcHg7XHJcbiAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgbWluLWhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICBtaW4td2lkdGg6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1pZGxlKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1taWRsZSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1pZGxlKTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1taWRsZSk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1taWRsZSk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWlkbGUpO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWlkbGUpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWlkbGUpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1pZGxlKTtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZS1zbWFsbCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5vcGVuIHtcclxuICAgIC5yZXZvLWJyZWFkY3J1bWJzIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLnJldm8taWNvbi1pbmZvIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uX2NvbG9yX2FjdGl2ZSkgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAjbWFpbiA+ICNjb250ZW50IHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcblxyXG4gICAgJiA+IC5yZXZvLWJyZWFkY3J1bWJzIHtcclxuICAgICAgb3JkZXI6IDI7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCAxMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI21haW4ge1xyXG4gIHRkLnVzZXJuYW1lIGltZy5ncmF2YXRhciB7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDMwcHg7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgUkVWTyBCUkVBRENSVU1CUyAqL1xyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcclxuICAuY29udHJvbGxlci10aW1lbG9nLmFjdGlvbi1yZXBvcnQge1xyXG4gICAgI2NvbnRlbnQge1xyXG4gICAgICBmb3JtIHtcclxuICAgICAgICAuc2VsZWN0MiB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgIG1pbi13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmljb24tcmVsb2FkLFxyXG4gICAgICAgIGxhYmVsW2Zvcj1cImNyaXRlcmlhc1wiXSB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmljb24tcmVsb2FkIHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IDVweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4jY29udGFjdF9saXN0IHtcclxuICBvdmVyZmxvdy14OiBhdXRvO1xyXG59XHJcblxyXG4jbWFpbiB0YWJsZS5jYWwge1xyXG4gIG1hcmdpbjogMTZweCAwIDA7XHJcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDA7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDA7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwO1xyXG5cclxuICAjYmxvY2stY2FsZW5kYXIgJiB7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcblxyXG4gICAgdGQge1xyXG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG5cclxuICAgICAgJjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgfVxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLndlZWstbnVtYmVyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIHRoZWFkIHtcclxuICAgIHRoIHtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG5cclxuICAgICAgJjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRib2R5IHtcclxuICAgIHRkIHtcclxuICAgICAgJjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0ciB7XHJcbiAgICB0ZCB7XHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0ZCB7XHJcbiAgICBtaW4td2lkdGg6IDE1MHB4O1xyXG4gICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcblxyXG4gICAgLmRheS1udW0ge1xyXG4gICAgICBwYWRkaW5nOiA2cHg7XHJcbiAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xyXG4gICAgICBsaW5lLWhlaWdodDogMTZweCAhaW1wb3J0YW50O1xyXG4gICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICYub2RkIHtcclxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24ge1xyXG4gICAgICBwYWRkaW5nOiAwIDAgMCAzMHB4O1xyXG5cclxuICAgICAgJi5pY29uLXBhY2thZ2Uge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLm9kZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gIH1cclxuICAudG9vbHRpcCB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIHotaW5kZXg6IDIgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbiAgZGl2Lmlzc3VlIHtcclxuICAgIG1hcmdpbjogNHB4IDAgMCAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZzogMTRweCAxMHB4IDEwcHggNTVweCAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7LW1vei1ib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7Ym9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZDogIHZhcigtLWJnLWZmZikgIWltcG9ydGFudDtcclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgICYucHJpb3JpdHktMSB7IGJvcmRlci1jb2xvcjogdmFyKC0tcHJpb3JpdHktMSkgIWltcG9ydGFudDt9XHJcbiAgICAmLnByaW9yaXR5LTIgeyBib3JkZXItY29sb3I6IHZhcigtLXByaW9yaXR5LTIpICFpbXBvcnRhbnQ7fVxyXG4gICAgJi5wcmlvcml0eS0zIHsgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmlvcml0eS0zKSAhaW1wb3J0YW50O31cclxuICAgICYucHJpb3JpdHktNCB7IGJvcmRlci1jb2xvcjogdmFyKC0tcHJpb3JpdHktNCkgIWltcG9ydGFudDt9XHJcbiAgICAmLnByaW9yaXR5LTUgeyBib3JkZXItY29sb3I6IHZhcigtLXByaW9yaXR5LTUpICFpbXBvcnRhbnQ7fVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgIG9wYWNpdHk6IDAuMjtcclxuICAgIH1cclxuICAgICYucHJpb3JpdHktMTpiZWZvcmUgeyBiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS0xKSAhaW1wb3J0YW50O31cclxuICAgICYucHJpb3JpdHktMjpiZWZvcmUgeyBiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS0yKSAhaW1wb3J0YW50O31cclxuICAgICYucHJpb3JpdHktMzpiZWZvcmUgeyBiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS0zKSAhaW1wb3J0YW50O31cclxuICAgICYucHJpb3JpdHktNDpiZWZvcmUgeyBiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS00KSAhaW1wb3J0YW50O31cclxuICAgICYucHJpb3JpdHktNTpiZWZvcmUgeyBiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS01KSAhaW1wb3J0YW50O31cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICBsZWZ0OiA1cHg7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuOCk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuOCk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC44KTtcclxuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuOCk7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjgpO1xyXG4gICAgICB3aWR0aDogNDBweCAhaW1wb3J0YW50O1xyXG4gICAgICBoZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIH1cclxuXHJcbiAgICAmLnByaW9yaXR5LTE6YWZ0ZXIgeyBjb2xvcjogdmFyKC0tcHJpb3JpdHktMSkgIWltcG9ydGFudDt9XHJcbiAgICAmLnByaW9yaXR5LTI6YWZ0ZXIgeyBjb2xvcjogdmFyKC0tcHJpb3JpdHktMikgIWltcG9ydGFudDt9XHJcbiAgICAmLnByaW9yaXR5LTM6YWZ0ZXIgeyBjb2xvcjogdmFyKC0tcHJpb3JpdHktMikgIWltcG9ydGFudDt9XHJcbiAgICAmLnByaW9yaXR5LTQ6YWZ0ZXIgeyBjb2xvcjogdmFyKC0tcHJpb3JpdHktNCkgIWltcG9ydGFudDt9XHJcbiAgICAmLnByaW9yaXR5LTU6YWZ0ZXIgeyBjb2xvcjogdmFyKC0tcHJpb3JpdHktNSkgIWltcG9ydGFudDt9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICBtYXJnaW46IDAgMCAzcHg7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcclxuXHJcbiAgICAgICYucHJpb3JpdHktMSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW9yaXR5LTEpICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICYgfiBhIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmlvcml0eS0xKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLnByaW9yaXR5LTIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmlvcml0eS0yKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmIH4gYSB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpb3JpdHktMikgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJi5wcmlvcml0eS0zIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tcHJpb3JpdHktMykgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgJiB+IGEge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLXByaW9yaXR5LTMpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYucHJpb3JpdHktNCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW9yaXR5LTQpICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICYgfiBhIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmlvcml0eS00KSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLnByaW9yaXR5LTUge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmlvcml0eS01KSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmIH4gYSB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpb3JpdHktNSkgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgID4gYSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC50aXAge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICBsZWZ0OiAtNHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgZm9udC1zaXplOiBAZnMxMiAhaW1wb3J0YW50O1xyXG4gICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQ7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tc21hbGwtYm94LXNoYWRvdyk7XHJcbiAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tc21hbGwtYm94LXNoYWRvdyk7XHJcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNtYWxsLWJveC1zaGFkb3cpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb3BhY2l0eTogMC4yO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICB9XHJcbiAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgfVxyXG4gICAgICAuaXNzdWUge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgcGFkZGluZzogNHB4IDAgMCA0NXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICY6aG92ZXIgLnRpcCB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgJi5wcmlvcml0eS0xIC50aXB7IGJvcmRlci1jb2xvcjogdmFyKC0tcHJpb3JpdHktMSkgIWltcG9ydGFudDt9XHJcbiAgICAmLnByaW9yaXR5LTIgLnRpcHsgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmlvcml0eS0yKSAhaW1wb3J0YW50O31cclxuICAgICYucHJpb3JpdHktMyAudGlweyBib3JkZXItY29sb3I6IHZhcigtLXByaW9yaXR5LTMpICFpbXBvcnRhbnQ7fVxyXG4gICAgJi5wcmlvcml0eS00IC50aXB7IGJvcmRlci1jb2xvcjogdmFyKC0tcHJpb3JpdHktNCkgIWltcG9ydGFudDt9XHJcbiAgICAmLnByaW9yaXR5LTUgLnRpcHsgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmlvcml0eS01KSAhaW1wb3J0YW50O31cclxuXHJcbiAgICAmLnByaW9yaXR5LTEgLnRpcDpiZWZvcmV7IGJhY2tncm91bmQ6IHZhcigtLXByaW9yaXR5LTEpICFpbXBvcnRhbnQ7fVxyXG4gICAgJi5wcmlvcml0eS0yIC50aXA6YmVmb3JleyBiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS0yKSAhaW1wb3J0YW50O31cclxuICAgICYucHJpb3JpdHktMyAudGlwOmJlZm9yZXsgYmFja2dyb3VuZDogdmFyKC0tcHJpb3JpdHktMykgIWltcG9ydGFudDt9XHJcbiAgICAmLnByaW9yaXR5LTQgLnRpcDpiZWZvcmV7IGJhY2tncm91bmQ6IHZhcigtLXByaW9yaXR5LTQpICFpbXBvcnRhbnQ7fVxyXG4gICAgJi5wcmlvcml0eS01IC50aXA6YmVmb3JleyBiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS01KSAhaW1wb3J0YW50O31cclxuICB9XHJcblxyXG4gIHRyIHtcclxuICAgICYgPiB0ZCB7XHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgZGl2Lmlzc3VlIHtcclxuICAgICAgICAgIC50aXAge1xyXG4gICAgICAgICAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0Ym9keSB7XHJcbiAgICB0ciB7XHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgZGl2Lmlzc3VlIC50aXAge1xyXG4gICAgICAgICAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBkaXYuaXNzdWU6aG92ZXIgLnRpcCB7XHJcbiAgICAgICAgICAgIHRvcDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0ZCB7XHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgZGl2Lmlzc3VlOmhvdmVyLFxyXG4gICAgICAgIGRpdi5pc3N1ZSB7XHJcbiAgICAgICAgICAudGlwIHtcclxuICAgICAgICAgICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICByaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI2NvbnRlbnQgLmxlZ2VuZC5jYWwge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgcGFkZGluZzogMTVweDtcclxuICBtYXJnaW46IC0xcHggMCAwIDFweDtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiAgMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6ICAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgd2lkdGg6IGNhbGMoficxMDAlIC0gMnB4Jyk7XHJcblxyXG4gIHNwYW4ge1xyXG4gICAgcGFkZGluZzogOHB4IDIwcHggOHB4IDQ1cHggIWltcG9ydGFudDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudFxyXG4gIDtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogIHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC44KTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06ICB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuOCk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06ICB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuOCk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogIHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMC44KTtcclxuICAgICAgdHJhbnNmb3JtOiAgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjgpO1xyXG4gICAgICB3aWR0aDogNDBweCAhaW1wb3J0YW50O1xyXG4gICAgICBoZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIHotaW5kZXg6MTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIH1cclxuICAgICYuc3RhcnRpbmc6YWZ0ZXJ7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1wcmlvcml0eS0yKTtcclxuICAgIH1cclxuICAgICYuZW5kaW5nOmFmdGVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLXByaW9yaXR5LTUpO1xyXG4gICAgfVxyXG4gICAgJi5zdGFydGluZy5lbmRpbmc6YWZ0ZXIge1xyXG4gICAgICBjb2xvcjogdmFyKC0tcHJpb3JpdHktNCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5jb250cm9sbGVyLWNhbGVuZGFycyB7XHJcbiAgI3F1ZXJ5X2Zvcm1fd2l0aF9idXR0b25zIC5ob2xkZXItZmlsdGVycyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICB9XHJcbiAgI3F1ZXJ5X2Zvcm1fd2l0aF9idXR0b25zLFxyXG4gICNxdWVyeV9mb3JtIHtcclxuICAgIC5idXR0b25ze1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICBwYWRkaW5nOiAwIDcwcHggMCAwO1xyXG4gICAgICBtYXgtd2lkdGg6IDU3MHB4O1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGxhYmVsW2Zvcj1cIm1vbnRoXCJdIHtcclxuICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICB9XHJcblxyXG4gICNtYWluID4gI2NvbnRlbnQgcC5jb250ZXh0dWFsIHtcclxuICAgIGZvbnQtc2l6ZTogMDtcclxuICAgIGxpbmUtaGVpZ2h0OjA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IDFweDtcclxuICAgIHJpZ2h0OiAwO1xyXG5cclxuICAgIGFbYWNjZXNza2V5PVwicFwiXSxcclxuICAgIGFbYWNjZXNza2V5PVwiblwiXSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHRleHQtaW5kZW50OiAtOTk5OTlweDtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDVweDtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHRleHQtaW5kZW50OiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDonJztcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjBweDtcclxuICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFdFQkZVTExTRVQuQ09NIC0tICovXHJcblxyXG4vKiBTVEFSVCBNRURJQSovXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNTAwcHgpIHtcclxuICAjbWFpbiB7XHJcbiAgICB0YWJsZS5jYWwge1xyXG4gICAgICBkaXYuaXNzdWUge1xyXG4gICAgICAgIHBhZGRpbmc6IDMwcHggMTBweCAxMHB4IDEwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICB0b3A6IDE1cHg7XHJcbiAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCkgIWltcG9ydGFudDtcclxuICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCkgIWltcG9ydGFudDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUtc21hbGwpO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGlwIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICB3aWR0aDogMjcwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAuaXNzdWUge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJiA+ICoge1xyXG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgI2NvbnRlbnQge1xyXG4gICAgLmxlZ2VuZC5jYWwge1xyXG4gICAgICBzcGFuIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAyNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgICBsaW5lLWhlaWdodDogQGZzMjA7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgd2lkdGg6IDIwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIGhlaWdodDogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG5cclxuICAjbWFpbiB7XHJcbiAgICB0YWJsZS5jYWwge1xyXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLWNhbGVuZGFycyB7XHJcbiAgICAjbWFpbiA+ICNjb250ZW50IHtcclxuICAgICAgcC5jb250ZXh0dWFsIHtcclxuICAgICAgICBmb250LXNpemU6IDBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuXHJcbiAgICAgICAgYVthY2Nlc3NrZXk9XCJwXCJdLFxyXG4gICAgICAgIGFbYWNjZXNza2V5PVwiblwiXSB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgLmxlZ2VuZC5jYWwge1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuXHJcbiAgICAgIHNwYW4ge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTBweCAwIDI1cHggIWltcG9ydGFudDtcclxuICAgICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZnMyMDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgbWFyZ2luOiA1cHggMCAwO1xyXG5cclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuXHJcbiAgI2NvbnRhY3RfbGlzdCB7XHJcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItY2FsZW5kYXJzIHtcclxuICAgICNtYWluID4gI2NvbnRlbnQge1xyXG4gICAgICBwLmNvbnRleHR1YWwge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGZvcm0ge1xyXG4gICAgICAgIC5idXR0b25zIHtcclxuICAgICAgICAgIC5zZWxlY3QyIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBmbGV4OiAxIDAgMDtcclxuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjcXVlcnlfZm9ybV93aXRoX2J1dHRvbnMge1xyXG4gICAgICAuYnV0dG9ucyB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5qY2Ytc2VsZWN0IHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICBtYXJnaW46IDVweCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDVweCAwIDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgIGZvcm1bYWN0aW9uKj1cImNhbGVuZGFyXCJdIHtcclxuICAgICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICB0YWJsZS5jYWwge1xyXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuXHJcbiAgICAgIHRkIHtcclxuICAgICAgICBtaW4td2lkdGg6IDIwMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2NvbnRlbnQge1xyXG4gICAgICAubGVnZW5kLmNhbCB7XHJcbiAgICAgICAgbWFyZ2luOiAtMXB4IC0xMHB4IDA7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcclxuICAgICAgICBib3JkZXItbGVmdDogMDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBBQ1RJVklUWSAqL1xyXG4uY29udHJvbGxlci1hY3Rpdml0aWVzIHtcclxuICAjbWFpbiB7XHJcbiAgICAjY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICYgPiBoMiB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgNDBweDtcclxuICAgICAgICAuYm9yZGVyYigpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBwLm90aGVyLWZvcm1hdHMge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuI21haW4gPiAjY29udGVudCAjbXktcGFnZSBkaXYjYWN0aXZpdHkge1xyXG4gIGRsIHtcclxuICAgIGR0IHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgfVxyXG4gICAgZGQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgfVxyXG5cclxuICAgIC50aW1lIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuI21haW4gPiAjY29udGVudCBkaXYjYWN0aXZpdHkge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OicnO1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIGNsZWFyOmJvdGg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDE4cHg7XHJcbiAgICBoZWlnaHQ6IDRweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICB9XHJcblxyXG4gIHAuc3VidGl0bGUge1xyXG4gICAgbWFyZ2luOiAtMTVweCAwIDE1cHggMTBweDtcclxuICB9XHJcblxyXG4gIC5ob2xkZXItYWN0aXZpdHkge1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgaDMsXHJcbiAgaDQge1xyXG4gICAgZm9udC1zaXplOiBAZnMxNjtcclxuICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHBhZGRpbmc6IDJweCAwIDE1cHggMzBweDtcclxuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGhlaWdodDogY2FsYyh+JzEwMCUgLSAzcHgnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjA7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICB3aWR0aDogMTRweDtcclxuICAgICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1tYWluLWNvbG9yLWFjdGl2ZXR5KTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94LWFjdGl2ZXR5KTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOjA7XHJcbiAgICAgIGxlZnQ6OHB4O1xyXG4gICAgICB3aWR0aDogMnB4O1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItYWN0aXZldHkpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICYub3Blbi1hY3Rpdml0eS1saW5rIHtcclxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBkbCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmc6IDAgMCAwIDMwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowO1xyXG4gICAgICBsZWZ0OjhweDtcclxuICAgICAgd2lkdGg6IDJweDtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICBkdCB7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcclxuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1vdGhlcik7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Oy1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMDstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMDsgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwO1xyXG4gICAgICBmb250LXdlaWdodDogNjAwO1xyXG5cclxuICAgICAgaW1nLmdyYXZhdGFyIHtcclxuICAgICAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGRkIHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBwYWRkaW5nOjAgMjBweCAyMHB4O1xyXG4gICAgICBtaW4taGVpZ2h0OiAxNXB4O1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLW90aGVyKTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Oy1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKTsgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgfVxyXG5cclxuICAgIC5kZXNjcmlwdGlvbiB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBmb250LXN0eWxlOiBub3JtYWwgIWltcG9ydGFudDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICB9XHJcblxyXG4gICAgLnRpbWUge1xyXG4gICAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcGFkZGluZzogNXB4IDE1cHg7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1vdGhlci1pbik7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgZm9udC1zaXplOiAwLjg1NzFyZW07XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAwLjg1NzFyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2plY3Qge1xyXG4gICAgICBtYXJnaW46IDAgNXB4IDAgMDtcclxuICAgIH1cclxuXHJcbiAgICAuYXV0aG9yIHtcclxuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbnAuc3VidGl0bGV7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsICFpbXBvcnRhbnQ7XHJcbiAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gIG1hcmdpbjogLTE1cHggMCAxNXB4IDA7XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1FRElBKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgcC5zdWJ0aXRsZSB7XHJcbiAgICBtYXJnaW46IDAgMCAxNXB4O1xyXG4gIH1cclxuICAuY29udHJvbGxlci1hY3Rpdml0aWVzIHtcclxuICAgICAjbWFpbiAjY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuXHJcbiAgICAgICYgPiBoMiB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMjBweCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluID4gI2NvbnRlbnQge1xyXG5cclxuICAgIGRpdiNhY3Rpdml0eSB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICB3aWR0aDogMTRweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgaDMsXHJcbiAgICAgIGg0e1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGxlZnQ6IDZweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIHRvcDogM3B4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgZGwge1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGxlZnQ6IDZweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGR0IHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLW90aGVyKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGRkIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLW90aGVyKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50aW1lIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLW90aGVyLWluKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAuY29udHJvbGxlci1hY3Rpdml0aWVzICNtYWluICNjb250ZW50IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAjbWFpbiA+ICNjb250ZW50IHtcclxuICAgIGRpdiNhY3Rpdml0eSB7XHJcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaDQsXHJcbiAgICAgIGgzIHtcclxuICAgICAgICAmLm9wZW4tYWN0aXZpdHktbGluayB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBkbCB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGR0IHtcclxuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAwO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctb3RoZXIpO1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXkpO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7LW1vei1ib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7Ym9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBtYXJnaW46IDJweCAwO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGltZy5ncmF2YXRhciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBkZCB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1vdGhlcik7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHggMTBweDtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuXHJcbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JleSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGltZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1vdGhlci1pbik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuaG9sZGVyLWFjdGl2aXR5IHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGgzLFxyXG4gICAgICBoNCB7XHJcbiAgICAgICAgbWFyZ2luOiAwIC0xMHB4IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAxMHB4O1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG5cclxuICAgICAgICAmLm9wZW4tYWN0aXZpdHktbGluayB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItYWN0aXZpdGllcy5hY3Rpb24tZGF0ZV9pbmRleCB7XHJcbiAgICAjbWFpbiB7XHJcbiAgICAgICNjb250ZW50IHtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI2FjdGl2aXR5X3Njb3BlX2Zvcm0ge1xyXG4gIC5zZWxlY3QyIHtcclxuICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbi10b3A6IDVweDtcclxuICB9XHJcbn1cclxuLyogRU5EIEFDVElWSVRZICovXHJcblxyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcbi8qIDIxLjAzLjIwMjIgKi9cclxuXHJcbi8qIFNUQVJUIEFMTCBWQVJJQUJMRVMgRk9SIFdPUksgTEVTUyAqL1xyXG4uYm9yYWQgKEByYWRpdXMpIHtcclxuICBib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1czogQHJhZGl1cztcclxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IEByYWRpdXM7XHJcbn1cclxuLmJvcmRlcmIoKXtcclxuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuLmFuaW0oQHdoYXQsIEB0aW1lKXtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IEB3aGF0IEB0aW1lIGVhc2UtaW4tb3V0O1xyXG4gIC1tb3otdHJhbnNpdGlvbjogQHdoYXQgQHRpbWUgZWFzZS1pbi1vdXQ7XHJcbiAgdHJhbnNpdGlvbjogQHdoYXQgQHRpbWUgZWFzZS1pbi1vdXQ7XHJcbn1cclxuLyogRU5EIEFMTCBWQVJJQUJMRVMgRk9SIFdPUksgTEVTUyAqL1xyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG5cclxuLyogU1RBUlQgQURNSU5JU1RSQVRJT04gKi9cclxuI21haW4gI2FkbWluLWluZGV4IHtcclxuICAjYWRtaW4tbWVudSB7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICB3aWR0aDoxMDAlO1xyXG5cclxuICAgIHVsIHtcclxuICAgICAgcGFkZGluZzowO1xyXG4gICAgICBtYXJnaW46MDtcclxuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG5cclxuICAgICAgbGkge1xyXG4gICAgICAgIHdpZHRoOjE2MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMjBweDtcclxuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDotMzAwcHg7XHJcbiAgICAgICAgICByaWdodDotMzAwcHg7XHJcbiAgICAgICAgICB3aWR0aDogNjAwcHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDYwMHB4O1xyXG4gICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hbGwtaG92ZXItYmcpO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhLFxyXG4gICAgICAgIGEuc2VsZWN0ZWQge1xyXG4gICAgICAgICAgei1pbmRleDoyO1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgcGFkZGluZzo4MnB4IDEwcHggMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgICAgICAgZm9udC1zaXplOiBAZnMxODtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWFkbWluLWNvbG9yLXRleHQpO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOjIwcHg7XHJcbiAgICAgICAgICAgIGxlZnQ6NTAlO1xyXG4gICAgICAgICAgICBtYXJnaW46MCAwIDAgLTI1cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOjUwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDo1MHB4O1xyXG4gICAgICAgICAgICB6LWluZGV4OjI7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjhweCBhdXRvO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb24tY29sb3IvZGVmYXVsdC1jb2xvci1pY29uLnN2Z1wiKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOjIwcHg7XHJcbiAgICAgICAgICAgIGxlZnQ6NTAlO1xyXG4gICAgICAgICAgICBtYXJnaW46MCAwIDAgLTI1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOjUwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDo1MHB4O1xyXG4gICAgICAgICAgICB6LWluZGV4OjI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFkbWluLWNvbG9yLWFmdGVyKTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xyXG4gICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpsaW5rLCAmOnZpc2l0ZWQge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYWRtaW4tY29sb3ItdGV4dC1ob3Zlcik7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYWRtaW4tY29sb3ItdGV4dC1ob3Zlcik7XHJcblxyXG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFkbWluLWNvbG9yLWFmdGVyLWhvdmVyKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgI2FkbWluLWluZGV4IHtcclxuICAgICNhZG1pbi1tZW51IHtcclxuICAgICAgdWwge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgIGEsXHJcbiAgICAgICAgICBhLnNlbGVjdGVke1xyXG4gICAgICAgICAgICBmb250LXNpemU6IEBmczE4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MDBweCkge1xyXG4gICNhZG1pbi1pbmRleCB7XHJcbiAgICAjYWRtaW4tbWVudSB7XHJcbiAgICAgIHVsIHtcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzUwJSAtIDIwcHgnKTtcclxuICAgICAgICAgIGEsXHJcbiAgICAgICAgICBhLnNlbGVjdGVke1xyXG4gICAgICAgICAgICBmb250LXNpemU6IEBmczE2O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgQURNSU5JU1RSQVRJT04gKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEFETUlOSVNUUkFUSU9OIElORk8gUEFHRSAqL1xyXG5cclxuLmFjdGlvbi1pbmZvICNtYWluIHtcclxuXHJcbiAgI2NvbnRlbnQge1xyXG5cclxuXHJcbiAgICBwcmUge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGJyIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAubGlzdCB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcblxyXG4gICAgICB0ciB7XHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4gICAgICAgICAgcGFkZGluZzogN3B4IDE0cHg7XHJcblxyXG4gICAgICAgICAgJi50aWNrIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJveCB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBBRE1JTklTVFJBVElPTiBJTkZPIFBBR0UgICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gV0VCRlVMTFNFVC5DT00gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEFETUlOSVNUUkFUSU9OIFBMQUdJTlMgUEFHRSAqL1xyXG5cclxuLmFjdGlvbi1wbHVnaW5zIHtcclxuICAjbWFpbiB7XHJcblxyXG4gICAgJiA+ICNjb250ZW50IHtcclxuXHJcbiAgICAgIC5hdXRvc2Nyb2xsIHtcclxuICAgICAgICBtYXJnaW46IDAgLTMwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgNjBweCcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0YWJsZS5wbHVnaW5zIHtcclxuICAgICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBib3JkZXI6IDA7XHJcblxyXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubmFtZSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGdmZjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTRweCAyMHB4O1xyXG5cclxuICAgICAgICAgICAgJi5jb25maWd1cmUge1xyXG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzcGFuLnVybCB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDAuODU3MTRyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgI2NoZWNrLWZvci11cGRhdGVzIHtcclxuICAgIHBhZGRpbmc6IDhweCAzMHB4O1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tYnV0dG9uLWZvbnQtd2VpZ2h0KTtcclxuICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1ob3Zlcik7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgQURNSU5JU1RSQVRJT04gUExBR0lOUyBQQUdFICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gV0VCRlVMTFNFVC5DT00gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEFETUlOSVNUUkFUSU9OIEZJTkFOQ0UgJiBQUk9EVUNUUyBQTEFHSU4gUEFHRSAqL1xyXG5cclxuI2NvbnRlbnQge1xyXG5cclxuICBzcGFuI3dhdGNoZXJzX2lucHV0cyB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgLmZsb2F0aW5nIHtcclxuICAgIG1hcmdpbjogMCA1cHggMCAwO1xyXG4gIH1cclxuXHJcbiAgI3NldHRpbmdzIHtcclxuXHJcbiAgICAuYm94IHtcclxuICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAudGFiLWNvbnRlbnQge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O2JveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIHBhZGRpbmc6MXB4IDFweCAxcHggMzBweDtcclxuICAgICAgbWFyZ2luOiAyMHB4IDAgMDtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcblxyXG4gICAgICBmaWVsZHNldC5ib3gge1xyXG4gICAgICAgIHBhZGRpbmc6IDUycHggMCAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgJltzdHlsZSo9XCJiYWNrZ3JvdW5kLWNvbG9yXCJdIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDUycHggMjBweCAyMHB4O1xyXG5cclxuICAgICAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsZWdlbmQge1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBBRE1JTklTVFJBVElPTiBGSU5BTkNFICYgUFJPRFVDVFMgUExBR0lOIFBBR0UgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBXRUJGVUxMU0VULkNPTSAtLSAqL1xyXG5cclxuLyogU1RBUlQgRklMVEVSIEZPUiBBRE1JTiBQQUdFICovXHJcblxyXG4jbWFpbiAjY29udGVudCB7XHJcbiAgLyouaG9sZGVyLWZpbHRlcnMgZmllbGRzZXQsKi9cclxuICBmaWVsZHNldC5maWx0ZXItYm94IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IDI1cHggMzBweCAxNXB4O1xyXG4gICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAmLm9wZW4taW4tYm94IHtcclxuICAgICAgLmljb24tZG93biB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlLWJnKTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYgPiBsZWdlbmQge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBwYWRkaW5nOiAwIDIwcHggMCA1MHB4O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuaWNvbi1kb3duIHtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6NXB4O1xyXG4gICAgICAgIGxlZnQ6MTBweDtcclxuICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLWljb24td2lkdGgpIHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiAgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6MDtcclxuICAgICAgICAgIGxlZnQ6MDtcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgaGVpZ2h0OnZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgd2lkdGg6dmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czp2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOnZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOnZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS1pY29uLXdpZHRoKSB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xyXG4gICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplKTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6MDtcclxuICAgICAgICAgIGxlZnQ6MDtcclxuICAgICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLm9wZW4taW4tYm94IHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pY29uLWRvd24ge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlLWJnKTtcclxuXHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgLmljb24tZG93biB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGZpZWxkc2V0IHtcclxuICAgICAgcGFkZGluZzogMzBweCAwIDA7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgYm9yZGVyOiAwO1xyXG5cclxuICAgICAgbGVnZW5kIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5vcGVuLWluLWJveCB+IC5vcGVuLWJveCB7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDIwMDBweDtcclxuICAgIH1cclxuXHJcbiAgICAub3Blbi1ib3gge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWF4LWhlaWdodDogMDtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgbWF4LWhlaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiAgbWF4LWhlaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiAgbWF4LWhlaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgbWF4LWhlaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgJiA+IGRpdiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggMCAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuYWRtaW4tZmlsdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBtYXJnaW46IDE1cHggMCAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcblxyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG5cclxuICAgICAgICAgICZbZm9yPVwiZHJhd19zZWxlY3RlZF9jb2x1bW5zXCJdIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0YWJsZSB7XHJcbiAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZm9ybSB7XHJcbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWhvdmVyKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmICsgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmcpO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiArIGEge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWJnKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1iZyk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXItYmcpO1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvci1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmctaG92ZXItYmcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmb3JtLmZpbHRlci1ib3gge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvcik7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGZpZWxkc2V0IHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBwYWRkaW5nOiAyNXB4IDMwcHggMTVweDtcclxuICAgICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcblxyXG4gICAgICAuaG9sZGVyLWZpbHRlciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5vcGVuLWluLWJveCB7XHJcbiAgICAgICAgLmljb24tZG93biB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweCAwIDUwcHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDEwMCU7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pY29uLWRvd24ge1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6NXB4O1xyXG4gICAgICAgICAgbGVmdDoxMHB4O1xyXG4gICAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0taWNvbi13aWR0aCkgdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgICB6LWluZGV4OiAxMDtcclxuXHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDowO1xyXG4gICAgICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6MDtcclxuICAgICAgICAgICAgbGVmdDowO1xyXG4gICAgICAgICAgICBoZWlnaHQ6dmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICAgIHdpZHRoOnZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAwO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYub3Blbi1pbi1ib3gge1xyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAuaWNvbi1kb3duIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlLWJnKTtcclxuXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIC5pY29uLWRvd24ge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAuaWNvbi1kb3duOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBmaWVsZHNldCB7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAwIDA7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICBsZWdlbmQge1xyXG4gICAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5vcGVuLWluLWJveCB+IC5vcGVuLWJveCB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMjAwMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAub3Blbi1ib3gge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgbWF4LWhlaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiAgbWF4LWhlaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogIG1heC1oZWlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgJiA+IGRpdiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMCAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFkbWluLWZpbHRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgbWFyZ2luOiAxNXB4IDAgMDtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBGSUxURVIgRk9SIEFETUlOIFBBR0UgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBXRUJGVUxMU0VULkNPTSAtLSAqL1xyXG5cclxuLyogU1RBUlQgUEVSTUlTU0lPTiAqL1xyXG5cclxuI2NvbnRlbnQgI3Blcm1pc3Npb25zIHtcclxuICBjb2xvcjogdmFyKC0tYmctYm94KTtcclxuXHJcbiAgLmljb24taW5mb3JtIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIGJyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICBhW29uY2xpY2sqPVwicGVybWlzc2lvbnNcIl0ge1xyXG4gICAgcGFkZGluZzogOHB4IDMwcHg7XHJcbiAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmcpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvcik7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcbiAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyKTtcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvci1ob3Zlcik7XHJcbiAgICB9XHJcblxyXG4gICAgJjpkaXNhYmxlZCB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWRpc2FibGVkKTtcclxuICAgICAgY3Vyc29yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1kaXNhYmxlZCk7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1kaXNhYmxlZCk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWRpc2FibGVkKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZmllbGRzZXQge1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiA0MHB4IDAgMTVweCA7XHJcbiAgICBtYXJnaW46IDAgMCAxNXB4O1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWRhcmstZ3JleSk7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgfVxyXG5cclxuICBsZWdlbmQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgfVxyXG5cclxuICAuaWNvbntcclxuICAgICYuaWNvbi1jaGVja2VkIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMCAtM3B4O1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI3Blcm1pc3Npb25zX2Zvcm0ge1xyXG5cclxuICBwIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuXHJcbiAgYVtvbmNsaWNrKj1cInBlcm1pc3Npb25zXCJdIHtcclxuICAgIHBhZGRpbmc6IDhweCAzMHB4O1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3IpO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgbWFyZ2luOiAwIDEwcHggMTVweCAwO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgICY6ZGlzYWJsZWQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmctZGlzYWJsZWQpO1xyXG4gICAgICBjdXJzb3I6IHZhcigtLWJ1dHRvbi1jb2xvci1kaXNhYmxlZCk7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmctZGlzYWJsZWQpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItZGlzYWJsZWQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYXV0b3Njcm9sbCB7XHJcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gIH1cclxufVxyXG5cclxuI3JvbGUtcGVybWlzc2lvbnMtdHJhY2tlcnMsXHJcbi5jb250cm9sbGVyLXRyYWNrZXJzLmFjdGlvbi1maWVsZHN7XHJcbiAgLmF1dG9zY3JvbGwge1xyXG4gICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBQRVJNSVNTSU9OICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gV0VCRlVMTFNFVC5DT00gLS0gKi9cclxuXHJcbi8qIFNUQVJUIFVTRVIgUEFHRSAqL1xyXG5cclxuI3VzZXJfZm9ybSB+IHAge1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuLyogRU5EIFVTRVIgUEFHRSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFdFQkZVTExTRVQuQ09NIC0tICovXHJcblxyXG4vKiBTVEFSVCBXT1JLRkxPV1MgKi9cclxuXHJcbiNjb250ZW50IHtcclxuICBmb3JtW2FjdGlvbio9XCJ3b3JrZmxvd3NcIl0ge1xyXG4gICAgJiA+IHAge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIGxhYmVsIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgIC5qY2Ytc2VsZWN0LFxyXG4gICAgICAuamNmLWxpc3QtYm94LFxyXG4gICAgICAuc2VsZWN0MiB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmICsgYSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50b2dnbGUtbXVsdGlzZWxlY3Qge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5saXN0LndvcmtmbG93cyB7XHJcbiAgICBtYXJnaW46IDIwcHggMDtcclxuXHJcbiAgICAmLmZpZWxkc19wZXJtaXNzaW9ucyB7XHJcblxyXG4gICAgICAuamNmLXNlbGVjdCxcclxuICAgICAgLnNlbGVjdDIge1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSAtIDQwcHgnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZmllbGRzZXQge1xyXG4gICAgLmxpc3Qud29ya2Zsb3dzIHtcclxuICAgICAgbW1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICN3b3JrZmxvd19mb3JtIHtcclxuICAgIGZpZWxkc2V0IHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBwYWRkaW5nOiAyNXB4IDMwcHggMTVweCAhaW1wb3J0YW50O1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDQwcHg7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuY29sbGFwc2VkIHtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGVnZW5ke1xyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuXHJcbiAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweCAwIDUwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogNXB4O1xyXG4gICAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgaGVpZ2h0OnZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgd2lkdGg6dmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0taWNvbi13aWR0aCkgdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiA1cHg7XHJcbiAgICAgICAgICBsZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgaGVpZ2h0OnZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgd2lkdGg6dmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICB6LWluZGV4OiAwO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBoZWlnaHQ6dmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICAgIHdpZHRoOnZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJiA+IGRpdiB7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAwIDAgIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW46IDE1cHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxudGFibGUudHJhbnNpdGlvbnMgdGQuZW5hYmxlZCB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tbm90aWNlLXN1Y2Nlc3NmdS1iZyk7XHJcbn1cclxuXHJcbi8qIEVORCBXT1JLRkxPV1MgKi9cclxuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gV0VCRlVMTFNFVC5DT00gLS0gKi9cclxuXHJcbi8qIFNUQVJUIENBU1RPTSBGSUVMRFMgKi9cclxuXHJcbiNjb250ZW50IHtcclxuICBmb3JtW2FjdGlvbj1cIi9jdXN0b21fZmllbGRzL25ld1wiXSB7XHJcbiAgICAuYm94IHtcclxuICAgICAgcCB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAjY3VzdG9tX2ZpZWxkX21pbl9sZW5ndGgge1xyXG4gICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gIH1cclxuXHJcbiAgI2N1c3RvbV9maWVsZF9wcm9qZWN0X2lkcyB7XHJcbiAgICBtYXJnaW46IDE1cHggMCAwO1xyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItY3VzdG9tX2ZpZWxkcyB7XHJcbiAgI2NvbnRlbnQge1xyXG4gICAgLm5vZGF0YSB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIENBU1RPTSBGSUVMRFMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBXRUJGVUxMU0VULkNPTSAtLSAqL1xyXG5cclxuLyogU1RBUlQgRU5VTUVSQVRJT04gKi9cclxuXHJcbi5jb250cm9sbGVyLWVudW1lcmF0aW9ucyB7XHJcbiAgdGFibGUubGlzdC5lbnVtZXJhdGlvbnMge1xyXG4gICAgdGFibGUtbGF5b3V0OiBhdXRvO1xyXG4gIH1cclxuICAjY29udGVudCB7XHJcbiAgICAmID4gcDpub3QoLm5vZGF0YSkge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICBtYXJnaW46IC00MHB4IDAgMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAubGlzdHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI21haW4ge1xyXG4gICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgaDMge1xyXG4gICAgICAgIG1hcmdpbjogMjBweCAwO1xyXG5cclxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBDQVNUT00gRU5VTUVSQVRJT04gKi9cclxuXHJcblxyXG4uY29udHJvbGxlci1hdXRoX3NvdXJjZXMge1xyXG4gICNjb250ZW50IHtcclxuICAgIC5saXN0IHtcclxuICAgICAgbWFyZ2luOiAwIDAgMzBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBXRUJGVUxMU0VULkNPTSAtLSAqL1xyXG5cclxuLyogU1RBUlQgU0VUVElOR1MgUEFHRSAqL1xyXG5cclxuI2NvbnRlbnQge1xyXG4gICNzZXR0aW5nc19hY3Rpdml0eV9kYXlzX2RlZmF1bHQsXHJcbiAgI3NldHRpbmdzX2F0dGFjaG1lbnRfbWF4X3NpemUsXHJcbiAgI3NldHRpbmdzX2ZpbGVfbWF4X3NpemVfZGlzcGxheWVkIHtcclxuICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICB9XHJcbn1cclxuXHJcbiN0YWItY29udGVudC1tb25leSB7XHJcbiAgcCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmV5KTtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgIHBhZGRpbmc6IDAgMCAwIDI5NXB4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1pbi1oZWlnaHQ6IDMwcHg7XHJcblxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIGxhYmVsIHtcclxuICAgICAgbWFyZ2luOiAwIDEwcHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIC0yOTVweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHdpZHRoOiAyODVweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXHJcbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxyXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG4gIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXHJcbiAgaW5wdXRbdHlwZT1cImRhdGVcIl0sXHJcbiAgdGV4dGFyZWF7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgcGFkZGluZzogNnB4IDEycHg7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMThweDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgIG1hcmdpbjowO1xyXG4gICAgbWluLXdpZHRoOiAxOTBweDtcclxuICAgIG91dGxpbmU6IDAgbm9uZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgZmxleDogMSAwIDA7XHJcblxyXG4gICAgJi5hdXRvY29tcGxldGUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24vYWxsL3NlYXJjaC5zdmcpO1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gICAgICBwYWRkaW5nOiA4cHggMzhweCA4cHggOHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiNjb250ZW50IHtcclxuICAjdGFiLWNvbnRlbnQtbWFpbF9oYW5kbGVyIHtcclxuICAgIGZvcm0ge1xyXG4gICAgICB0ZXh0YXJlYSxcclxuICAgICAgI3NldHRpbmdzX21haWxfaGFuZGxlcl9leGNsdWRlZF9maWxlbmFtZXMge1xyXG4gICAgICAgIGZsZXg6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8qIEVORCBTRVRUSU5HUyBQQUdFICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gV0VCRlVMTFNFVC5DT00gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEZJWCBcIiZuYnNwO1wiICovXHJcblxyXG4uY29udHJvbGxlci1hZG1pbi5hY3Rpb24tcHJvamVjdHMsXHJcbi5jb250cm9sbGVyLXVzZXJzLmFjdGlvbi1pbmRleCxcclxuLmNvbnRyb2xsZXItZ3JvdXBzLmFjdGlvbi1pbmRleCB7XHJcbiAgI21haW4ge1xyXG4gICAgI2NvbnRlbnQge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuaGFzLWZvb3RlciB7XHJcbiAgICAuYXV0b3Njcm9sbCB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDMwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyogRU5EIEZJWCBcIiZuYnNwO1wiICovXHJcblxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFdFQkZVTExTRVQuQ09NIC0tICovXHJcblxyXG50ci5pc3N1ZS5pZG50IHtcclxuICB0ZC5zdWJqZWN0IHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1mZmYpO1xyXG4gIH1cclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICB0ZC5zdWJqZWN0IHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWxsLWhvdmVyLWJnKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG50ci5wcm9qZWN0LmlkbnQge1xyXG4gIHRkLm5hbWUge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIHRkLm5hbWUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hbGwtaG92ZXItYmcpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4jY29udGVudCB7XHJcbiAgI3dvcmtmbG93X2Zvcm0ge1xyXG4gICAgZmllbGRzZXQge1xyXG4gICAgICBsZWdlbmQge1xyXG4gICAgICAgICYgKyAjYXNzaWduZWVfd29ya2Zsb3dzLFxyXG4gICAgICAgICYgICsgI2F1dGhvcl93b3JrZmxvd3Mge1xyXG4gICAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcblxyXG4gIC5jb250cm9sbGVyLXJvbGVzLFxyXG4gIC5jb250cm9sbGVyLWdyb3VwcyxcclxuICAuY29udHJvbGxlci1hZG1pbixcclxuICAuY29udHJvbGxlci11c2VycyB7XHJcbiAgICAjbWFpbiB7XHJcbiAgICAgIC5hZG1pbi1maWx0ZXIge1xyXG4gICAgICAgIC5pY29uLXJlbG9hZCB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgMHMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMHMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciAwcyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgMHMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMHMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgMHMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMHMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgMHMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMHMgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jbWFpbiAjY29udGVudCB7XHJcbiAgLmZpbHRlci1mb3JtIHtcclxuXHJcbiAgICAjcXVlcnlfZm9ybV93aXRoX2J1dHRvbnMsXHJcbiAgICAjcXVlcnlfZm9ybV9jb250ZW50LFxyXG4gICAgI2VxLWZpbHRlci1jb250cm9scyxcclxuICAgIC5ob2xkZXItZmlsdGVycyB7XHJcbiAgICAgIG92ZXJmbG93OiBpbmhlcml0O1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBtYXgtaGVpZ2h0OiAwO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IG1heC1oZWlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IG1heC1oZWlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuICAgICYub3Blbi1maWx0ZXJzIHtcclxuICAgICAgI3F1ZXJ5X2Zvcm1fd2l0aF9idXR0b25zLFxyXG4gICAgICAjcXVlcnlfZm9ybV9jb250ZW50LFxyXG4gICAgICAjZXEtZmlsdGVyLWNvbnRyb2xzLFxyXG4gICAgICAuaG9sZGVyLWZpbHRlcnMge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDIwMDBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogU1RBUlQgTVJESUEgKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItbXkuYWN0aW9uLWFjY291bnQge1xyXG4gICAgI21haW4ge1xyXG4gICAgICAjY29udGVudCB7XHJcbiAgICAgICAgJiA+IC5jb250ZXh0dWFsOm5vdCgubmV4dC1wcmV2LWxpbmtzKSB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246ICBsZWZ0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogIGxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgICAmLmhpZGRlbi1saW5rIHtcclxuICAgICAgICAgICAgLmljb246bm90KC5uZXctaWNvbikge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAuZHJkbiB7XHJcbiAgICAgICAgICAgIC5kcmRuLXRyaWdnZXIge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5kcmRuLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICAgICAgICAgLmRyZG4taXRlbXMge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBhLmljb24ge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgICAgICBtaW4td2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlcik7XHJcbiAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuXHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgIC1vLXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICN3cmFwcGVyIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDQ4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29udHJvbGxlci1yb2xlcyxcclxuICAuY29udHJvbGxlci1ncm91cHMsXHJcbiAgLmNvbnRyb2xsZXItYWRtaW4sXHJcbiAgLmNvbnRyb2xsZXItdXNlcnMge1xyXG4gICAgI21haW4ge1xyXG4gICAgICAuYWRtaW4tZmlsdGVyIHtcclxuICAgICAgICAuaWNvbi1yZWxvYWQge1xyXG4gICAgICAgICAgcGFkZGluZzogOHB4IDMwcHg7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmctYmcpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItYmcpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgIG91dGxpbmU6IDAgbm9uZTtcclxuXHJcbiAgICAgICAgICAmOmFmdGVyLFxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWhvdmVyLWJncykgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyLWJnKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItYWRtaW4ge1xyXG4gICAgJi5hY3Rpb24taW5kZXgge1xyXG4gICAgICAjYWRtaW4taW5kZXgge1xyXG4gICAgICAgICNhZG1pbi1tZW51IHtcclxuICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNxdWVyeV9mb3JtIHtcclxuICAgIC5ob2xkZXItZmlsdGVycyB7XHJcbiAgICAgIC5hZGQtZmlsdGVyIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgIC5qY2Ytc2VsZWN0LFxyXG4gICAgICAgIC5zZWxlY3QyIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgICNjb250ZW50IHtcclxuICAgICAgZm9ybS5maWx0ZXItYm94IHtcclxuICAgICAgICBmaWVsZHNldCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAyNXB4IDIwcHggMTVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgICAuaWNvbi1kb3due1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgZmllbGRzZXQuZmlsdGVyLWJveCB7XHJcbiAgICAgICAgcGFkZGluZzogMjVweCAyMHB4IDE1cHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGZpZWxkc2V0LmZpbHRlci1ib3gge1xyXG4gICAgICAgIC5vcGVuLWJveCB7XHJcbiAgICAgICAgICAuYWRtaW4tZmlsdGVyIHtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHghaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRhYmxlIHtcclxuICAgICAgICAgICAgICB0aCx0ZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICAgICAgICAgICYgPiBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgICAgICAmIH4gbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgLmpjZi1saXN0LWJveCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgLmpjZi1zZWxlY3QsXHJcbiAgICAgICAgICAgICAgLnNlbGVjdDIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xyXG4gICAgICAgICAgICAgICYgKyBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMTBweCAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuamNmLXNlbGVjdCxcclxuICAgICAgICAgICAgLnNlbGVjdDIsXHJcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcclxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwidGltZVwiXSB7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgLmpjZi1zZWxlY3QsXHJcbiAgICAgICAgICAgICAgLnNlbGVjdDIsXHJcbiAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXHJcbiAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cImRhdGVcIl0sXHJcbiAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxyXG4gICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0aW1lXCJdIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zZWxlY3QyIHtcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmFkZC1maWx0ZXIge1xyXG4gICAgICAgICAgICAgIC5qY2Ytc2VsZWN0LFxyXG4gICAgICAgICAgICAgIC5zZWxlY3QyLFxyXG4gICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG4gICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxyXG4gICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcclxuICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwidGltZVwiXSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRhYmxlIHtcclxuICAgICAgICAgICAgICB0ciB7XHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICB0ZHtcclxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgLmpjZi1zZWxlY3QsXHJcbiAgICAgICAgICAgICAgICAgICAgICAuc2VsZWN0MixcclxuICAgICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG4gICAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cImRhdGVcIl0sXHJcbiAgICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXHJcbiAgICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwidGltZVwiXSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJi5maWVsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuYWN0aW9uLXBsdWdpbnMge1xyXG4gICAgI21haW4ge1xyXG4gICAgICAmID4gI2NvbnRlbnQge1xyXG4gICAgICAgIC5hdXRvc2Nyb2xsIHtcclxuICAgICAgICAgIG1hcmdpbjogMCAtMTBweDtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyMHB4KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRhYmxlLnBsdWdpbnMge1xyXG4gICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuY29udHJvbGxlci1hZG1pbi5hY3Rpb24tcHJvamVjdHMsXHJcbiAgLmNvbnRyb2xsZXItdXNlcnMuYWN0aW9uLWluZGV4LFxyXG4gIC5jb250cm9sbGVyLWdyb3Vwcy5hY3Rpb24taW5kZXgge1xyXG4gICAgJi5oYXMtZm9vdGVyIHtcclxuICAgICAgLmF1dG9zY3JvbGwge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNjb250ZW50IHtcclxuICAgIGZvcm0uZmlsdGVyLWJveCB7XHJcbiAgICAgIGZpZWxkc2V0IHtcclxuICAgICAgICBwYWRkaW5nOiAyNXB4IDIwcHggMTVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgZm9ybSB7XHJcbiAgICAgIC5ib3gsXHJcbiAgICAgIC50YWJ1bGFyIHtcclxuICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgICYgKyBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmctaG92ZXIpO1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJiArIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG5cclxuICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRhYmxlIHtcclxuICAgICAgZm9ybSB7XHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgICAmICsgYSxcclxuICAgICAgICAgICYgKyBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmctaG92ZXIpO1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZmllbGRzZXQuZmlsdGVyLWJveCB7XHJcbiAgICAgIHBhZGRpbmc6IDI1cHggMjBweCAxNXB4O1xyXG5cclxuICAgICAgcCB7XHJcbiAgICAgICAgbWFyZ2luOiAxNXB4IDAgMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGZvcm1bYWN0aW9uKj1cIndvcmtmbG93c1wiXSB7XHJcbiAgICAgIHAge1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgfVxyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIC5qY2Ytc2VsZWN0LFxyXG4gICAgICAgIC5zZWxlY3QyIHtcclxuICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcblxyXG4gICAgICAgICYgfiBsYWJlbCB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICAgICAgcGFkZGluZzogMTBweCAwIDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI3dvcmtmbG93X2Zvcm0ge1xyXG4gICAgICBmaWVsZHNldCB7XHJcbiAgICAgICAgcGFkZGluZzogMjVweCAyMHB4IDE1cHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGVnZW5kIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAtNDBweCAtMjBweDtcclxuICAgICAgICAgIHBhZGRpbmc6IDEycHggMjBweCAxMnB4IDUwcHg7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyA0MHB4Jyk7XHJcblxyXG4gICAgICAgICAgJiArIGRpdiB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgbGVmdDogLTIwcHg7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgNDBweCcpO1xyXG4gICAgICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjc2V0dGluZ3Mge1xyXG4gICAgICAudGFiLWNvbnRlbnQge1xyXG4gICAgICAgIGZpZWxkc2V0LmJveCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiA0MHB4IDEwcHggMTVweDtcclxuXHJcbiAgICAgICAgICBsZWdlbmQge1xyXG4gICAgICAgICAgICB0b3A6IDE3cHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGZpZWxkc2V0LmJveFtzdHlsZSo9XCJiYWNrZ3JvdW5kLWNvbG9yXCJdIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDQwcHggMTBweCAxNXB4O1xyXG5cclxuICAgICAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgICAgIHRvcDogMTRweDtcclxuICAgICAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgI2NvbnRlbnQge1xyXG4gICAgZm9ybS5maWx0ZXItYm94IHtcclxuICAgICAgZmllbGRzZXQge1xyXG4gICAgICAgIC5vcGVuLWJveCB7XHJcbiAgICAgICAgICAuYWRtaW4tZmlsdGVyIHtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXHJcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XHJcbiAgICAgICAgICAgICAgJiArIGxhYmVsIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5qY2Ytc2VsZWN0IHtcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItcm9sZXMuYWN0aW9uLXBlcm1pc3Npb25zIHtcclxuICAgICNtYWluICNjb250ZW50IGZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDE4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGJvZHkge1xyXG4gICAgI2F1dGhfc291cmNlX2Zvcm0ge1xyXG4gICAgICAjYXV0aF9zb3VyY2VfcG9ydCB+IC5zZWxlY3QyIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICNtYWluIHtcclxuICAgICNhZG1pbi1pbmRleCB7XHJcbiAgICAgICNhZG1pbi1tZW51IHtcclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbWFpbiB7XHJcbiAgICAjY29udGVudCB7XHJcbiAgICAgIGZvcm0uZmlsdGVyLWJveCB7XHJcblxyXG4gICAgICAgIGZpZWxkc2V0IHtcclxuICAgICAgICAgIHBhZGRpbmc6IDI1cHggMTBweCAxNXB4O1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuZmlsdGVyLWZvcm0ge1xyXG4gICAgICAgIG92ZXJmbG93OiBpbmhlcml0O1xyXG5cclxuICAgICAgICAjcXVlcnlfZm9ybV93aXRoX2J1dHRvbnMsXHJcbiAgICAgICAgI3F1ZXJ5X2Zvcm1fY29udGVudCxcclxuICAgICAgICAjZXEtZmlsdGVyLWNvbnRyb2xzLFxyXG4gICAgICAgIC5ob2xkZXItZmlsdGVycyB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGZpZWxkc2V0LmZpbHRlci1ib3gge1xyXG4gICAgICAgIHBhZGRpbmc6IDI1cHggMTBweCAxNXB4O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHggIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG5cclxuICAgICAgICBmb3JtIHtcclxuICAgICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5vcGVuLWJveCB7XHJcbiAgICAgICAgICAuYWRtaW4tZmlsdGVyIHtcclxuICAgICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3Blcm1pc3Npb25zX2Zvcm0ge1xyXG4gICAgYVtvbmNsaWNrKj1cInBlcm1pc3Npb25zXCJdIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjY29udGVudCB7XHJcbiAgICBmaWVsZHNldC5maWx0ZXItYm94IHtcclxuICAgICAgcGFkZGluZzogMjVweCAxMHB4IDE1cHg7XHJcblxyXG4gICAgICBwIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5vcGVuLWJveCB7XHJcbiAgICAgICAgLmFkbWluLWZpbHRlciB7XHJcbiAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgIG1hcmdpbjogM3B4IDVweCAzcHggMDtcclxuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZm9ybSB7XHJcbiAgICAgIHAge1xyXG4gICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgICAgJiB+IC5pY29uLmljb24tcmVsb2FkIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjcGVybWlzc2lvbnMge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMDtcclxuXHJcbiAgICAgIGZpZWxkc2V0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZm9ybS5maWx0ZXItYm94IHtcclxuICAgICAgZmllbGRzZXQge1xyXG4gICAgICAgIHBhZGRpbmc6IDI1cHggMTBweCAxNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI3Blcm1pc3Npb25zIHtcclxuICAgICAgYVtvbmNsaWNrKj1cInBlcm1pc3Npb25zXCJdIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1iZyk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvci1iZyk7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyLWJnKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXItYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICN3b3JrZmxvd19mb3JtIHtcclxuICAgICAgZmllbGRzZXQge1xyXG4gICAgICAgIHBhZGRpbmc6IDI1cHggMTBweCAxNXB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAtNDBweCAtMTBweDtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuXHJcbiAgICAgICAgICAmICsgZGl2IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBmb3JtW2FjdGlvbio9XCJ3b3JrZmxvd3NcIl0ge1xyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgICBmbGV4OiAxIDAgYXV0bztcclxuXHJcbiAgICAgICAgLnNlbGVjdDIge1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNzZXR0aW5ncyB7XHJcbiAgICAgIC50YWItY29udGVudCB7XHJcbiAgICAgICAgZmllbGRzZXQuYm94IHtcclxuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTBweCAwO1xyXG5cclxuICAgICAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctbW9iaWxlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLXJvbGVzLFxyXG4gIC5jb250cm9sbGVyLWdyb3VwcyxcclxuICAuY29udHJvbGxlci1hZG1pbixcclxuICAuY29udHJvbGxlci11c2VycyB7XHJcbiAgICAjbWFpbiB7XHJcbiAgICAgIC5hZG1pbi1maWx0ZXIge1xyXG4gICAgICAgIC5pY29uLXJlbG9hZCB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuI2NvbnRlbnQge1xyXG4gIGZvcm0ge1xyXG4gICAgI3NldHRpbmdzX2J1bGtfZG93bmxvYWRfbWF4X3NpemUge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjdGFiLWNvbnRlbnQtaXNzdWVzLFxyXG4gICN0YWItY29udGVudC10aW1lbG9nIHtcclxuICAgIC5xdWVyeS1jb2x1bW5zIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgRE9DVU1FTlRTICovXHJcblxyXG4vKiBTVEFSVCBET0NVTUVOVFMgQkxPSyBPTiBNWSBQQUdFICovXHJcblxyXG4jd3JhcHBlciB7XHJcbiAgI2Jsb2NrLWRvY3VtZW50cyB7XHJcbiAgICBoNCB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgcGFkZGluZzogMTVweCAyMHB4IDEwcHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMTQ7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJvZHkpO1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMDtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Oy1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgfVxyXG5cclxuICAgICYgPiBwIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIHBhZGRpbmc6MDtcclxuICAgIH1cclxuXHJcbiAgICBlbSB7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgbWFyZ2luOiAwIDEwcHggMCAyMHB4O1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHBhZGRpbmc6IDVweCAxNXB4O1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgfVxyXG5cclxuICAgIC53aWtpIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBtYXJnaW46IDAgMCAxNXB4O1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogIG1heC1oZWlnaHQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgbWF4LWhlaWdodCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDI7XHJcblxyXG4gICAgICBwIHtcclxuICAgICAgICBtYXJnaW46IDE1cHggMCAwO1xyXG5cclxuICAgICAgICAmOm50aC1vZi10eXBlKDEpe1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4xNDI4cmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE0O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW46IDAgMCAxNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgRE9DVU1FTlRTIEJMT0sgT04gTVkgUEFHRSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgRE9DVU1FTlRTIFBBR0UqL1xyXG5cclxuLmNvbnRyb2xsZXItZG9jdW1lbnRzLmFjdGlvbi1pbmRleCB7XHJcbiAgI21haW4ge1xyXG4gICAgI2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nOiAwIDAgNTZweDtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgPiBoMiB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgfVxyXG5cclxuICAgICAgI2FkZC1kb2N1bWVudCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCAzMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDMwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAjbmV3X2RvY3VtZW50IHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgJiA+IHAge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGgzIHtcclxuICAgICAgICBtYXJnaW46IDIwcHggMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICBtYXJnaW46IDMwcHggMCAgMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmRvY3VtZW50cy1ib3gge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctb3RoZXIpO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46IDAgMCAxNXB4O1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJyZWFrLWluc2lkZTppbmhlcml0O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICBib3gtc2hhZG93IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiAgYm94LXNoYWRvdyB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiAgYm94LXNoYWRvdyB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICBib3gtc2hhZG93IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogIGJveC1zaGFkb3cgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIGg0IHtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE0M3JlbTtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBAZ2ZmO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMHB4IDUwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAtMTBweCAwIDA7XHJcbiAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXkpO1xyXG5cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5vcGVuLWRvY3VtZW50cyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZzowO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIG1hcmdpbjowIDE1cHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6MjtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBmb250LXNpemU6MHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OjBweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uLWJnKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyKTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJjphZnRlciB7Y29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO31cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYub3BlbiB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbl9jb2xvcl9hY3RpdmUpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfYWN0aXZlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAub3Blbi1ib3gge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgLmluLW9wZW4ge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JleSk7XHJcblxyXG4gICAgICAgICYgPiAqIHtcclxuICAgICAgICAgIG1hcmdpbjogMTVweCAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICBlbSB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1vdGhlci1pbik7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg1NzFyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgRE9DVU1FTlRTIFBBR0UqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgT05FIERPQ1VNRU5UIFBBR0UgKi9cclxuXHJcbi5jb250cm9sbGVyLWRvY3VtZW50cy5hY3Rpb24tc2hvdyB7XHJcbiAgI21haW4ge1xyXG4gICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgI2F0dGFjaF9maWxlc19saW5rIHtcclxuICAgICAgICBwYWRkaW5nOiA4cHggMzBweDtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnKTtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5hdHRhY2htZW50cyB7XHJcbiAgICAgICAgJiArIHAge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNjb250ZW50IGZvcm0jYWRkX2F0dGFjaG1lbnRfZm9ybSAuYm94IHAge1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuI2FkZF9hdHRhY2htZW50X2Zvcm0ge1xyXG4gIG1hcmdpbjogMjBweCAwIDA7XHJcbn1cclxuXHJcbiN3aWtpX2FkZF9hdHRhY2htZW50IHtcclxuICAjYWRkX2F0dGFjaG1lbnRfZm9ybSB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG59XHJcbi8qIEVORCBPTkUgRE9DVU1FTlQgUEFHRSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTUVESUEqL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAuY29udHJvbGxlci1kb2N1bWVudHN7XHJcbiAgICAmLmFjdGlvbi1pbmRleCB7XHJcbiAgICAgICNtYWluIHtcclxuICAgICAgICAjY29udGVudCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHggMjBweDtcclxuXHJcbiAgICAgICAgICAmID4gaDIge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgLTEwcHggMDtcclxuICAgICAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICNhZGQtZG9jdW1lbnQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMCAwO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAgICAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmRvY3VtZW50cy1ib3gge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcblxyXG4gICAgICAgIGg0IHtcclxuXHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAub3Blbi1kb2N1bWVudHN7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAub3Blbi1ib3gge1xyXG4gICAgICAgICAgLmluLW9wZW4ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcblxyXG4gICAgICAgICAgICAmID4gKiB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgIGVtIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5hY3Rpb24tc2hvdyB7XHJcbiAgICAgICNtYWluIHtcclxuICAgICAgICAjY29udGVudCB7XHJcblxyXG4gICAgICAgICAgJiA+IGgyIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIC0xMHB4IDIwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0ciB7XHJcbiAgICAgICAgICAuaWNvbixcclxuICAgICAgICAgIC5pY29uLW9ubHkge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAuY29udHJvbGxlci1kb2N1bWVudHN7XHJcblxyXG4gICAgJi5hY3Rpb24tc2hvdyB7XHJcbiAgICAgIC5hdHRhY2htZW50cyB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgdGFibGUge1xyXG4gICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JleSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICNtYWluID4gI2NvbnRlbnQge1xyXG4gICAgICAgICNhdHRhY2hfZmlsZXNfbGluayB7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmFjdGlvbi1pbmRleCB7XHJcbiAgICAgICNhZGQtZG9jdW1lbnQge1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGZzMTY7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuZG9jdW1lbnRzLWJveCB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCkgIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xyXG4gIC5jb250cm9sbGVyLWRvY3VtZW50cy5hY3Rpb24tc2hvd3tcclxuICAgIC5hdHRhY2htZW50cyB7XHJcbiAgICAgIHRhYmxlIHtcclxuXHJcbiAgICAgICAgdHIge1xyXG4gICAgICAgICAgJltpZCo9XCJhdHRhY2htZW50LVwiXSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgRE9DVU1FTlRTICovXHJcblxyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBGT1JVTVMgKi9cclxuXHJcbiNyZXBsaWVzIHtcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cclxuICAmIH4gcCB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItbWVzc2FnZXMge1xyXG4gICNjb250ZW50IHtcclxuICAgIG1hcmdpbjogMTVweCAwIDA7XHJcbiAgfVxyXG59XHJcbi5jb250cm9sbGVyLWJvYXJkcyB7XHJcbiAgLmxpc3QubWVzc2FnZXMge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICB9XHJcblxyXG4gICNtYWluID4gI2NvbnRlbnQgPiB7XHJcbiAgICAjYWRkLW1lc3NhZ2Uge1xyXG4gICAgICBvcmRlcjogMztcclxuICAgIH1cclxuICB9XHJcbn1cclxuI2NvbnRlbnQge1xyXG4gICNtZXNzYWdlX3N1YmplY3R7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gICNyZXBseSxcclxuICAjcmVwbHkgI21lc3NhZ2UtZm9ybSB7XHJcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBiciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmF0dGFjaG1lbnRzX2Zvcm0ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgICAgICBtYXJnaW46IDEwcHggMTBweCAwIDAgIWltcG9ydGFudDtcclxuICAgICAgICAmICsgbGFiZWwge1xyXG4gICAgICAgICAgbWFyZ2luOiAxMnB4IDEwcHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYVtvbmNsaWNrKj1cInJlcGx5XCJdIHtcclxuICAgIHBhZGRpbmc6IDhweCAzMHB4O1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgbWFyZ2luOjA7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXIpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuYm9keS5hdmF0YXJzLW9uICNyZXBsaWVzLFxyXG4jcmVwbGllcyB7XHJcblxyXG4gIC5yZWRtaW5lLWV2b2x1dGlvbi1hdHRhY2htZW50cyB7XHJcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xyXG4gICAgcGFkZGluZzogNXB4IDIwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgd2lkdGg6IGNhbGMoficxMDAlICsgNDBweCcpO1xyXG4gIH1cclxuXHJcbiAgLm1lc3NhZ2UucmVwbHksXHJcbiAgZGl2Lm1lc3NhZ2Uge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHggMTVweCAyMHB4O1xyXG4gICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Oy1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRleHR1YWwge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246ICBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246ICBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogIG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiAgb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICB9XHJcblxyXG4gIGg0IHtcclxuICAgIGltZy5ncmF2YXRhciB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI21haW4ge1xyXG4gICNyZXBsaWVzIHtcclxuICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgYSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmID4gI2NvbnRlbnQge1xyXG4gICAgI3JlcGxpZXMge1xyXG4gICAgICBoMy5pY29uIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTBweCA3MHB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0zMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgNjBweCcpO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMzBweCA1MCU7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vKiBFTkQgTkVXUyBGT1IgTUFZIFBBR0UgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1FRElBKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcblxyXG4gICNyZXBsaWVzIHtcclxuICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLW1lc3NhZ2VzIHtcclxuICAgICYuYWN0aW9uLXNob3cge1xyXG4gICAgICAjbWFpbiB7XHJcbiAgICAgICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG5cclxuICAgICAgICAgICYgPiBoMiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNjb250ZW50IHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICBib2R5LmF2YXRhcnMtb24gI3JlcGxpZXMsXHJcbiAgI3JlcGxpZXMge1xyXG4gICAgLm1lc3NhZ2UucmVwbHksXHJcbiAgICBkaXYubWVzc2FnZSB7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIGg0IGltZy5ncmF2YXRhciB7XHJcbiAgICAgIG1hcmdpbjogMCA1cHggNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI21haW4gPiAjY29udGVudCAjcmVwbGllcyBoMy5pY29uIHtcclxuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyMHB4KTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTBweCA0MHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTBweCA1MCU7XHJcbiAgfVxyXG59XHJcbi8qIEVORCBGT1JVTVMgKi9cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgSEVBREVSICovXHJcbiNoZWFkZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IC05OTk5OTlweDtcclxuICBsZWZ0OiAtOTk5OTk5cHg7XHJcbiAgcGFkZGluZzogNDBweCAzMHB4IDBweCAzMHB4O1xyXG4gIG1hcmdpbjogMDtcclxuICBtaW4taGVpZ2h0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleDogMSBhdXRvO1xyXG4gIHotaW5kZXg6IDE0O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctYm9keSk7XHJcbiAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dCwgbWFyZ2luIHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgLW1vei10cmFuc2l0aW9uOiByaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0LCBtYXJnaW4gdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAtbXMtdHJhbnNpdGlvbjogcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dCwgbWFyZ2luIHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgLW8tdHJhbnNpdGlvbjogcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dCwgbWFyZ2luIHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgdHJhbnNpdGlvbjogcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dCwgbWFyZ2luIHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gIC5qY2Ytc2VsZWN0IHtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgYSB7XHJcbiAgICBjb2xvcjogQGJnbWVudTtcclxuICB9XHJcblxyXG4gICNwcm9qZWN0LWp1bXAgLmRyZG4taXRlbXM+KiB7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgaDEge1xyXG4gICAgZmxleC1ncm93OiAxO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMCAwIDAgNjBweDtcclxuICAgIG9yZGVyOiAxO1xyXG4gICAgZm9udC1zaXplOiBAZnMxODtcclxuICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgLmJyZWFkY3J1bWJzIHtcclxuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIH1cclxuICAgICAgLnNlcGFyYXRvciB7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MDtcclxuICAgICAgbGVmdDowO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9yZWRtaW5lLWV2b2x1dGlvbi1zbWFsbC5zdmdcIikgMCA1MCUgbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmN1cnJlbnQtcHJvamVjdCB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4gIC8qIFNUQVJUIFFVSUNLIFNFQVJDSCAqL1xyXG4gICNxdWljay1zZWFyY2gge1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICBvcmRlcjogMjtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiA1cHg7XHJcbiAgICByaWdodDogNjVweDtcclxuXHJcbiAgICAucmVkbWluZWV2b2x1dGlvbi1vcGVuLXNlYXJjaC1saW5rIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IC05OTk5OTk5cHg7XHJcbiAgICAgIGxlZnQ6IC05OTk5OTk5cHg7XHJcbiAgICB9XHJcblxyXG4gICAgZm9ybSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgIH1cclxuXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICB9XHJcbiAgICAjcSB7XHJcbiAgICAgIHdpZHRoOiAxODhweDtcclxuICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCkgIWltcG9ydGFudDtcclxuICAgICAgZm9udC1mYW1pbHk6IEBnZmY7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICBwYWRkaW5nOiA5cHggMTBweDtcclxuICAgICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O2JveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgb3V0bGluZS1vZmZzZXQ6IDA7XHJcbiAgICAgIG91dGxpbmU6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmpjZi1zZWxlY3Qge1xyXG4gICAgICB3aWR0aDogMjAwcHg7XHJcbiAgICAgIG1hcmdpbjogMCAwIDAgMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAjcHJvamVjdC1qdW1wIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xyXG5cclxuICAgICAgLmRyZG4tdHJpZ2dlciB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IEBnZmY7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgICBwYWRkaW5nOiA5cHggMzBweCA5cHggMzVweDtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O2JveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOjA7XHJcbiAgICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogQGZvbnRJY29uO1xyXG4gICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplKTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgICAgcmlnaHQ6MDtcclxuICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IEBmb250SWNvbjtcclxuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRyZG4tY29udGVudCB7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICB6LWluZGV4OiAxMTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG5cclxuICAgICAgLnF1aWNrLXNlYXJjaCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCkgdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCkgMCAwO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCkgdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCkgMCAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpIHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpIDAgMDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOjA7XHJcbiAgICAgICAgICBsZWZ0OjFweDtcclxuICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogQGZvbnRJY29uO1xyXG4gICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplKTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6MDtcclxuICAgICAgICAgIHJpZ2h0OjA7XHJcbiAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiBAZm9udEljb247XHJcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmRyZG4taXRlbXMge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuYWxsLXByb2plY3RzIHtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czowIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCkgdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlucHV0LmF1dG9jb21wbGV0ZSB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IEBnZmY7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTVweCBhdXRvO1xyXG4gICAgICAgIHdpZHRoOjEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgb3V0bGluZTogMDtcclxuICAgICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgcGFkZGluZzogOXB4IDEwcHggOXB4IDM1cHggIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpIHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpIDAgMDtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpIHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpIDAgMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAwIDA7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItYm90dG9tIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYm9yZGVyLWJvdHRvbSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZHJkbi1pdGVtcyB7XHJcblxyXG4gICAgICBzdHJvbmcge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFsbC1ob3Zlci1iZyk7XHJcbiAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWFsbC1ob3Zlci1iZy1jb2xvcikgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmV4cGFuZGVkIHtcclxuICAgICAgLmRyZG4tY29udGVudCB7XHJcbiAgICAgICAgLnF1aWNrLXNlYXJjaCB7XHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjcHJvamVjdC1qdW1wLmV4cGFuZGVkIHtcclxuICAgICAgLmRyZG4tdHJpZ2dlciB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIEVORCBRVUlDSyBTRUFSQ0ggKi9cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItYWNjb3VudCB7XHJcbiAgICAjd3JhcHBlciB7XHJcbiAgICAgICNoZWFkZXIge1xyXG4gICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjd3JhcHBlcjMge1xyXG4gICAgICBwYWRkaW5nLXRvcDogNjBweDtcclxuICAgIH1cclxuXHJcbiAgICAjZm9vdGVyIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5mbHlvdXQtaXMtYWN0aXZlIHtcclxuICAgICN3cmFwcGVyLFxyXG4gICAgI3dyYXBwZXIgI2hlYWRlciB7XHJcbiAgICAgIHJpZ2h0OiAyNTBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICN3cmFwcGVyIHtcclxuICAgICNoZWFkZXIge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWluLWhlaWdodDogMDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgcGFkZGluZzogMTBweCA0MHB4IDEwcHggMTBweDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgei1pbmRleDogMTAwO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAgICN0b3AtbWVudSxcclxuICAgICAgI2hlYWRlciAjbWFpbi1tZW51IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBoMSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMzVweDtcclxuICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgbWluLWhlaWdodDogMzBweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICNxdWljay1zZWFyY2gsXHJcbiAgICAgIGgxIC5icmVhZGNydW1ic3tcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgICAgLm1vYmlsZS10b2dnbGUtYnV0dG9uIHtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6NTAlO1xyXG4gICAgICAgIHJpZ2h0OjBweDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IFZlcmRhbmEsIHNhbnMtc2VyaWY7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIGNvbnRlbnQ6ICdcXDIyNjEnO1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMzVweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgI3Byb2plY3QtanVtcC5kcmRuIHtcclxuICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICBwYWRkaW5nOiAwIDcwcHggMCAwO1xyXG5cclxuICAgICAgLmRyZG4tdHJpZ2dlciB7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDAgNXB4IDUwcHg7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDQ0cHg7XHJcbiAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG5cclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgICBsZWZ0OjQxcHg7XHJcbiAgICAgICAgICB3aWR0aDogMXB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICNwcm9qZWN0LWp1bXAuZXhwYW5kZWQge1xyXG4gICAgICAuZHJkbi10cmlnZ2VyIHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZseW91dC1tZW51X19zZWFyY2gge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICAgIHBhZGRpbmctdG9wOiA4cHg7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAgIH1cclxuICAgIC5mbHlvdXQtbWVudV9fc2VhcmNoIGlucHV0W3R5cGU9J3RleHQnXSB7XHJcbiAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgcGFkZGluZzogNXB4IDMwcHggNXB4IDVweDtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICB9XHJcbiAgICAuc2VhcmNoLW1hZ25pZmllci0tZmx5b3V0IHtcclxuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1FRElBKi9cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgI2hlYWRlciB7XHJcbiAgICBwYWRkaW5nOiAyMHB4IDIwcHg7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgI3dyYXBwZXIge1xyXG4gICAgI2hlYWRlciB7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDExNXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgSEVBREVSICovXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuLyogMjAuMDMuMjAyMiAqL1xyXG5cclxuLyogU1RBUlQgR0xPQkFMIElNQUdFUyAqL1xyXG5cclxuLyogRU5EIEdMT0JBTCBJTUFHRVMgKi9cclxuXHJcbi8qIFNUQVJUIElDT04gRk9OVFMgKi9cclxuYS5pY29uLFxyXG5hLmljb24tb25seSxcclxuYS5yaXNrcyB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAd2FybmluZztcclxuICB9XHJcbn1cclxuXHJcbmFbaHJlZio9XCJteS9hdmF0YXJcIl0ge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGljb24tYXZhdGFyO1xyXG4gIH1cclxufVxyXG5hW2hyZWYqPVwiZG1zZi93ZWJkYXZcIl0ge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGljb24tdGhpbi1kYXY7XHJcbiAgfVxyXG59XHJcbi5pY29uLWhlYXJ0W2RhdGEtbWV0aG9kPVwiZGVsZXRlXCJdIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBpY29uLXVuLWxpa2UgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLmljb24taGVhcnQtb2ZmLFxyXG4uaGVhcnQtY291bnQtbnVtYmVyIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBpY29uLWhlYXJ0O1xyXG4gIH1cclxufVxyXG4uZGlzcGxheS1tZW51LWxpbmtbaHJlZio9XCIva2FuYmFuXCJdIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBpY29uLWthbmJhbjtcclxuICB9XHJcbn1cclxuLmljb24uaWNvbi1oZWFydC1vZmYsXHJcbi5oZWFydHMge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGljb24tbGlrZTtcclxuICB9XHJcbn1cclxuLnNwcmludCB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAaWNvbi1zY3J1bTtcclxuICB9XHJcbn1cclxuLmljb24uaWNvbi1zcHJpbnQtYm9hcmQge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGljb24tc3ByaW50LWJvYXJkO1xyXG4gIH1cclxufVxyXG4uaWNvbi5pY29uLWJ1cm5kb3duIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBpY29uLXNwcmludC1ib2FyZDtcclxuICB9XHJcbn1cclxuLnByb2R1Y3QtYmFja2xvZyB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAaWNvbi10aGluLWJhY2tsb2c7XHJcbiAgfVxyXG59XHJcbi5pY29uLmljb24tbm9ybWFsLXNjcmVlbiB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAaWNvbi10aGluLWJhY2tsb2c7XHJcbiAgfVxyXG59XHJcbi5pY29uLmljb24tbm9ybWFsLXNjcmVlbiB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAaWNvbi13cmVjaztcclxuICB9XHJcbn1cclxuLmljb24uaWNvbi1tZXJnZSB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAaWNvbi1tZXJnZTtcclxuICB9XHJcbn1cclxuYVtocmVmKj1cImhpZ2hlc3RcIl0ge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGljb24tdXAtMjtcclxuICB9XHJcbn1cclxuYVtocmVmKj1cImhpZ2hlclwiXSB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAaWNvbi11cC0xO1xyXG4gIH1cclxufVxyXG4uc3BlY3RhdG9yIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBjaGFuZ2UtdXNlcjtcclxuICB9XHJcbn1cclxuYVtocmVmKj1cImxvd2VyXCJdIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBpY29uLWRvd24tMTtcclxuICB9XHJcbn1cclxuYVtocmVmKj1cImxvd2VzdFwiXSB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAaWNvbi1kb3duLTI7XHJcbiAgfVxyXG59XHJcbmFbb25jbGljayo9XCIkKCcjZXhpc3RpbmctYXR0YWNobWVudHMnKS50b2dnbGUoKVwiXSB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAZWRpdDtcclxuICB9XHJcbn1cclxuLmRpZmYge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGljb24tZGlmZjtcclxuICB9XHJcbn1cclxuXHJcbmEucmVkbWluZS1naXQtaG9zdGluZyxcclxuYS5pY29uLnJlZG1pbmUtZ2l0LWhvc3Rpbmcge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGljb24tZ2l0O1xyXG4gIH1cclxufVxyXG5hLmljb24ucmVsZWFzZS1sb2ctY29uZmlndXJhdGlvbnMsXHJcbmEuaWNvbi5yZWxlYXNlLWxvZy1xdWV1ZXMge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGljb24tbG9ncztcclxuICB9XHJcbn1cclxuYS5pY29uLXZpZXdfY3VzdG9taXplLWRpc2FibGUge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGZhdjtcclxuICB9XHJcbn1cclxuYS5pY29uLXZpZXdfY3VzdG9taXplLWVuYWJsZSB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAaWNvbi1mYXYtb2ZmO1xyXG4gIH1cclxufVxyXG5hLmljb24tcm9vdC1wYWdlIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBmYXY7XHJcbiAgfVxyXG59XHJcbmEuaWNvbi52YXVsdCB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAaWNvbi1wYXNzd2Q7XHJcbiAgfVxyXG59XHJcbmEuaWNvbi5pY29uLXZpZXdfY3VzdG9taXplIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBmYXY7XHJcbiAgfVxyXG59XHJcbmEuaWNvbi5wcmV2aWV3LXJlbGVhc2UtbG9nIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBmYXY7XHJcbiAgfVxyXG59XHJcbmEuaWNvbi5pY29uLXJlcGx5IHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBpY29uLWNvbW1lbnRzO1xyXG4gIH1cclxufVxyXG4uaWNvbi5pY29uLXN5bmMsXHJcbi5pY29uLXN5bmMge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGljb24tdGhpbi1yZWxvYWQ7XHJcbiAgfVxyXG59XHJcbmJvZHkgI3RvcC1tZW51PnVsPmxpPi5hcmNoaXZlZC1yZXBvc2l0b3JpZXMsXHJcbi5hcmNoaXZlZC1yZXBvc2l0b3JpZXMge1xyXG4gICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLWFyY2hpdmU7fVxyXG59XHJcbmJvZHkgI3RvcC1tZW51PnVsPmxpPi5yZWxlYXNlLWxvZ3MsXHJcbi5yZWxlYXNlLWxvZ3Mge1xyXG4gICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLWxvZ3M7fVxyXG59XHJcbi5pc3N1ZXZtIHtcclxuICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1FVk07fVxyXG59XHJcbiN0b3AtbWVudSBhW2hyZWYqPSdrbm93bGVkZ2ViYXNlJ10sXHJcbiNtYWluLW1lbnUgYVtocmVmKj0na25vd2xlZGdlYmFzZSddIHtcclxuICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1rbm93bGVkZ2ViYXNlO31cclxufVxyXG4uaWNvbi1zaWRlYmFyIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBkZWw7XHJcbiAgfVxyXG59XHJcblxyXG5hLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgJjphZnRlciB7Y29udGVudDogQG9wZW4tc2lkZWJhcjt9XHJcbn1cclxuYS5teS1uYW1lIHtcclxuICAmOmFmdGVyIHtjb250ZW50OiBAdXNlcjt9XHJcbn1cclxuLm9kdCB7XHJcbiAgJjphZnRlciB7Y29udGVudDogQGljb24tb2R0O31cclxufVxyXG4uaGFzLW1haW4tbWVudSAjaGVhZGVyICNtYWluLW1lbnUgdWwgYSxcclxuLmhhcy1tYWluLW1lbnUgI2hlYWRlciAjYWRtaW4tbWVudSB1bCBhLFxyXG5ib2R5ICN0b3AtbWVudSA+IHVsID4gbGkgPiBhLFxyXG5hLFxyXG5zcGFuLFxyXG4uaWNvbjpub3QoZHQpOm5vdCh0ZCksXHJcbmEuaWNvbi1vbmx5IHtcclxuICAmLmljb24tY29weS1saW5rLFxyXG4gICYuaWNvbi1pbnZvaWNlLXB1YmxpYy1saW5rLFxyXG4gICYuaWNvbi1wdWJsaWMtbGluayB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAZXh0ZXJuYWw7fVxyXG4gIH1cclxuXHJcbiAgJi50YWdzIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEB0YWdzO31cclxuICB9XHJcblxyXG4gICYuYXNzaWduLXRvLW1lIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBAdXNlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuaWNvbi15b3V0dWJlIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBAaWNvbi15b3V0dWJlO1xyXG4gICAgICBjb2xvcjogQHJlZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuaWNvbi1wcmludCB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogQGljb24tcHJpbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmljb24tYmFjayB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogQGljb24tYmFjaztcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuam91cm5hbC1saW5rIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBAbm90ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYudXMtbXktaXNzdWVzIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBAZmF2b3JpdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuaWNvbi1ib29rbWFyayxcclxuICAmLmJvb2ttYXJrIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBAYm9va21hcms7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmljb24tbGlzdCB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaXNzdWVzO31cclxuICB9XHJcblxyXG4gICYucmVwZWF0LXZhbHVlIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBhcnJvdy1kb3VibGUtdXA7fVxyXG4gIH1cclxuICAmLmFnaWxlLWJhY2tsb2csXHJcbiAgJi5kYXNoYm9hcmQge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHBsYW5uaW5nO31cclxuICB9XHJcbiAgJi5iYWNrbG9nIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBwbGFubmluZzt9XHJcbiAgfVxyXG4gICYucm9hZG1hcCB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi10aGluLXJvYWRtYXA7fVxyXG4gIH1cclxuICAmLmljb24td2FybmluZyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAd2FybmluZzt9XHJcbiAgfVxyXG4gICYuaG9tZSB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaG9tZTt9XHJcbiAgfVxyXG5cclxuICAmLmludm9pY2VzLFxyXG4gICYuaWNvbi1pbnZvaWNle1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGludm9pY2VzO31cclxuICB9XHJcblxyXG4gICYubXktcGFnZSB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAbXktcGFnZTt9XHJcbiAgfVxyXG5cclxuICAmLnByb2plY3RzIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBwcm9qZWN0czt9XHJcbiAgfVxyXG5cclxuICAmLmFkbWluaXN0cmF0aW9uIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBhZG1pbmlzdHJhdGlvbjt9XHJcbiAgfVxyXG5cclxuICAmLmhlbHAge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGhlbHA7fVxyXG4gIH1cclxuXHJcbiAgJi5teS1hY2NvdW50IHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBteS1hY2NvdW50O31cclxuICB9XHJcblxyXG4gICYudXNlciB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAdXNlcjt9XHJcbiAgfVxyXG5cclxuICAmLmxvZ291dCB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAbG9nb3V0O31cclxuICB9XHJcblxyXG4gICYucGVvcGxlIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBwZW9wbGU7fVxyXG4gIH1cclxuXHJcbiAgJi5xdWVzdGlvbnMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHF1ZXN0aW9uczt9XHJcbiAgfVxyXG5cclxuICAmLnJlc291cmNlcyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAcmVzb3VyY2VzO31cclxuICB9XHJcblxyXG4gICYuZmluYW5jZSB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAZmluYW5jZTt9XHJcbiAgfVxyXG5cclxuICAmLmxvZ2luIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBsb2dpbjt9XHJcbiAgfVxyXG5cclxuICAmLnJlZ2lzdGVyIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEByZWdpc3Rlcjt9XHJcbiAgfVxyXG5cclxuICAmLmNvbnRhY3RzIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLXRoaW4tY29udGFjdHM7fVxyXG4gIH1cclxuXHJcbiAgJi5kZWFscyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAZGVhbHM7fVxyXG4gIH1cclxuXHJcbiAgJi5wcm9kdWN0cyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAcHJvZHVjdHM7fVxyXG4gIH1cclxuXHJcbiAgJi5vcmRlcnMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQG9yZGVyczt9XHJcbiAgfVxyXG5cclxuICAmLmV4cGVuc2VzIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBleHBlbnNlczt9XHJcbiAgfVxyXG5cclxuICAmLm5ldy1vYmplY3Qge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IEBpY29uLXRoaW4tbmV3LW9iamVjdC0yO1xyXG4gICAgICB0ZXh0LWluZGVudDogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYucHJvamVjdHMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHByb2plY3RzO31cclxuICB9XHJcblxyXG4gICYub3ZlcnZpZXcge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tdGhpbi1vdmVydmlldzt9XHJcbiAgfVxyXG5cclxuICAmW2hyZWY9XCIvYWN0aXZpdHlcIl0sXHJcbiAgJi5hY3Rpdml0eSB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAYWN0aXZpdHk7fVxyXG4gIH1cclxuXHJcbiAgJltocmVmPVwiL2lzc3Vlc1wiXSxcclxuICAmLmlzc3VlcyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaXNzdWVzO31cclxuICB9XHJcblxyXG4gICZbaHJlZj1cIi90aW1lX2VudHJpZXNcIl0sXHJcbiAgJi50aW1lLWVudHJpZXMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tdGhpbi10aW1lLWVudHJpZXM7fVxyXG4gIH1cclxuXHJcbiAgJi5nYW50dCB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi10aGluLWdhbnR0O31cclxuICB9XHJcblxyXG4gICYuYWdpbGUge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGFnaWxlO31cclxuICB9XHJcblxyXG4gICYuaWNvbi1jYWxlbmRhcixcclxuICAmLmNhbGVuZGFyIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLXRoaW4tY2FsZW5kYXI7fVxyXG4gIH1cclxuXHJcbiAgJi5uZXdzIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLXRoaW4tbmV3czt9XHJcbiAgfVxyXG5cclxuICAmLmRvY3VtZW50cyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi10aGluLWRvY3VtZW50czt9XHJcbiAgfVxyXG5cclxuICAmLndpa2kge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tdGhpbi13aWtpO31cclxuICB9XHJcblxyXG4gICYuZmlsZXMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tdGhpbi1mYWlsczt9XHJcbiAgfVxyXG5cclxuICAmLnJlcG9zaXRvcnkge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHJlcG9zaXRvcnk7fVxyXG4gIH1cclxuXHJcbiAgJi5jb250YWN0cyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi10aGluLWNvbnRhY3RzO31cclxuICB9XHJcblxyXG4gICYuZGVhbHMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGRlYWxzO31cclxuICB9XHJcblxyXG4gICYuZXhwZW5zZXMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGV4cGVuc2VzO31cclxuICB9XHJcblxyXG4gICYuaWNvbi1pbnZvaWNlLWFkZC1jb250ZXh0IHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpbnZvaWNlczt9XHJcbiAgfVxyXG5cclxuICAmLm9wZXJhdGlvbnMsXHJcbiAgJi5maW5hbmNlIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBmaW5hbmNlO31cclxuICB9XHJcblxyXG4gICYucHJvZHVjdHMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHByb2R1Y3RzO31cclxuICB9XHJcblxyXG4gICYub3JkZXJzIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBjYXJ0O31cclxuICB9XHJcblxyXG4gICYuc2V0dGluZ3Mge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHNldHRpbmdzO31cclxuICB9XHJcblxyXG4gICYucmVzb3VyY2VzIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEByZXNvdXJjZXM7fVxyXG4gIH1cclxuXHJcbiAgJi5xdWVzdGlvbnMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHF1ZXN0aW9uczt9XHJcbiAgfVxyXG5cclxuICAmLmljb24tcm9sZXMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tcm9sZXM7fVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLWdyb3VwIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBncm91cDt9XHJcbiAgfVxyXG5cclxuICAmLmljb24taXNzdWUudHJhY2tlcnMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tdGhpbi10aW1lLWVudHJpZXM7fVxyXG4gIH1cclxuXHJcbiAgJi5pc3N1ZS1zdGF0dXNlcyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaXNzdWVzO31cclxuICB9XHJcblxyXG4gICYuaWNvbi13b3JrZmxvd3Mge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHdvcmtmbG93O31cclxuICB9XHJcblxyXG4gICYuZW51bWVyYXRpb25zIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBlbnVtZXJhdGlvbnM7fVxyXG4gIH1cclxuXHJcbiAgJi5jdXN0b20tZmllbGRzIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBjdXN0b20tZmllbGRzO31cclxuICB9XHJcblxyXG4gICYubGRhcC1hdXRoZW50aWNhdGlvbiB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAbGRhcC1hdXRoZW50aWNhdGlvbjt9XHJcbiAgfVxyXG5cclxuICAmLmhlbHBkZXNrIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBxdWVzdGlvbnM7fVxyXG4gIH1cclxuXHJcbiAgJi5tYWlsY2hpbXAtc2V0dGluZ3Mge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQG1haWxjaGltcDt9XHJcbiAgfVxyXG5cclxuICAmLmljb24tcGx1Z2lucyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAcGx1Z2luczt9XHJcbiAgfVxyXG5cclxuICAmLnJldm8taWNvbi1pbmZvLFxyXG4gICYuaWNvbi1oZWxwLFxyXG4gICYuaWNvbi10ZXN0IHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBoZWxwO31cclxuICB9XHJcblxyXG4gICYuaWNvbi1pbnZvaWNlLWFkZC1jb250ZXh0IHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpbnZvaWNlczt9XHJcbiAgfVxyXG5cclxuICAmLmljb24tdXNlciB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAdXNlcjt9XHJcbiAgfVxyXG5cclxuICAmLmJvYXJkcyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAYm9hcmRzO31cclxuICB9XHJcblxyXG4gIC8qIFNUQVJUIElDT05TIEZPUiBCVVRUT04gKi9cclxuXHJcbiAgJi5uZXctaXNzdWUge1xyXG4gICAgLy8mOmFmdGVyIHtjb250ZW50OiBAdXNlcjt9XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi10aGluLW5ldy1vYmplY3QtMjt9XHJcbiAgfVxyXG5cclxuICAmLmljb24tY2hlY2tlZCxcclxuICAmLmljb24tb2sge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGNoZWNrZWQ7fVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLXJlbG9hZCB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi10aGluLXJlbG9hZDt9XHJcbiAgfVxyXG5cclxuICAmLmljb24tc2F2ZSB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAc2F2ZTt9XHJcbiAgfVxyXG5cclxuICAmLm5ldy1pY29uLXNhdmUge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHNhdmUtbmV3O31cclxuICB9XHJcblxyXG4gICYubmV3LWljb24tY2xvc2Uge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGNsb3NlLW5ldzt9XHJcbiAgfVxyXG5cclxuICAmLnVpLXN0YXRlLWRlZmF1bHQge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGNsb3NlLW5ldzt9XHJcbiAgfVxyXG5cclxuICAmLmljb24tYWN0aW9ucyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAb3Blbi1zaWRlYmFyO31cclxuICB9XHJcblxyXG4gICYuaWNvbi1zZXR0aW5ncyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAYWRtaW5pc3RyYXRpb247fVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLXNvcnQtaGFuZGxlLFxyXG4gICYuc29ydC1oYW5kbGUgIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBzb3J0LWhhbmRsZTt9XHJcbiAgfVxyXG5cclxuICAmLmljb24tY2xvc2UgIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBkZWw7fVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLWxvY2ssXHJcbiAgJi5pY29uLWxvY2tlZCB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAbG9jazt9XHJcbiAgfVxyXG5cclxuICAmLmljb24tdW5sb2NrICB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAdW5sb2NrO31cclxuICB9XHJcblxyXG4gICYuaWNvbi1mdWxsc2NyZWVuIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBmdWxsc2NyZWVuO31cclxuICB9XHJcblxyXG4gICYuaWNvbi1lZGl0LFxyXG4gICYuaWNvbi1ub3Qtb2sgIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBlZGl0O31cclxuICB9XHJcblxyXG4gICYuaWNvbi10aW1lLWFkZCB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi10aGluLXRpbWUtZW50cmllczt9XHJcbiAgfVxyXG5cclxuICAmLmljb24tZmF2LW9mZiB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1mYXYtb2ZmO31cclxuICB9XHJcblxyXG4gICYuaWNvbi1mYXYsXHJcbiAgJltkYXRhLW1ldGhvZD1cImRlbGV0ZVwiXS5pY29uLWZhdntcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBmYXY7fVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLWNvcHksXHJcbiAgJi5pY29uLWR1cGxpY2F0ZSB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAY29weTt9XHJcbiAgfVxyXG5cclxuICAmLmljb24tZGVsIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBkZWw7fVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLXN0YXRzIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBzdGF0czt9XHJcbiAgfVxyXG5cclxuICAmLmF0b20ge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGF0b207fVxyXG4gIH1cclxuXHJcbiAgJi5jc3Yge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGNzdjt9XHJcbiAgfVxyXG5cclxuICAmLnBkZiB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAcGRmO31cclxuICB9XHJcblxyXG4gICYucG5nIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBwbmc7fVxyXG4gIH1cclxuXHJcbiAgJi5odG1sIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLWh0bWw7fVxyXG4gIH1cclxuXHJcbiAgJi5vZHQge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tb2R0O31cclxuICB9XHJcblxyXG4gICZbaHJlZio9XCIva2V5c1wiXSxcclxuICAmLmtleXMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24ta2V5Mjt9XHJcbiAgfVxyXG5cclxuICAmLmRtc2Yge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tdGhpbi1kbXNmO31cclxuICB9XHJcblxyXG4gICYudHh0IHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEB0eHQ7fVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLWFjdGlvbnMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQG9wZW4tc2lkZWJhcjt9XHJcbiAgfVxyXG5cclxuICAmLmljb24taGlzdG9yeSB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1oaXN0b3J5O31cclxuICB9XHJcblxyXG4gICYuaWNvbi1tb3ZlIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLW1vdmU7fVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLWFkZCxcclxuICAmLmljb24tYWRkLWRlYWwsXHJcbiAgJi5pY29uLWNvbXBhbnktY29udGFjdCxcclxuICAmLmljb24tYWRkLWJ1bGxldCB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi10aGluLW5ldy1vYmplY3QtMjt9XHJcbiAgfVxyXG5cclxuICAmLmljb24tem9vbS1pbixcclxuICAmLmljb24tbWFnbmlmaWVyIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEB6b29tLWluO31cclxuICB9XHJcblxyXG4gICYuaWNvbi16b29tLW91dCB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAem9vbS1vdXQ7fVxyXG4gIH1cclxuXHJcbiAgJi52Y2YsXHJcbiAgJltocmVmKj0nLnZjZidde1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHZjZjt9XHJcbiAgfVxyXG5cclxuICAmLnhscyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAeGxzO31cclxuICB9XHJcblxyXG4gICYuaWNvbi1pbXBvcnQge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24taW1wb3J0O31cclxuICB9XHJcblxyXG4gICYuaWNvbi11c2VyLFxyXG4gICYuaWNvbi1hbm9ueW1vdXN1c2VyLFxyXG4gICYuaWNvbi1wZXJzb24ge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHVzZXI7fVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLWxpbmsge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGV4dGVybmFsO31cclxuICB9XHJcblxyXG4gICYuaWNvbi1saW5rLWJyZWFrIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBsaW5rLWJyZWFrO31cclxuICB9XHJcblxyXG4gICYuaWNvbi1zdW1tYXJ5IHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBzdW1tYXJ5O31cclxuICB9XHJcblxyXG4gICYuZGVzYyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAYXJyb3ctZG93bjt9XHJcbiAgfVxyXG5cclxuICAmLmFzYyB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogQGFycm93LWRvd247XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLm9wZW4tc2lkZWJhci1saW5rIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBuZXh0O31cclxuICB9XHJcblxyXG4gICYuZXhwYW5kZXIge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQG9wZW4tZm9sZGVyO31cclxuICB9XHJcblxyXG4gICYuaWNvbi1yZWRtaW5lY3JtLW1vbmV5IHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBkb2xsYXI7fVxyXG4gIH1cclxuXHJcblxyXG4gICYuaWNvbi1zaGFyZWQge1xyXG4gICAgJjphZnRlciB7Y29udGVudDpAZXh0ZXJuYWw7fVxyXG4gIH1cclxuXHJcbiAgJi5kcml2ZSxcclxuICAmLmljb24tbGluay1hZGQge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tZHJpdmU7fVxyXG4gIH1cclxuICAmLmljb24tdXBsb2FkIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLXVwbG9hZDt9XHJcbiAgfVxyXG4gICYuaWNvbi1mb2xkZXIge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tZm9sZGVyO31cclxuICB9XHJcbiAgJi5pY29uLXByb2plY3Qge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHByb2plY3RzfVxyXG4gIH1cclxuICAmLmljb24tcmVmcmVzaCB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi10aGluLXJlbG9hZDt9XHJcbiAgfVxyXG4gICYuaWNvbi1yZWZyZXNoIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLXRoaW4tcmVsb2FkO31cclxuICB9XHJcbiAgJi5pY29uLWxpc3QtYWN0aW9uIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBlbnVtZXJhdGlvbnM7fVxyXG4gIH1cclxuICAvKiBFTkQgSUNPTlMgRk9SIEJVVFRPTiAqL1xyXG5cclxuICAmLmljb24tcGFnZSB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1wYWdlczt9XHJcbiAgfVxyXG4gICYuaWNvbi1zbmlwcGV0IHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLXNuaXBwZXRzO31cclxuICB9XHJcbiAgJi5pY29uLW1lbnUge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGV4dHJhLW1lbnU7fVxyXG4gIH1cclxuICAmLmljb24tbGF5b3V0IHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLW1lbnVzO31cclxuICB9XHJcbiAgJi5hZGRpdGlvbmFscyxcclxuICAmLmNtcyxcclxuICAmLmljb24tcmVkbWluZS1sYXlvdXQge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tYWN0aW9uLWxheW91dHM7fVxyXG4gIH1cclxuICAmLmljb24tcmVkbWluZS1ob29rcyB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAbm90ZTt9XHJcbiAgfVxyXG4gICYuaWNvbi1yZWRpcmVjdCB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1tb3ZlO31cclxuICB9XHJcbiAgJi5pY29uLXBhY2thZ2Uge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHByb2R1Y3RzO31cclxuICB9XHJcbiAgJi5pY29uLXZhcnMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tdmFyaWFibGVzO31cclxuICB9XHJcbiAgJi5pY29uLWZpbGUge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tdGhpbi1mYWlsczt9XHJcbiAgfVxyXG4gICYuaWNvbi1jYW5jZWwge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGNsb3NlLW5ldzt9XHJcbiAgfVxyXG4gICYuaWNvbi1tdWx0aXBsZSB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAY29weTt9XHJcbiAgfVxyXG4gICYuaWNvbi1tZXNzYWdlIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBjb21tZW50O31cclxuICB9XHJcblxyXG4gIC5pY29uLWZpbGUuYXBwbGljYXRpb24temlwIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLXppcDt9XHJcbiAgfVxyXG4gIC5pY29uLWZpbGUuYXBwbGljYXRpb24tZ3ppcCB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi16aXA7fVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLXJlcGx5LFxyXG4gIC5pY29uLXJlcGx5IHtcclxuICAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1jb21tZW50czt9XHJcbiAgfVxyXG4gICYuaWNvbi1kb2N1bWVudCxcclxuICAuaWNvbi1kb2N1bWVudCB7XHJcbiAgICAgJjphZnRlciB7Y29udGVudDogQGljb24tZG9jdW1lbnQ7fVxyXG4gIH1cclxuXHJcblxyXG4gICYuaWNvbi1hcnJvdy1yaWdodCxcclxuICAmLmljb24tdGVzdCxcclxuICAmLmljb24tc3RpY2t5IHtcclxuICAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1mb2xkZXI7fVxyXG4gIH1cclxuICAmLmljb24taXNzdWUtZWRpdCB7XHJcbiAgICAgJjphZnRlciB7Y29udGVudDogQGVkaXQ7fVxyXG4gIH1cclxuICAmLmljb24tY3VzdG9tLWZpZWxkcyB7XHJcbiAgICAgJjphZnRlciB7Y29udGVudDogQGljb24tZm9sZGVyO31cclxuICB9XHJcbiAgJi5pY29uLWlzc3VlLW5vdGUge1xyXG4gICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBjb21tZW50O31cclxuICB9XHJcbiAgJi5pY29uLWNoYW5nZXNldCB7XHJcbiAgICAgJjphZnRlciB7Y29udGVudDpAc2V0dGluZ3M7fVxyXG4gIH1cclxuICAmLmljb24tZmlsZS5pbWFnZS1naWYge1xyXG4gICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLWdpZjt9XHJcbiAgfVxyXG4gICYuaWNvbi1maWxlLmltYWdlLWpwZWcge1xyXG4gICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLWpwZzt9XHJcbiAgfVxyXG4gICYuaWNvbi1maWxlLmltYWdlLXBuZyB7XHJcbiAgICAgJjphZnRlciB7Y29udGVudDogQGljb24tcG5nO31cclxuICB9XHJcbiAgJi5pY29uLWZpbGUuaW1hZ2UtdGlmZiB7XHJcbiAgICAvKiY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLXRpO30qL1xyXG4gIH1cclxuICAmLmljb24tZmlsZS50ZXh0LWNzcyB7XHJcbiAgICAgJjphZnRlciB7Y29udGVudDogQGljb24tY3NzO31cclxuICB9XHJcbiAgJi5pY29uLWZpbGUudGV4dC14bWwge1xyXG4gICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLXhtbDt9XHJcbiAgfVxyXG4gICYuaWNvbi1maWxlLnRleHQteC1waHAge1xyXG4gICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLXBocDt9XHJcbiAgfVxyXG4gICYuaWNvbi1maWxlLnRleHQteC1ydWJ5IHtcclxuICAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1ydWJ5O31cclxuICB9XHJcbiAgJi5pY29uLWZpbGUuYXBwbGljYXRpb24tamF2YXNjcmlwdCB7XHJcbiAgICAgJjphZnRlciB7Y29udGVudDogQGljb24tanM7fVxyXG4gIH1cclxuICAmLmljb24tZmlsZS50ZXh0LXgtY3NoYXJwIHtcclxuICAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1jc2hhcnA7fVxyXG4gIH1cclxuICAmLmljb24tZmlsZS50ZXh0LXgtamF2YSB7XHJcbiAgICAgJjphZnRlciB7Y29udGVudDogQGljb24tamF2YTt9XHJcbiAgfVxyXG4gICYuaWNvbi1maWxlLnRleHQtcGxhaW4ge1xyXG4gICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLWZvbGRlcjt9XHJcbiAgfVxyXG4gICYuaWNvbi1maWxlLnRleHQteC1jIHtcclxuICAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1mb2xkZXI7fVxyXG4gIH1cclxufVxyXG4ub3BlbiAuaWNvbi5pY29uLWZvbGRlcixcclxuLm9wZW4gLmljb24tb25seS5pY29uLWZvbGRlciB7XHJcbiAgJjphZnRlciB7Y29udGVudDogQGljb24tZm9sZGVyO31cclxufVxyXG4jc2lkZWJhciB7XHJcbiAgLmljb24uaWNvbi1wYWNrYWdlIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBwcm9kdWN0czt9XHJcbiAgfVxyXG59XHJcblxyXG4uaWNvbi1waG9uZSxcclxuLmljb24tY2FsbCB7XHJcbiAgJjphZnRlciB7Y29udGVudDogQHBob25lO31cclxufVxyXG5cclxuLmljb24tZW1haWwge1xyXG4gICY6YWZ0ZXIge2NvbnRlbnQ6IEBlbWFpbDt9XHJcbn1cclxuXHJcbmFbaHJlZio9XCJxdWVzdGlvbnNfc2VjdGlvbnMvbmV3XCJdIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBpY29uLXRoaW4tbmV3LW9iamVjdC0yO1xyXG4gIH1cclxufVxyXG5cclxuI2NvbXBhbnlfcHJvZmlsZV9lZGl0IGEge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGVkaXQ7XHJcbiAgfVxyXG59XHJcblxyXG50ci5wcm9qZWN0LmlkbnQgdGQubmFtZSBzcGFuIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBhcnJvdy13aWRlLXJpZ2h0O1xyXG4gIH1cclxufVxyXG5cclxuLypTVEFSVCBDT05UQUNUIFBBR0UqL1xyXG4jY29tbWVudHMsXHJcbiNjb21wYW55X2NvbnRhY3RzIHtcclxuICAuY29udGV4dHVhbCBhIHtcclxuICAgICYuZGVsZXRlIHtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogQGVkaXQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmRlbGV0ZVtkYXRhLXJlbW90ZT1cInRydWVcIl0ge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBAZGVsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uaWNvbi1wZGYtY29udGV4dCB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAcGRmO1xyXG4gIH1cclxufVxyXG5cclxuLmF2YXRhci5leHRlbmRlZCAuZGVsZXRlIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBkZWw7XHJcbiAgfVxyXG59XHJcblxyXG4vKkVORCBDT05UQUNUIFBBR0UqL1xyXG5cclxuLypTVEFSVCBERUFMUyBQQUdFKi9cclxuXHJcbiNvcmRlcl9jb250YWN0X2lkX2FkZF9saW5rLFxyXG4jb3BlcmF0aW9uX2NvbnRhY3RfaWRfYWRkX2xpbmssXHJcbiNkZWFsX2NvbnRhY3RfaWRfYWRkX2xpbmssXHJcbiNleHBlbnNlX2NvbnRhY3RfaWRfYWRkX2xpbmssXHJcbiNpbnZvaWNlX2NvbnRhY3RfaWRfYWRkX2xpbmsge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGljb24tdGhpbi1uZXctb2JqZWN0LTI7XHJcbiAgfVxyXG5cclxuICBpbWcge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi8qRU5EIERFQUxTIFBBR0UqL1xyXG5cclxuLypTVEFSVCBQRU9QTEUgUEFHRSovXHJcblxyXG5maWVsZHNldC5jb2xsYXBzaWJsZT5sZWdlbmQge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQG9wZW4tZm9sZGVyO1xyXG4gIH1cclxufVxyXG5cclxuc2VsZWN0W3VybCo9XCJjb21wYW55XCJdIH4gLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGU6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IEBjb21wYW55O1xyXG59XHJcbnNlbGVjdFt1cmwqPVwiY29udGFjdHNcIl0gfiAuc2VsZWN0MiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZTphZnRlcixcclxuc2VsZWN0W3VybCo9XCJwZW9wbGVcIl0gfiAuc2VsZWN0MiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZTphZnRlciB7XHJcbiAgY29udGVudDogQGljb24tdGhpbi1jb250YWN0cztcclxufVxyXG5zZWxlY3RbdXJsKj1cImRlYWxzXCJdIH4gLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGU6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IEBkZWFscztcclxufVxyXG4jcmVzb3VyY2VfYm9va2luZ19pc3N1ZV9pZCB+IC5zZWxlY3QyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlOmFmdGVyLFxyXG4jdG9wLW1lbnUgI2lzc3VlX2JhZGdlX2NvbnRlbnRzPmRpdi5mb290ZXI+YTphZnRlciB7XHJcbiAgY29udGVudDogQGlzc3VlcztcclxufVxyXG5cclxuI3F1aWNrLXNlYXJjaCB7XHJcbiAgLmRyZG4tdHJpZ2dlcixcclxuICAucXVpY2stc2VhcmNoIHtcclxuICAgICY6YmVmb3JlIHtjb250ZW50OiBAYXJyb3ctZG93bjt9XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAc2VhcmNoO31cclxuICB9XHJcbn1cclxuLmljb24tZmFuY3lib3gge1xyXG4gICY6YWZ0ZXIge2NvbnRlbnQ6IEB6b29tLWluO31cclxufVxyXG5cclxuLypFTkQgUEVPUExFIFBBR0UqL1xyXG5cclxuLmNoZWNrYm94IGEge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGNoZWNrZWQ7XHJcbiAgfVxyXG59XHJcblxyXG4jbG9nZ2VkYXMgYSxcclxuLnJldm8tdXNlci1tZW51IC5pY29uLXVzZXIge1xyXG4gICY6YWZ0ZXIge2NvbnRlbnQ6IEB1c2VyO31cclxufVxyXG5cclxuI3RvcC1tZW51ICNpc3N1ZV9iYWRnZSAuaXNzdWVfYmFkZ2VfY29udGVudCBhIHtcclxuICAmOmFmdGVyIHtjb250ZW50OiBAbmV4dDt9XHJcbn1cclxuXHJcbiNjb250ZW50ICNjb21tZW50cyAuY29udGV4dHVhbCBhW2hyZWYqPVwib3JkZXJfY29tbWVudHNcIl0ge1xyXG4gICY6YWZ0ZXIge2NvbnRlbnQ6IEBkZWw7fVxyXG59XHJcblxyXG5kaXYuaXNzdWUub3JkZXIuZGV0YWlscyAjaW52b2ljZXMgLmljb24taW52b2ljZSArIGFbaHJlZio9XCJpbnZvaWNlc1wiXSB7XHJcbiAgJjphZnRlciB7Y29udGVudDogQHBkZjt9XHJcbn1cclxuXHJcbiNtYWluIGRpdi5pc3N1ZSAuZmEtcGVuY2lsIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBlZGl0O1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gIH1cclxufVxyXG5cclxuI3RvcC1tZW51IHtcclxuICBhW2hyZWYqPVwiaWJvLWhlbHAtYW5kLXN1cHBvcnRcIl0ge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tZ2xvc3Nhcnk7fVxyXG4gIH1cclxuICBhW2hyZWYqPVwiY3JlZGVudGlhbHNcIl17XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1jcmVkZW50aWFsczt9XHJcbiAgfVxyXG59XHJcblxyXG4uY29udHJvbGxlci13ZWxjb21lLmFjdGlvbi1pbmRleCB7XHJcbiAgLmNvbnRleHR1YWwgLmRyZG4taXRlbXMge1xyXG4gICAgYVtocmVmPVwiI1wiXSB7XHJcbiAgICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLXNwcmludC1rYW5iYW47fVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmRyZG4taXRlbXMge1xyXG4gIGFbaHJlZio9XCJlbmFibGVfc2lkZWJhcj0wXCJdIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLW5vLWludm9pY2VzO31cclxuICB9XHJcbiAgYVtocmVmKj1cImVuYWJsZV9zaWRlYmFyPTFcIl0ge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGNoZWNrZWQ7fVxyXG4gIH1cclxuICBhW2hyZWYqPVwiZW5hYmxlX3NpZGViYXJcIl0ge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tbm8taW52b2ljZXM7fVxyXG4gIH1cclxufVxyXG5cclxuLyogU1RBUlQgSUNPTlMgRk9SIFBBR0lOQVRJT04gKi9cclxuI21haW4gPiAjY29udGVudCBzcGFuLnBhZ2luYXRpb24gLnBhZ2VzIGxpIHtcclxuICAmLnByZXZpb3VzIHtcclxuICAgIGEsIHNwYW4ge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBAcHJldjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5uZXh0IHtcclxuICAgIGEsIHNwYW4ge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBAbmV4dDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgSUNPTlMgRk9SIFBBR0lOQVRJT04gKi9cclxuXHJcbi8qIFNUQVJUIElDT05TIEZPUiBDQUxFTkRBUiAqL1xyXG5cclxuYVthY2Nlc3NrZXk9XCJwXCJdIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBwcmV2O1xyXG4gIH1cclxufVxyXG5cclxuYVthY2Nlc3NrZXk9XCJuXCJdIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBuZXh0O1xyXG4gIH1cclxufVxyXG5cclxuLnN0YXJ0aW5nIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBhcnJvdy1yaWdodDtcclxuICB9XHJcbn1cclxuXHJcbi5lbmRpbmcge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGFycm93LWxlZnQ7XHJcbiAgfVxyXG59XHJcblxyXG4uc3RhcnRpbmcuZW5kaW5nIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBkaWFtb25kO1xyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIElDT05TIEZPUiBDQUxFTkRBUiAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFdFQkZVTExTRVQuQ09NIC0tICovXHJcblxyXG4vKiBTVEFSVCBEQVJLIElDT05TIEZPUiBCVVRUT04gKi9cclxuXHJcbiNjb250ZW50IC5jb250ZXh0dWFsLFxyXG4ub3RoZXItZm9ybWF0cyB7XHJcbiAgYSxcclxuICBzcGFue1xyXG4gICAgLyomOmFmdGVyIHtjb2xvcjogQGJnbWVudTt9XHJcblxyXG4gICAgJjpob3ZlcjphZnRlciB7Y29sb3I6IEBibHVlO30qL1xyXG5cclxuICAgICYuaWNvbi1sb2NrLFxyXG4gICAgJi5pY29uLWlzc3VlLWNsb3NlZCxcclxuICAgICYuaXNzdWUtY2xvc2VkIHtcclxuICAgICAgJjphZnRlciB7Y29udGVudDogQGxvY2s7fVxyXG5cclxuICAgICAgJltocmVmKj1cImFyY2hpdmVcIl0ge1xyXG4gICAgICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLWFyY2hpdmU7fVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pY29uLWFkZCB7XHJcbiAgICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLXRoaW4tbmV3LW9iamVjdC0yO31cclxuICAgIH1cclxuXHJcbiAgICAmLm9wZW4tZmlsdGVyIHtcclxuICAgICAgJjphZnRlciB7Y29udGVudDogQGZpbHRlcjt9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pY29uLXRpbWUtYWRkIHtcclxuICAgICAgJjphZnRlciB7Y29udGVudDogQGljb24tdGhpbi10aW1lLWVudHJpZXM7fVxyXG4gICAgfVxyXG5cclxuICAgICYuaWNvbi1zdGF0cyB7XHJcbiAgICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBzdGF0czt9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pY29uLWZhdi1vZmYge1xyXG4gICAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1mYXYtb2ZmO31cclxuICAgIH1cclxuXHJcbiAgICAmLmljb24tZmF2IHtcclxuICAgICAgJjphZnRlciB7Y29udGVudDogQGZhdjt9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pY29uLWRlbCB7XHJcbiAgICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBkZWw7fVxyXG4gICAgfVxyXG5cclxuICAgICYuaWNvbi1pbXBvcnQge1xyXG4gICAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1pbXBvcnQ7fVxyXG4gICAgfVxyXG5cclxuICAgICYuaWNvbi1lZGl0IHtcclxuICAgICAgJjphZnRlciB7Y29udGVudDogQGVkaXQ7fVxyXG4gICAgfVxyXG5cclxuICAgICYuaWNvbi1jb3B5IHtcclxuICAgICAgJjphZnRlciB7Y29udGVudDogQGNvcHk7fVxyXG4gICAgfVxyXG5cclxuICAgICYuaWNvbi1wcmV2aWV3IHtcclxuICAgICAgJjphZnRlciB7Y29udGVudDogQHJlcG9ydDt9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pbnZvaWNlcyxcclxuICAgICYuaWNvbi1pbnZvaWNlLWFkZC1jb250ZXh0IHtcclxuICAgICAgJjphZnRlciB7Y29udGVudDogQGludm9pY2VzO31cclxuICAgIH1cclxuXHJcbiAgICAmLmljb24tZW1haWwsXHJcbiAgICAmLmljb24tZW1haWwtYWRkIHtcclxuICAgICAgJjphZnRlciB7Y29udGVudDogQGVtYWlsO31cclxuICAgIH1cclxuXHJcbiAgICAmLmF0b20ge1xyXG4gICAgICAmOmFmdGVyIHtjb250ZW50OiBAYXRvbTt9XHJcbiAgICB9XHJcblxyXG4gICAgJi5jc3Yge1xyXG4gICAgICAmOmFmdGVyIHtjb250ZW50OiBAY3N2O31cclxuICAgIH1cclxuXHJcbiAgICAmLnBkZiB7XHJcbiAgICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBwZGY7fVxyXG4gICAgfVxyXG5cclxuICAgICYucG5nIHtcclxuICAgICAgJjphZnRlciB7Y29udGVudDogQHBuZzt9XHJcbiAgICB9XHJcblxyXG4gICAgJi5odG1sIHtcclxuICAgICAgJjphZnRlciB7Y29udGVudDogQGNzdjt9XHJcbiAgICB9XHJcblxyXG4gICAgJi52Y2Yge1xyXG4gICAgICAmOmFmdGVyIHtjb250ZW50OiBAdmNmO31cclxuICAgIH1cclxuXHJcbiAgICAmLnhscyB7XHJcbiAgICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEB4bHM7fVxyXG4gICAgfVxyXG5cclxuICAgICYuaWNvbi1wYXNzd2Qge1xyXG4gICAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1wYXNzd2Q7fVxyXG4gICAgfVxyXG4gICAgJi5pY29uLWVycm9yIHtcclxuICAgICAgJjphZnRlciB7Y29udGVudDogQHdhcm5pbmc7fVxyXG4gICAgfVxyXG4gICAgJi5pY29uLXJlcG9ydCB7XHJcbiAgICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEByZXBvcnQ7fVxyXG4gICAgfVxyXG4gICAgJi5pY29uLXNlcnZlci1hdXRoZW50aWNhdGlvbiB7XHJcbiAgICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLWtleTI7fVxyXG4gICAgfVxyXG4gICAgJi5pY29uLW1hZ25pZmllciB7XHJcbiAgICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBzZWFyY2g7fVxyXG4gICAgfVxyXG4gICAgJi5pY29uLWNsZWFyLXF1ZXJ5IHtcclxuICAgICAgJjphZnRlciB7Y29udGVudDogQGNsb3NlLW5ldzt9XHJcbiAgICB9XHJcbiAgICAmLmljb24tYXR0YWNobWVudCB7XHJcbiAgICAgICY6YWZ0ZXIge2NvbnRlbnQ6ICcnO31cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vREFSSyBJQ09OIEJBQ0tHUk9VTkQhISFcclxuLmJveCB7XHJcbiAgLmljb24ge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbG9yOiBAYmdtZW51O1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbG9yOiBAYmx1ZTtcclxuXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5pY29uLWdyb3VwLFxyXG4gIC5pY29uLXRpbWUsXHJcbiAgLmljb24taXNzdWUsXHJcbiAgLmljb24tbmV3cyB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4uYm94IC5pY29uLXByb2plY3RzIHtcclxuIC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi9hbGwvZGFyay9wcm9qZWN0cy5zdmcpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIEVORCBEQVJLIElDT05TIEZPUiBCVVRUT04gKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBXRUJGVUxMU0VULkNPTSAtLSAqL1xyXG5cclxuLyogU1RBUlQgUkVETUlORVVQIElDT05TICovXHJcbmEsXHJcbnNwYW4sXHJcbmEuaWNvbi1vbmx5IHtcclxuICAmLmljb24tZW1haWwge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGVtYWlsO31cclxuICB9XHJcblxyXG4gICYuaWNvbi1wZGYge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHBkZjt9XHJcbiAgfVxyXG5cclxuICAmLmljb24tYWRkLXBheW1lbnQge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGFkZC1wYXltZW50O31cclxuICB9XHJcblxyXG4gICYuYWRkLWNvbW1lbnQsXHJcbiAgJi5pY29uLWNvbW1lbnQge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGNvbW1lbnQ7fVxyXG4gIH1cclxuXHJcbiAgJi5ib2FyZHMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGJvYXJkczt9XHJcbiAgfVxyXG5cclxuICAmLmljb24tb3JkZXItYWRkIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBjYXJ0O31cclxuICB9XHJcblxyXG4gICYuaWNvbi1tZWV0aW5nIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBtZWV0aW5nO31cclxuICB9XHJcbn1cclxuXHJcbiNzd2l0Y2hfbGluayB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAaWNvbi1mYXYtb2ZmO1xyXG4gIH1cclxufVxyXG4jY29udGFjdF9wcm9qZWN0cyAuY29udGV4dHVhbCBhLFxyXG4jY29udGFjdF9pc3N1ZXMgLmNvbnRleHR1YWwgYSB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAaWNvbi10aGluLW5ldy1vYmplY3QtMjtcclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBSRURNSU5FVVAgSUNPTlMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBXRUJGVUxMU0VULkNPTSAtLSAqL1xyXG5cclxuLyogIFNUQVJUIFBST0pFQ1QgUEFHRSAqL1xyXG5hLFxyXG5zcGFuLFxyXG5hLmljb24tb25seXtcclxuICAmLm9wZW4td2lraSB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAaGVscDt9XHJcbiAgfVxyXG5cclxuICAmLm9wZW4tcHJvamVjdHMsXHJcbiAgJi5saW5rLXdpa2ksXHJcbiAgJi5vcGVuLWRvY3VtZW50cyxcclxuICAmLm9wZW4tbmV3cy1saW5rIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBvcGVuLWZvbGRlcjt9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuI3Byb2plY3RzLWluZGV4IHtcclxuICAucHJvamVjdCB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogQGZhdm9yaXQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uaWNvbi11c2VyLm15LXByb2plY3Qge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGZhdm9yaXQgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5zcGFuLmljb24tZmF2IHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBmYXZvcml0O1xyXG4gIH1cclxuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuLyogIEVORCBQUk9KRUNUIFBBR0UgKi9cclxuXHJcbi8qICBTVEFSVCBJU1NVRVMgUEFHRSAqL1xyXG5hLFxyXG5zcGFuLFxyXG5hLmljb24tb25seSB7XHJcbiAgJi5pY29uLWRvd25sb2FkIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBkb3dubG9hZDt9XHJcbiAgfVxyXG5cclxuICAmLm9wZW4tZmlsdGVyIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBmaWx0ZXI7fVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLWRvd24gIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBvcGVuLWZvbGRlcjt9XHJcbiAgfVxyXG5cclxuICAmLmljb24taGVscGRlc2stcmVwbHkgIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBxdWVzdGlvbnM7fVxyXG4gIH1cclxuXHJcbiAgJi5idG4tcHJpbWFyeS5jbG9zZSB7XHJcbiAgICAmOmFmdGVyIHtjb250ZW50OiBAY2xvc2UtbmV3LXNtYWxsO31cclxuICB9XHJcbn1cclxuLyogIEVORCBJU1NVRVMgUEFHRSAqL1xyXG5cclxuLyogIFNUQVJUIFNJREJCQVIgKi9cclxuI3NpZGViYXIge1xyXG4gICN3YXRjaGVycyxcclxuICAjaXNzdWVfY29udGFjdHMsXHJcbiAgI2N1c3RvbWVyX3Byb2ZpbGUge1xyXG4gICAgLmNvbnRleHR1YWwge1xyXG4gICAgICBhIHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbnRlbnQ6IEBpY29uLXRoaW4tbmV3LW9iamVjdC0yO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmRlbGV0ZSB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogQGRlbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNwYW4uaWNvbi1jb21wYW55LWNvbnRhY3Qge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tdGhpbi1jb250YWN0czt9XHJcbiAgfVxyXG5cclxuICBzcGFuLmljb24taGVscGRlc2sge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHF1ZXN0aW9uczt9XHJcbiAgfVxyXG5cclxuICBhW2hyZWYqPVwicGlwZWxpbmVcIl0ge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHN0YXRzO31cclxuICB9XHJcblxyXG4gIGFbaHJlZio9J2FjY291bnRzL25ldyddIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLXRoaW4tbmV3LW9iamVjdC0yO31cclxuICB9XHJcbn1cclxuLyogIEVORCBTSURCQkFSICovXHJcblxyXG4vKiAgU1RBUlQgQ09OVEVOVCBNRU5VICovXHJcbiNjb250ZXh0LW1lbnUgbGkgYS5zdWJtZW51IHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBhcnJvdy13aWRlLXJpZ2h0O1xyXG4gIH1cclxufVxyXG4jY29udGV4dC1tZW51IGxpIGFbaHJlZio9XCJpc3N1ZXNfcmVwb3J0X3RlbXBsYXRlc1wiXSB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAcmVwb3J0O1xyXG4gIH1cclxufVxyXG4vKiAgRU5EIENPTlRFTlQgTUVOVSAqL1xyXG5cclxuLyogIFNUQVJUIEZJTFRFUiAqL1xyXG4udG9nZ2xlLW11bHRpc2VsZWN0IHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBhcnJvdy1ib3R0b207XHJcbiAgfVxyXG59XHJcbi5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXI6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IEBjbG9zZS1uZXc7XHJcbn1cclxuXHJcbmRpdi5mbGFzaCB7XHJcbiAgJi5ub3RpY2Uge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IEBjbG9zZS1uZXc7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbmZvcm0gPiAjZXJyb3JFeHBsYW5hdGlvbiB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAY2xvc2UtbmV3O1xyXG4gIH1cclxufVxyXG5cclxuLyogIEVORCBGSUxURVIgKi9cclxuXHJcbi5hZ2lsZS1ib2FyZCAuaWNvbi1jb21tZW50IHtcclxuXHJcbiAgJjpiZWZvcmUge1xyXG4gICAgY29udGVudDogQGNvbW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4uYWRkX2F0dGFjaG1lbnQge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDpAY2xpcDtcclxuICB9XHJcbn1cclxuXHJcbmRpdi53aWtpIC5leHRlcm5hbCB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OkBleHRlcm5hbDtcclxuICB9XHJcbn1cclxuXHJcbiNjb250ZXh0LW1lbnUgLmljb24tYWRkLXRhZ3MsXHJcbiNzaWRlYmFyIC50YWdfbGlzdCxcclxuI21haW4gPiAjY29udGVudCAudGFnX2xpc3QsXHJcbiNwcm9qZWN0c19saXN0IC5wcm9qZWN0X2NhcmQgLnRhZ3N7XHJcbiAgJjphZnRlciB7Y29udGVudDogQHRhZ3M7fVxyXG59XHJcblxyXG4vKiBFTkQgSUNPTiBGT05UUyAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFdFQkZVTExTRVQuQ09NIC0tICovXHJcblxyXG4vKiBTVEFSVCBJQ09OUyBUSVRJTEUgKi9cclxuaDMsXHJcbnN0cm9uZyxcclxuc3BhbiB7XHJcbiAgJi5pY29uLWlzc3VlIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpc3N1ZXM7fVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLXRpbWUge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGljb24tdGhpbi10aW1lLWVudHJpZXM7fVxyXG4gIH1cclxuXHJcbiAgJi5pY29uLWdyb3VwLFxyXG4gICYuaWNvbi1ncm91cGFub255bW91cyxcclxuICAmLmljb24tZ3JvdXBub25tZW1iZXIge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQGdyb3VwO31cclxuICB9XHJcblxyXG4gICYuaWNvbi1uZXdzIHtcclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBpY29uLXRoaW4tbmV3czt9XHJcbiAgfVxyXG5cclxuICAmLmljb24tcHJvamVjdHMge1xyXG4gICAgJjphZnRlciB7Y29udGVudDogQHByb2plY3RzO31cclxuICB9XHJcbn1cclxuXHJcbi5pY29uLmljb24tcGFja2FnZSB7XHJcbiAgJjphZnRlciB7Y29udGVudDogQGFycm93LXdpZGUtcmlnaHQ7fVxyXG59XHJcbi8qIEVORCBJQ09OUyBUSVRJTEUgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBXRUJGVUxMU0VULkNPTSAtLSAqL1xyXG5cclxuLyogU1RBUlQgUkVETklORVVQIFBMQUdJTlMgKi9cclxuXHJcbiNlZGl0X2NvbnRlbnQgYSB7XHJcbiAgJjphZnRlciB7Y29udGVudDogQGVkaXQ7fVxyXG59XHJcblxyXG4vKiBFTkQgUkVETklORVVQIFBMQUdJTlMgKi9cclxuXHJcblxyXG4uY29udHJvbGxlci1pc3N1ZXMuYWN0aW9uLXNob3cgI2lzc3VlX3RyZWUgLmNvbnRleHR1YWwgYSxcclxuLmNvbnRyb2xsZXItaXNzdWVzLmFjdGlvbi1zaG93ICNyZWxhdGlvbnMgLmNvbnRleHR1YWwgYSB7XHJcbiAgJjphZnRlciB7Y29udGVudDogQGljb24tdGhpbi1uZXctb2JqZWN0LTI7fVxyXG59XHJcbi5jb250cm9sbGVyLXZlcnNpb25zICNjb250ZW50IC5jb250ZXh0dWFsIHtcclxuICBhLFxyXG4gIHNwYW4ge1xyXG4gICAgJi5pY29uLWVkaXRbaHJlZio9XCJ3aWtpXCJde1xyXG4gICAgICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi10aGluLXdpa2k7fVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItaXNzdWVzLmFjdGlvbi1zaG93ICNpc3N1ZV90cmVlIC5jb250ZXh0dWFsIGEsXHJcbi5jb250cm9sbGVyLWlzc3Vlcy5hY3Rpb24tc2hvdyAjcmVsYXRpb25zIC5jb250ZXh0dWFsIGEge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29sb3I6IEBiZ21lbnU7XHJcbiAgICBjb250ZW50OiBAaWNvbi10aGluLW5ldy1vYmplY3QtMjtcclxuICB9XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLXVzZXJzLFxyXG4uYWN0aW9uLXByb2plY3RzLFxyXG4uY29udHJvbGxlci1ncm91cHMge1xyXG4gICNjb250ZW50IHtcclxuICAgICYgPiBmb3JtIHtcclxuICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBjaGVja2VkO31cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdzphZnRlcixcclxuLmpjZi1zZWxlY3Qtb3BlbmVyOmFmdGVyIHtcclxuICBjb250ZW50OiBAYXJyb3ctZG93bjtcclxufVxyXG5cclxuI3NpZGViYXIgLnByb2plY3QtbWVtYmVycyAuYXNzaWduYWJsZS11c2VyIHtcclxuICAmOmFmdGVyIHtjb250ZW50OiBAdXNlcjt9XHJcbn1cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLUlNUE9SVEFOVCEhISBDT0xPUiBJQ09OUy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4vKiBTVEFSVCBBRE1JTklTVFJBVElPTiBJQ09OICovXHJcbiNhZG1pbi1pbmRleCB7XHJcblxyXG4gICNjb250ZW50IGgyOmFmdGVyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvYWRtaW5pc3RyYXRpb24uc3ZnKTt9XHJcblxyXG4gICNhZG1pbi1tZW51IHtcclxuICAgIC5wcm9qZWN0czphZnRlciB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL3Byb2plY3RzLnN2Zyk7fVxyXG4gICAgLnVzZXJzOmFmdGVyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvdXNlcnMuc3ZnKTt9XHJcbiAgICAuZ3JvdXBzOmFmdGVyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvZ3JvdXBzLnN2Zyk7fVxyXG4gICAgLnJvbGVzOmFmdGVyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3Ivcm9sZXMuc3ZnKTt9XHJcbiAgICAudHJhY2tlcnM6YWZ0ZXIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci90cmFja2Vycy5zdmcpO31cclxuICAgIC5pc3N1ZS1zdGF0dXNlczphZnRlciB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL2lzc3Vlcy5zdmcpO30gLyog0JfQkNCc0JXQndCY0KLQrCAqL1xyXG4gICAgLndvcmtmbG93czphZnRlciB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL3dvcmtmbG93LnN2Zyk7fVxyXG4gICAgLmN1c3RvbS1maWVsZHM6YWZ0ZXIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9jdXN0b20tZmllbGRzLnN2Zyk7fVxyXG4gICAgLmVudW1lcmF0aW9uczphZnRlciB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL2VudW1lcmF0aW9ucy5zdmcpO31cclxuICAgIC5zZXR0aW5nczphZnRlciB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL3NldHRpbmdzLnN2Zyk7fVxyXG4gICAgLmxkYXAtYXV0aGVudGljYXRpb246YWZ0ZXIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9sZGFwLWF1dGhlbnRpY2F0aW9uLnN2Zyk7fVxyXG4gICAgLmFnaWxlOmFmdGVyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvYWdpbGUuc3ZnKTt9XHJcbiAgICAuY29udGFjdHM6YWZ0ZXIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9jb250YWN0cy5zdmcpO31cclxuICAgIC5oZWxwZGVzazphZnRlciB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL2hlbHBkZXNrLnN2Zyk7fVxyXG4gICAgLmludm9pY2VzOmFmdGVyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvaW52b2ljZS5zdmcpO31cclxuICAgIC5tYWlsY2hpbXAtc2V0dGluZ3M6YWZ0ZXIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9tYWlsY2hpbXAuc3ZnKTt9XHJcbiAgICAuZmluYW5jZTphZnRlciB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL2ZpbmFuY2Uuc3ZnKTt9XHJcbiAgICAucGVvcGxlOmFmdGVyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvcGVvcGxlLnN2Zyk7fVxyXG4gICAgLnByb2R1Y3RzOmFmdGVyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvcHJvZHVjdHMuc3ZnKTt9XHJcbiAgICAucGx1Z2luczphZnRlciB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL3BsdWdpbnMuc3ZnKTt9XHJcbiAgICAuaW5mbzphZnRlciB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL2luZm8uc3ZnKTt9XHJcbiAgICAudGFnczphZnRlciB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL3RhZ3Muc3ZnKTt9XHJcbiAgICAuaWNvbi1yZWRtaW5lY3JtLW1vbmV5OmFmdGVyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvbW9uZXkuc3ZnKTt9XHJcbiAgICAudmF1bHQ6YWZ0ZXIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9rZXlzLnN2Zyk7fVxyXG4gICAgLmNtczphZnRlciB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL2Ntcy5zdmcpO31cclxuICAgIC5yZWxlYXNlLWxvZy1xdWV1ZXM6YWZ0ZXIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9sb2cuc3ZnKTt9XHJcbiAgICAucmVsZWFzZS1sb2ctY29uZmlndXJhdGlvbnM6YWZ0ZXIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9sb2ctY29uZmlndXJhdGlvbnMuc3ZnKTt9XHJcbiAgICAucmVkbWluZS1naXQtaG9zdGluZzphZnRlciB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL2dpdC5zdmcpO31cclxuICAgIC5pY29uLXZpZXdfY3VzdG9taXplOmFmdGVyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3Ivdmlld19jdXN0b21pemUuc3ZnKTt9XHJcbiAgICAuYWRkaXRpb25hbHM6YWZ0ZXIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9hZGRpdGlvbmFscy5zdmcpO31cclxuICAgIC5kbXNmLWFwcHJvdmFsd29ya2Zsb3dzOmFmdGVyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvZG1zZi1hcHByb3ZhbHdvcmtmbG93cy5zdmcpO31cclxuICAgIC5yZW1pbmRlcl9vcHRpb25zX2xhYmVsOmFmdGVyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvcmVtaW5kZXIuc3ZnKTt9XHJcbiAgfVxyXG59XHJcbi8qIEVORCBBRE1JTklTVFJBVElPTiBJQ09OICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gV0VCRlVMTFNFVC5DT00gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEgyIElDT04gRk9SIEFMTCBQQUdFUyAqL1xyXG4uY29udHJvbGxlci1jbXNfcGFnZXMgI2NvbnRlbnQgaDIsXHJcbiNjb250ZW50ID4gaDIsXHJcbi50b3AtcXVlc3Rpb25zIGgyLFxyXG4uYWN0aW9uLWVkaXQgI2NvbnRlbnQgPiBoMixcclxuLmNvbnRyb2xsZXItcHJvamVjdHMuYWN0aW9uLXNldHRpbmdzICNjb250ZW50ID4gaDIsXHJcbi5jb250cm9sbGVyLXNldHRpbmdzICNjb250ZW50ID4gaDIsXHJcbi5jb250cm9sbGVyLWNoZWNrbGlzdF90ZW1wbGF0ZV9jYXRlZ29yaWVzICNjb250ZW50ID4gaDIsXHJcbi5jb250cm9sbGVyLXByb2R1Y3RfY2F0ZWdvcmllcyAjY29udGVudCA+IGgyLFxyXG4uY29udHJvbGxlci1wZW9wbGVfc2V0dGluZ3MgI2NvbnRlbnQgPiBoMixcclxuLmNvbnRyb2xsZXItb3BlcmF0aW9uX2NhdGVnb3JpZXMgI2NvbnRlbnQgPiBoMixcclxuLmFjdGlvbi1uZXcgI2NvbnRlbnQgPiBoMixcclxuLmNvbnRyb2xsZXItY29udGFjdF9pbXBvcnRzICNjb250ZW50ID4gaDJ7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL3NldHRpbmdzLnN2Zyk7XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLWludm9pY2VfbWFpbHMgI2NvbnRlbnQgPiBoMiB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL21haWwuc3ZnKTtcclxufVxyXG5cclxuLmNvbnRyb2xsZXItdXNlcnMgI2NvbnRlbnQgPiBoMiB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL3VzZXJzLnN2Zyk7fVxyXG4uY29udHJvbGxlci11c2Vycy5hY3Rpb24tc2hvdyAjY29udGVudCBoMiB7YmFja2dyb3VuZDogbm9uZTt9XHJcbi5jb250cm9sbGVyLWdyb3VwcyAjY29udGVudCA+IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvZ3JvdXBzLnN2Zyk7fVxyXG4uY29udHJvbGxlci1yb2xlcyAjY29udGVudCA+IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3Ivcm9sZXMuc3ZnKTt9XHJcbi5jb250cm9sbGVyLWlzc3VlX3N0YXR1c2VzICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9pc3N1ZXMuc3ZnKTt9XHJcbi5jb250cm9sbGVyLXdvcmtmbG93cyAjY29udGVudCA+IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3Ivd29ya2Zsb3cuc3ZnKTt9XHJcbi5jb250cm9sbGVyLWVudW1lcmF0aW9ucyAjY29udGVudCA+IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvZW51bWVyYXRpb25zLnN2Zyk7fVxyXG4uY29udHJvbGxlci1hdXRoX3NvdXJjZXMgI2NvbnRlbnQgPiBoMiB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL2xkYXAtYXV0aGVudGljYXRpb24uc3ZnKTt9XHJcbi5hY3Rpb24taW5mbyAjY29udGVudCA+IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvaW5mby5zdmcpO31cclxuXHJcbi5jb250cm9sbGVyLWFkbWluICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9hZG1pbmlzdHJhdGlvbi5zdmcpO31cclxuLmNvbnRyb2xsZXItbXkgI2NvbnRlbnQgPiBoMiB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL215LXBhZ2Uuc3ZnKTt9XHJcbi5jb250cm9sbGVyLWFjdGl2aXRpZXMgI2NvbnRlbnQgaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9hY3Rpdml0eS5zdmcpO31cclxuLmNvbnRyb2xsZXItZ2FudHRzICNjb250ZW50IGgyLFxyXG4uY29udHJvbGxlci1vcmRlcnNfY2hhcnRzICNjb250ZW50IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvZ2FudHQuc3ZnKTt9XHJcbi5jb250cm9sbGVyLXJlc291cmNlX2Jvb2tpbmdzICNjb250ZW50IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvcmVzb3VyY2VzLnN2Zyk7fVxyXG4uY29udHJvbGxlci1jYWxlbmRhcnMgI2NvbnRlbnQgaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9jYWxlbmRhci5zdmcpO31cclxuLmNvbnRyb2xsZXItbmV3cyAjY29udGVudCA+IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvbmV3cy5zdmcpO31cclxuLmNvbnRyb2xsZXItZG9jdW1lbnRzICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9kb2N1bWVudHMuc3ZnKTt9XHJcbi5jb250cm9sbGVyLXdpa2kgI2NvbnRlbnQgPiBoMixcclxuLmNvbnRyb2xsZXItd2lraSAjY29udGVudCBoMTpmaXJzdC1vZi10eXBlIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3Ivd2lraS5zdmcpO31cclxuLmNvbnRyb2xsZXItYm9hcmRzICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9ib2FyZHMuc3ZnKTt9XHJcbi5jb250cm9sbGVyLWZpbGVzICNjb250ZW50ID4gaDIsXHJcbi5jb250cm9sbGVyLWF0dGFjaG1lbnRzICNjb250ZW50IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvZmlsZXMuc3ZnKTt9XHJcbi5jb250cm9sbGVyLWNvbnRhY3RzICNjb250ZW50IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvY29udGFjdHMuc3ZnKTt9XHJcbi5jb250cm9sbGVyLWRlYWxzICNjb250ZW50IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvZGVhbHMuc3ZnKTt9XHJcbi5jb250cm9sbGVyLWV4cGVuc2VzICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9leHBlbnNlcy5zdmcpO31cclxuXHJcbi5jb250cm9sbGVyLXBlb3BsZSAjY29udGVudCAjcXVlcnlfZm9ybSBoMixcclxuLmNvbnRyb2xsZXItcGVvcGxlICNjb250ZW50ID4gaDIge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9wZW9wbGUuc3ZnKTtcclxufVxyXG4uY29udHJvbGxlci1hZG1pbiAjY29udGVudCA+IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvYWRtaW5pc3RyYXRpb24uc3ZnKTt9XHJcbi5jb250cm9sbGVyLXF1ZXN0aW9uc19zZWN0aW9ucy5hY3Rpb24taW5kZXggLnRvcC1xdWVzdGlvbnMgaDIsXHJcbi5jb250cm9sbGVyLXF1ZXN0aW9ucyAjY29udGVudCA+IGgyLFxyXG4uY29udHJvbGxlci1xdWVzdGlvbnNfc2VjdGlvbnMgI2NvbnRlbnQgPiBoMixcclxuLmNvbnRyb2xsZXItcXVlc3Rpb25zICNjb250ZW50IC5xdWVzdGlvbnMgPiBoMixcclxuLmNvbnRyb2xsZXItcXVlc3Rpb25zICNjb250ZW50IC5xdWVzdGlvbi10aXRsZSxcclxuLmNvbnRyb2xsZXItcXVlc3Rpb25zLmFjdGlvbi1pbmRleCAgaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9oZWxwZGVzay5zdmcpO31cclxuLmNvbnRyb2xsZXItaXNzdWVzICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9pc3N1ZXMuc3ZnKTt9XHJcbi5jb250cm9sbGVyLXRpbWVsb2cgI2NvbnRlbnQgPiBoMixcclxuLmNvbnRyb2xsZXItdHJhY2tlcnMgI2NvbnRlbnQgPiBoMiB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL3RyYWNrZXJzLnN2Zyk7XHJcbn1cclxuLmFjdGlvbi1wbHVnaW5zICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9wbHVnaW5zLnN2Zyk7fVxyXG4uY29udHJvbGxlci1hZ2lsZV9ib2FyZHMgI2NvbnRlbnQgaDIsXHJcbi5jb250cm9sbGVyLWFnaWxlX2NoYXJ0cyAjY29udGVudCA+IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvYWdpbGUuc3ZnKTt9XHJcbi5jb250cm9sbGVyLWludm9pY2VzICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9pbnZvaWNlLnN2Zyk7fVxyXG4uY29udHJvbGxlci1vcGVyYXRpb25zICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9maW5hbmNlLnN2Zyk7fVxyXG4uY29udHJvbGxlci1wcm9kdWN0cyAjY29udGVudCBoMiB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL3Byb2R1Y3RzLnN2Zyk7fVxyXG4uY29udHJvbGxlci1vcmRlcnMgI2NvbnRlbnQgaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9vcmRlci5zdmcpO31cclxuLmNvbnRyb2xsZXItY3VzdG9tX2ZpZWxkcyAjY29udGVudCA+IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvY3VzdG9tLWZpZWxkcy5zdmcpO31cclxuLmNvbnRyb2xsZXItZmF2b3JpdGVfcHJvamVjdHMgI2NvbnRlbnQgaDIsXHJcbi5hY3Rpb24tcHJvamVjdHMgI2NvbnRlbnQgPiBoMixcclxuLmNvbnRyb2xsZXItcHJvamVjdHMgI2NvbnRlbnQgPiBoMiB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL3Byb2plY3RzLnN2Zyk7XHJcbn1cclxuLmNvbnRyb2xsZXItd2VsY29tZSAjY29udGVudCA+IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvaG9tZS5zdmcpO31cclxuLmNvbnRyb2xsZXItc2VhcmNoICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9zZWFyY2gtdGl0bGUuc3ZnKTt9XHJcbi5jb250cm9sbGVyLXZlcnNpb25zICNjb250ZW50ID4gaDIsXHJcbiNyb2FkbWFwIGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3Ivcm9hZG1hcC5zdmcpO31cclxuLmNvbnRyb2xsZXItYWdpbGVfdmVyc2lvbnMgI2NvbnRlbnQgPiBoMiB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL3BsYW5uaW5nLnN2Zyk7fVxyXG4uY29udHJvbGxlci1hZ2lsZV9jb2xvcnMgI2NvbnRlbnQgPiBoMiB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL2NvbG9yLnN2Zyk7fVxyXG4uY29udHJvbGxlci1yZXBvcnRfdGVtcGxhdGVzICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9pbXBvcnQuc3ZnKTt9XHJcbi5jb250cm9sbGVyLW1lc3NhZ2VzLmFjdGlvbi1zaG93ICNjb250ZW50ID4gaDIgIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvcXVlc3Rpb24uc3ZnKTt9XHJcbi5jb250cm9sbGVyLW1lc3NhZ2VzLmFjdGlvbi1zaG93ICNjb250ZW50IGgzICB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL2Fuc3dlci5zdmcpO31cclxuLmNvbnRyb2xsZXItcmVsZWFzZV9sb2dfcXVldWVzICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9sb2cuc3ZnKTt9XHJcbi5jb250cm9sbGVyLXJlbGVhc2VfbG9nX2NvbmZpZ3VyYXRpb25zICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9sb2ctY29uZmlndXJhdGlvbnMuc3ZnKTt9XHJcbi5jb250cm9sbGVyLXJlcG9zaXRvcmllcyAjY29udGVudCA+IGgyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvcmVwb3NpdG9yeS5zdmcpO31cclxuLmNvbnRyb2xsZXItaGVhcnRzICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9saWtlLnN2Zyk7fVxyXG4uY29udHJvbGxlci1rYW5iYW4gI2NvbnRlbnQgPiBoMiB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL2thbmJhbi5zdmcpO31cclxuLmNvbnRyb2xsZXItc3BlY3RhdG9yICNjb250ZW50ID4gaDEge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9jaGFuZ2UtdXNlci5zdmcpO31cclxuLmNvbnRyb2xsZXItZ2l0b2xpdGVfcHVibGljX2tleXMuYWN0aW9uLWluZGV4ICNtYWluID4gI2NvbnRlbnQgaDMsXHJcbi5jb250cm9sbGVyLWtleXMuYWN0aW9uLW5ldyAjbWFpbiA+ICNjb250ZW50IGgxLFxyXG4uY29udHJvbGxlci1rZXlzICNjb250ZW50ID4gaDIge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1jb2xvci9rZXlzLnN2Zyk7fVxyXG4uY29udHJvbGxlci1jYW5uZWRfcmVzcG9uc2VzLmFjdGlvbi1pbmRleCAjY29udGVudCA+IGgzIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3Ivc2V0dGluZ3Muc3ZnKTt9XHJcblxyXG4vKiBFTkQgQURNSU5JU1RSQVRJT04gSUNPTiAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKmNvbW1vbiovXHJcbmRpdi5qb3VybmFsIHVsLmRldGFpbHMgYTpob3ZlcixcclxudWwucmV2aXNpb24taW5mbyBhOmhvdmVyLFxyXG5hLCBhOmxpbmssIGE6dmlzaXRlZCxcclxuZGl2LmpvdXJuYWwgdWwuZGV0YWlscyBhLFxyXG51bC5yZXZpc2lvbi1pbmZvIGEge1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbiNpc3N1ZV90cmVlIHRkLnN1YmplY3QsXHJcbiNyZWxhdGlvbnMgdGQuc3ViamVjdCB7XHJcbiAgd2lkdGg6IGF1dG87XHJcbn1cclxuXHJcbi8qIFNUQVJUIElTU1VFUyAqL1xyXG5cclxuLmlzc3VlLWNhcmQuY29udGV4dC1tZW51LXNlbGVjdGlvbiAuYXR0cmlidXRlcyxcclxuLmlzc3VlLWNhcmQuY29udGV4dC1tZW51LXNlbGVjdGlvbiBlbS5pbmZvIHtcclxuICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxufVxyXG4jY29udGVudCB7XHJcbiAgdGFibGUubGlzdDpub3QoLm9kZC1ldmVuKSB0Ym9keSB0cjpudGgtY2hpbGQoMm4rMSksXHJcbiAgLm9kZCwgI2lzc3VlLWNoYW5nZXNldHMgZGl2LmNoYW5nZXNldDpudGgtY2hpbGQoMm4rMSkge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgI3RpY2tldF9kYXRhIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4jY2hhbmdlX2F1dGhvciB7XHJcbiAgYVtzdHlsZT1cImRpc3BsYXk6IG5vbmU7XCJdIHtcclxuICAgICYgfiAuamNmLXNlbGVjdCB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5kaXYuc3ViamVjdCBhIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDI7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBjb2xvcjogdmFyKC0tcHJpb3JpdHktY29sb3IpO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgJjpiZWZvcmUge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDBweDtcclxuICAgIGxlZnQ6IDBweDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyIHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgb3BhY2l0eToxO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5wcmlvcml0eS0xIHtcclxuICAgICY6YmVmb3JlIHtiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS0xKTt9XHJcbiAgfVxyXG4gICYucHJpb3JpdHktMiB7XHJcbiAgICAmOmJlZm9yZSB7YmFja2dyb3VuZDogdmFyKC0tcHJpb3JpdHktMik7fVxyXG4gIH1cclxuICAmLnByaW9yaXR5LTMge1xyXG4gICAgJjpiZWZvcmUge2JhY2tncm91bmQ6IHZhcigtLXByaW9yaXR5LTMpO31cclxuICB9XHJcbiAgJi5wcmlvcml0eS00IHtcclxuICAgICY6YmVmb3JlIHtiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS00KTt9XHJcbiAgfVxyXG4gICYucHJpb3JpdHktNSB7XHJcbiAgICAmOmJlZm9yZSB7YmFja2dyb3VuZDogdmFyKC0tcHJpb3JpdHktNSk7fVxyXG4gIH1cclxuXHJcbiAgJi5pc3N1ZS5jbG9zZWQge1xyXG4gICAgY29sb3I6IHZhcigtLXByaW9yaXR5LWNvbG9yKTtcclxuICB9XHJcbn1cclxuXHJcbnRhYmxlLmxpc3Qge1xyXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICBtYXJnaW46IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICB0aGVhZCAge1xyXG4gICAgcG9zaXRpb246IHN0aWNreTtcclxuICAgIHotaW5kZXg6IDM7XHJcbiAgICB0b3A6IDA7XHJcbiAgfVxyXG5cclxuICAmLmZpbGVzIHtcclxuICAgIHRib2R5IHtcclxuICAgICAgdGgge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmlkIHtcclxuICAgIC5maWxlcyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5pY29uLWNoZWNrZWQsXHJcbiAgYixcclxuICAubmFtZSB7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIH1cclxuXHJcbiAgLmdyb3VwIHtcclxuICAgIHNwYW4uY291bnQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICAmLmxhc3QtZ3JvdXAge1xyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRkIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIHBhZGRpbmc6IDEzcHggMTRweDtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLm9wZW4ge1xyXG4gICAgICAuZXhwYW5kZXJ7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge2NvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTt9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLm9wZW46bnRoLWxhc3Qtb2YtdHlwZSgxKSB7XHJcbiAgICAgIHRke1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcblxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5leHBhbmRlciB7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgcGFkZGluZzowO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgbWFyZ2luOi0zcHggNXB4IDAgMDtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgei1pbmRleDoyO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGZvbnQtc2l6ZTowcHg7XHJcbiAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xyXG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDApO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiAgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIsXHJcbiAgICAmLnNlbGVjdGVke1xyXG4gICAgICAmOmFmdGVyIHtjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7fVxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5lbWJwdHktdGFibGUge1xyXG4gICAgdGgge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJiA+IHRib2R5ID4gdHJ7XHJcblxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgJiA+IHRke1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIsXHJcbiAgICAmLmlzc3VlLmNvbnRleHQtbWVudS1zZWxlY3Rpb24ge1xyXG4gICAgICAmID4gdGQsZHJkbi1pdGVtc1xyXG4gICAgICAmID4gdGQuY2hlY2tib3gsXHJcbiAgICAgICYgPiB0ZC5zdWJqZWN0IHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hbGwtaG92ZXItYmcpO1xyXG4gICAgICB9XHJcbiAgICAgIHRhYmxlLnByb2dyZXNzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG5cclxuICAgICAgICB0ZC50b2RvIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5jb250ZXh0LW1lbnUtc2VsZWN0aW9uIHtcclxuICAgICAgJiA+IHRkLCAmID4gdGQuY2hlY2tib3gge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgIH1cclxuICAgICAgdGFibGUucHJvZ3Jlc3Mge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcblxyXG4gICAgICAgIHRkLnRvZG8ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRkLmRlc2NyaXB0aW9uLFxyXG4gIHRoLCB0ZCwgdGQuY2hlY2tib3gge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgIHBhZGRpbmc6IDdweCAxNHB4O1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiAgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246ICBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRyLmlkbnQgdGQubmFtZSxcclxuICB0ci5pZG50IHRkLnN1YmplY3Qge1xyXG4gICAgYXtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogQG5leHQ7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZS1zbWFsbCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IGNhbGMoficwIC0gdmFyKC0taWNvbi13aWR0aC1zbWFsbCknKTtcclxuICAgICAgICBtYXJnaW46IC0xMHB4IDAgMDtcclxuICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgc3BhbiB7XHJcbiAgICAgIGEge1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRyLmlkbnQtMSB0ZC5zdWJqZWN0LCB0ci5pZG50LTEgdGQubmFtZSB7cGFkZGluZy1sZWZ0OiAyOHB4O31cclxuICB0ci5pZG50LTIgdGQuc3ViamVjdCwgdHIuaWRudC0yIHRkLm5hbWUge3BhZGRpbmctbGVmdDogNDJweDt9XHJcbiAgdHIuaWRudC0zIHRkLnN1YmplY3QsIHRyLmlkbnQtMyB0ZC5uYW1lIHtwYWRkaW5nLWxlZnQ6IDU4cHg7fVxyXG4gIHRyLmlkbnQtNCB0ZC5zdWJqZWN0LCB0ci5pZG50LTQgdGQubmFtZSB7cGFkZGluZy1sZWZ0OiA3NHB4O31cclxuICB0ci5pZG50LTUgdGQuc3ViamVjdCwgdHIuaWRudC01IHRkLm5hbWUge3BhZGRpbmctbGVmdDogODBweDt9XHJcbiAgdHIuaWRudC02IHRkLnN1YmplY3QsIHRyLmlkbnQtNiB0ZC5uYW1lIHtwYWRkaW5nLWxlZnQ6IDEwNnB4O31cclxuICB0ci5pZG50LTcgdGQuc3ViamVjdCwgdHIuaWRudC03IHRkLm5hbWUge3BhZGRpbmctbGVmdDogMTIycHg7fVxyXG4gIHRyLmlkbnQtOCB0ZC5zdWJqZWN0LCB0ci5pZG50LTggdGQubmFtZSB7cGFkZGluZy1sZWZ0OiAxMzhweDt9XHJcbiAgdHIuaWRudC05IHRkLnN1YmplY3QsIHRyLmlkbnQtOSB0ZC5uYW1lIHtwYWRkaW5nLWxlZnQ6IDE1NHB4O31cclxuXHJcbiAgdGgge1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIHBhZGRpbmc6IDEzcHggMTRweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG5cclxuICAgIGEge1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluayk7XHJcbiAgICB9XHJcblxyXG4gICAgJi5hZGRfaXNzdWVfbm90ZXNfc2hvd24ge1xyXG4gICAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwIDA7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDAgMDtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDAgMDtcclxuICAgIH1cclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwOy1tb3otYm9yZGVyLXJhZGl1czogMCB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDA7Ym9yZGVyLXJhZGl1czogMCB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudG90YWwge1xyXG4gICAgdGgge1xyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAmID4gdHIsXHJcbiB0Ym9keSB0cntcclxuICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgdGQge1xyXG4gICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICB9XHJcblxyXG4gICAgIHRoIHtcclxuICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgfVxyXG4gICB9XHJcbiAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgdGQge1xyXG4gICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgMDstbW96LWJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKSAwO2JvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKSAwO1xyXG4gICAgICAgfVxyXG4gICAgIH1cclxuICAgfVxyXG4gfVxyXG5cclxuICB0aGVhZCB7XHJcbiAgICB0cntcclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICB0aCxcclxuICAgICAgICB0ZHtcclxuICAgICAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0ZCB7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG5cclxuICAgICYuYWRkX2lzc3VlX25vdGVzX3Nob3duIHtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgICYucm9sZXMge1xyXG4gICAgICAuZWRpdF9tZW1iZXJzaGlwIHtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5jaGVja2JveCB7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgfVxyXG5cclxuICAgICYuc3ViamVjdCxcclxuICAgICYuYXNzaWduZWRfdG97XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgICY6aG92ZXIge3RleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5zdWJqZWN0IGEge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDBweDtcclxuICAgICAgICBsZWZ0OiAwcHg7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIG9wYWNpdHk6MC4yO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXI6YmVmb3JlIHtcclxuICAgICAgICBvcGFjaXR5OjE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYucHJpb3JpdHkge1xyXG4gICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgfVxyXG5cclxuICAgJi5idXR0b25zIHtcclxuICAgICB3aWR0aDogNjBweDtcclxuICAgICBwYWRkaW5nLWxlZnQ6IDJweDtcclxuICAgICBwYWRkaW5nLXJpZ2h0OiAxNHB4O1xyXG4gICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cclxuICAgICBhLFxyXG4gICAgIC5zb3J0LWhhbmRsZSAge1xyXG4gICAgICAgbWFyZ2luOiA1cHggMnB4IWltcG9ydGFudDtcclxuICAgICB9XHJcbiAgIH1cclxuICB9XHJcblxyXG4gIC5wcmlvcml0eS0xIC5wcmlvcml0eXsgY29sb3I6IHZhcigtLXByaW9yaXR5LTEpO31cclxuICAucHJpb3JpdHktMiAucHJpb3JpdHl7IGNvbG9yOiB2YXIoLS1wcmlvcml0eS0yKTt9XHJcbiAgLnByaW9yaXR5LTMgLnByaW9yaXR5eyBjb2xvcjogdmFyKC0tcHJpb3JpdHktMyk7fVxyXG4gIC5wcmlvcml0eS00IC5wcmlvcml0eXsgY29sb3I6IHZhcigtLXByaW9yaXR5LTQpO31cclxuICAucHJpb3JpdHktNSAucHJpb3JpdHl7IGNvbG9yOiB2YXIoLS1wcmlvcml0eS01KTt9XHJcblxyXG4gIC5wcmlvcml0eS0xIC5zdWJqZWN0IGE6YmVmb3JlIHtiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS0xKTt9XHJcbiAgLnByaW9yaXR5LTIgLnN1YmplY3QgYTpiZWZvcmUge2JhY2tncm91bmQ6IHZhcigtLXByaW9yaXR5LTIpO31cclxuICAucHJpb3JpdHktMyAuc3ViamVjdCBhOmJlZm9yZSB7YmFja2dyb3VuZDogdmFyKC0tcHJpb3JpdHktMyk7fVxyXG4gIC5wcmlvcml0eS00IC5zdWJqZWN0IGE6YmVmb3JlIHtiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS00KTt9XHJcbiAgLnByaW9yaXR5LTUgLnN1YmplY3QgYTpiZWZvcmUge2JhY2tncm91bmQ6IHZhcigtLXByaW9yaXR5LTUpO31cclxuXHJcbiAgLnByaW9yaXR5LTEgLnN1YmplY3QgYTpob3ZlcixcclxuICAucHJpb3JpdHktMiAuc3ViamVjdCBhOmhvdmVyLFxyXG4gIC5wcmlvcml0eS0zIC5zdWJqZWN0IGE6aG92ZXIsXHJcbiAgLnByaW9yaXR5LTQgLnN1YmplY3QgYTpob3ZlcixcclxuICAucHJpb3JpdHktNSAuc3ViamVjdCBhOmhvdmVyIHtcclxuICAgIGNvbG9yOiB2YXIoLS1wcmlvcml0eS1jb2xvcik7XHJcbiAgfVxyXG5cclxuICB0cjpsYXN0LWNoaWxkIHRkIHtcclxuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgfVxyXG5cclxuICB0aGVhZCB7XHJcbiAgICB0ciB7XHJcbiAgICAgICY6bGFzdC1jaGlsZCB0ZCxcclxuICAgICAgdGQge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29udGV4dC1tZW51LXNlbGVjdGlvbixcclxuICAuY29udGV4dC1tZW51LXNlbGVjdGlvbjpob3ZlcixcclxuICAuY29udGV4dC1tZW51LXNlbGVjdGlvbiBhLFxyXG4gIC5jb250ZXh0LW1lbnUtc2VsZWN0aW9uIGE6aG92ZXJ7XHJcbiAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4uY29udHJvbGxlci1pc3N1ZXMuYWN0aW9uLWluZGV4IHtcclxuICB0YWJsZS5saXN0IHtcclxuXHJcbiAgICB0aCxcclxuICAgIHRkIHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICB9XHJcblxyXG4gICAgdGhlYWQge1xyXG4gICAgICB0cntcclxuICAgICAgICB0aDpmaXJzdC1jaGlsZCAubGlzdC1pbm5lci1ib3gge1xyXG4gICAgICAgICAgYm9yZGVyLWxlZnQ6OHB4IHNvbGlkIHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGQge1xyXG4gICAgICAmOmZpcnN0LWNoaWxkIC5saXN0LWlubmVyLWJveCB7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6OHB4IHNvbGlkIHZhcigtLWJnLWZmZik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucHJpb3JpdHktMSB0ZDpmaXJzdC1jaGlsZCAubGlzdC1pbm5lci1ib3ggeyBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tcHJpb3JpdHktMSk7fVxyXG4gICAgLnByaW9yaXR5LTIgdGQ6Zmlyc3QtY2hpbGQgLmxpc3QtaW5uZXItYm94IHsgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLXByaW9yaXR5LTIpO31cclxuICAgIC5wcmlvcml0eS0zIHRkOmZpcnN0LWNoaWxkIC5saXN0LWlubmVyLWJveCB7IGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1wcmlvcml0eS0zKTt9XHJcbiAgICAucHJpb3JpdHktNCB0ZDpmaXJzdC1jaGlsZCAubGlzdC1pbm5lci1ib3ggeyBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tcHJpb3JpdHktNCk7fVxyXG4gICAgLnByaW9yaXR5LTUgdGQ6Zmlyc3QtY2hpbGQgLmxpc3QtaW5uZXItYm94IHsgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLXByaW9yaXR5LTUpO31cclxuXHJcbiAgICAubGlzdC1pbm5lci1ib3gge1xyXG4gICAgICBwYWRkaW5nOiAwIDhweDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgICAgLmlubmVyLWJveCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNoZWNrYm94IHtcclxuICAgICAgbWF4LXdpZHRoOiA1MHB4O1xyXG5cclxuICAgICAgaW5wdXQge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuSkNvbFJlc2l6ZXIge1xyXG4gICAgICB0aCxcclxuICAgICAgdGQge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLkpDTFJncmlwcyB7XHJcbiAgICBoZWlnaHQ6IDJweDtcclxuICAgIG1hcmdpbjogMCAwIC0ycHg7XHJcblxyXG4gICAgLkpDTFJncmlwIHtcclxuICAgICAgd2lkdGg6IDhweDtcclxuXHJcbiAgICAgICYuSkNMUkxhc3RHcmlwIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgdG9wOiAtOTk5OTk5OXB4O1xyXG4gICAgICAgIGxlZnQ6IC05OTk5OTk5cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZ3JpcCB7XHJcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgdG9wOiAwO1xyXG4gICAgd2lkdGg6IDhweDtcclxuICAgIGhlaWdodDogNDdweDtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgei1pbmRleDogODg7XHJcbiAgICBjdXJzb3I6IGUtcmVzaXplO1xyXG4gICAgb3BhY2l0eTogMC4zO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuc21hbGwtbGlzdC12aWV3IHtcclxuICAgIC5ncmlwIHtcclxuICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuYm9keS5jb250cm9sbGVyLWlzc3VlcyB7XHJcblxyXG4gIHRhYmxlLmxpc3Qge1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgYm9yZGVyLWxlZnQ6IDA7XHJcbiAgICBib3JkZXItcmlnaHQ6IDA7XHJcblxyXG4gICAgJiA+IHRoZWFkID4gdHIgPiB0aCB7XHJcbiAgICAgICY6Zmlyc3QtY2hpbGQsXHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucXVlcnktdG90YWxzIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDE1cHggMDtcclxuICB9XHJcbiAgI2NvbnRlbnQge1xyXG5cclxuICAgIGgyICsgZm9ybSB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgICAgei1pbmRleDogMTA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0YWJsZS5saXN0IHtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLWlzc3Vlcy5hY3Rpb24taW5kZXgge1xyXG5cclxuICAuYXV0b3Njcm9sbCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgd2lkdGg6IGNhbGMoficxMDAlICsgNjBweCcpO1xyXG4gICAgbWFyZ2luOiAwIC0zMHB4O1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgI21haW4ge1xyXG5cclxuICAgICNjb250ZW50IHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDc2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjY29udGVudCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICYgPiAubm9kYXRhLFxyXG4gICAgJiA+IC53YXJuaW5nIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xyXG4gICAgICBtYXJnaW4tbGVmdDogMzBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNxdWVyeV9mb3JtIHtcclxuICAgIC5ob2xkZXItZmlsdGVycyB7XHJcbiAgICAgIC5pbi1maWx0ZXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLWlzc3Vlcy5hY3Rpb24tc2hvdyB7XHJcblxyXG4gICAgaHIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gIGRpdi5kZXNjcmlwdGlvbixcclxuICAjaXNzdWVfdHJlZSxcclxuICAjcmVsYXRpb25zLFxyXG4gICNjaGVja2xpc3R7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgcGFkZGluZzogMTVweCAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC52YWx1ZSB7XHJcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5mYS1wZW5jaWwge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMTVweDtcclxuICAgICAgcmlnaHQ6IDQ4cHg7XHJcbiAgICB9XHJcbiAgICAjY2hlY2tsaXN0X2l0ZW1zIHtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIHBhZGRpbmc6MDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNjaGVja2xpc3Qge1xyXG4gICAgcCB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuXHJcbiAgICAjY2hlY2tsaXN0X2l0ZW1zIHtcclxuICAgICAgcGFkZGluZy10b3A6IDE1cHg7XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNpc3N1ZV90cmVlLFxyXG4gICNyZWxhdGlvbnMge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgIHBhZGRpbmc6IDE1cHggMzBweCA7XHJcbiAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyA2MHB4JykgIWltcG9ydGFudDtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBtYXJnaW46IC0xcHggLTMwcHggMjBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcblxyXG4gICAgLmF1dG9zY3JvbGwge1xyXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgIHJpZ2h0OiAgMzBweDtcclxuICAgIH1cclxuXHJcbiAgICBQIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIHRhYmxlLmxpc3Qge1xyXG4gICAgICBtYXJnaW46IDIwcHggMCA1cHg7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1taWRsZSk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1pZGxlKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1pZGxlKTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS10YWJsZS1zaGFkb3cpO1xyXG4gICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLXRhYmxlLXNoYWRvdyk7XHJcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLXRhYmxlLXNoYWRvdyk7XHJcblxyXG4gICAgICB0ciB7XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuaXNzdWUge1xyXG4gICAgICAgICYgPiB0ZCB7XHJcblxyXG4gICAgICAgICAgYS5pc3N1ZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCA1cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRleHR1YWwge1xyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgei1pbmRleDoyO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6dmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTowcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6MHB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOnZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOnZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOmFmdGVyIHtjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7fVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5zZWxlY3RlZCB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbl9jb2xvcl9hY3RpdmUtYmcpO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWNvbl9iZ19hY3RpdmUtYmcpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOmFmdGVyIHtjb2xvcjogdmFyKC0taWNvbl9jb2xvcl9hY3RpdmUtYmcpO31cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNpc3N1ZV90cmVlIH4gI3JlbGF0aW9ucyB7XHJcbiAgICBtYXJnaW4tdG9wOiAtMjFweDtcclxuICB9XHJcblxyXG4gICYubG9nZ2VkYXMge1xyXG4gICAgI21haW4ge1xyXG5cclxuICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDkwcHgnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuXHJcbiAgICAjY29udGVudCB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgaDIge1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggNzVweCAxNXB4IDQ1cHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIC02MHB4IDIwcHggLTMwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDo1NnB4O1xyXG4gICAgICAgIHotaW5kZXg6MTA7XHJcbiAgICAgICAgbGVmdDogMTAwJTtcclxuICAgICAgICByaWdodDogNHB4O1xyXG4gICAgICAgIHRvcDo5NHB4O1xyXG4gICAgICAgIHBhZGRpbmc6MDtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuXHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246ICByaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiAgcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiAgcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAgcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuXHJcblxyXG4gICAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgIG1hcmdpbjowIDAgNXB4O1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaGlkZGVuLWxpbmsge1xyXG4gICAgICAgICAgLmljb246bm90KC5uZXctaWNvbikge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjI1O1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5uZXctaWNvbjpob3ZlciB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItaXNzdWVzLmFjdGlvbi1zaG93Lmlzc3Vlcy1jb250ZXh0dWFsIHtcclxuICAjbWFpbiB7XHJcbiAgICBtYXJnaW46IDAgMzBweCAwIDA7XHJcbiAgfVxyXG59XHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEFUVEFDSE1FTlRTIEJPWCAqL1xyXG4jbWFpbiB7XHJcblxyXG4gIC5pc3N1ZSAge1xyXG4gICAgLmF0dGFjaG1lbnRzIHtcclxuICAgICAgcGFkZGluZzogMzBweCAwIDA7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnRodW1ibmFpbHMge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5hdHRhY2htZW50cyB7XHJcblxyXG4gICAgdGFibGUge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICBkaXYuaW1hZ2VzIHtcclxuICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICBtYXJnaW46IDAgLTMwcHggLTFweDtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBib3JkZXI6IDVweCBzb2xpZCB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAxMDBweDtcclxuICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgICBtYXJnaW46IDEwcHg7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1pZGxlKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWlkbGUpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWlkbGUpO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tdGFibGUtc2hhZG93KTtcclxuICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLXRhYmxlLXNoYWRvdyk7XHJcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tdGFibGUtc2hhZG93KTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDowO1xyXG4gICAgICAgICAgbGVmdDowO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O2JveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6NTAlO1xyXG4gICAgICAgICAgbGVmdDo1MCU7XHJcbiAgICAgICAgICBtYXJnaW46IC0xNXB4IDAgMCAtMTVweDtcclxuICAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24taG92ZXIvYWxsL3pvb20taW4uc3ZnKTtcclxuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICY6YWZ0ZXIge29wYWNpdHk6IDAuNTt9XHJcbiAgICAgICAgICAmOmJlZm9yZSB7dHJhbnNmb3JtOiBzY2FsZSgxKTt9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGFibGUge1xyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnNpemUge1xyXG4gICAgICAgIG1hcmdpbjogMCA1cHggMCAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuZGVsZXRlIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIDVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGEuaWNvbi1hdHRhY2htZW50IHtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuXHJcbiAgICAgICY6YmVmb3JlLFxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc3Bhbi5pY29uLWF0dGFjaG1lbnQge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5pY29uLW1hZ25pZmllciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjemVuLWRyYWZ0IHtcclxuICAgIHBhZGRpbmc6IDAgMCAxNXB4O1xyXG4gICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG5cclxuICAgIGhyIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAjYXBwbHktemVuLWRyYWZ0LFxyXG4gICAgI2NhbmNlbC16ZW4tZHJhZnR7XHJcbiAgICAgIHBhZGRpbmc6IDhweCAzMHB4O1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvcik7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgd2lkdGg6IGF1dG87XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpkaXNhYmxlZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctZGlzYWJsZWQpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1kaXNhYmxlZCk7XHJcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWRpc2FibGVkKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1kaXNhYmxlZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2NhbmNlbC16ZW4tZHJhZnQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpkaXNhYmxlZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZGFyay1ncmV5KTtcclxuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZGFyay1ncmV5KTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnRhYnVsYXIge1xyXG4gICAgI3plbi1kcmFmdCB7XHJcblxyXG4gICAgICAjYXBwbHktemVuLWRyYWZ0IHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYmctZmZmKTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgQVRUQUNITUVOVFMgQk9YICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4jbmV3LXJlbGF0aW9uLWZvcm0ge1xyXG4gIHAge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuXHJcbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMTBweDtcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCkgIWltcG9ydGFudDtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgJiArIGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3IpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZyk7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAhaW1wb3J0YW50Oy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCkgIWltcG9ydGFudDtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNtYWluIGRpdi5pc3N1ZSB7XHJcbiAgYmFja2dyb3VuZDogbm9uZTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgei1pbmRleDogMTtcclxuICBwYWRkaW5nOiAzM3B4IDAgMDtcclxuICBtYXJnaW46IDA7XHJcbiAgYm9yZGVyLXJhZGl1czogN3B4IDdweCAwIDA7XHJcbiAgYm9yZGVyOiBub25lO1xyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIC8vY29udGVudDonJztcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBjbGVhcjpib3RoO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDFweDtcclxuICB9XHJcblxyXG4gIHAge1xyXG4gICAgbWFyZ2luOiAwIDAgMTVweDtcclxuXHJcbiAgICAmLmF1dGhvciB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIC5zdWJqZWN0IHtcclxuICAgIC52YWx1ZSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgIH1cclxuXHJcbiAgICBkaXY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC52YWx1ZSB7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgLmZhLXBlbmNpbCB7XHJcbiAgICAgICAgJjpiZWZvcmUge3RyYW5zZm9ybTogc2NhbGUoMSk7fVxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZhLXBlbmNpbCB7XHJcbiAgICBtYXJnaW46IDAgMCAwIDEwcHg7XHJcbiAgfVxyXG5cclxuICAuYXR0cmlidXRlcyB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDAgMTRweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICB9XHJcblxyXG4gICAgIC5zcGxpdGNvbnRlbnRsZWZ0IHtcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICBtYXJnaW46MCA4MHB4IDAgMDtcclxuICAgIH1cclxuXHJcbiAgICAuYXR0cmlidXRlIHtcclxuICAgICAgcGFkZGluZzowIDAgNXB4O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgICAgLnZhbHVlIHtcclxuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgICAgICBmbGV4OiAxIDA7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBtYXJnaW46IDAgMCAxcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5sYWJlbCB7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHdpZHRoOiAxNjBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG5cclxuICAuY29udGV4dHVhbCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDEwcHg7XHJcbiAgICByaWdodDogIDA7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBtYXJnaW46MCAhaW1wb3J0YW50O1xyXG4gICAgbWluLWhlaWdodDogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG5cclxuICAgIC5qb3VybmFsLWFjdGlvbnMge1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgfVxyXG4gIH1cclxuICB0YWJsZS5saXN0IHtcclxuICAgIG1hcmdpbjowO1xyXG4gICAgdGQge1xyXG4gICAgICBwYWRkaW5nOiAzcHggMTRweDtcclxuXHJcbiAgICAgICYuc3ViamVjdCBhIHtcclxuICAgICAgICBtYXJnaW46IDAgNXB4O1xyXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuYnV0dG9ucyB7XHJcbiAgICAgICAgcGFkZGluZzogM3B4IDE0cHggM3B4IDRweDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmRlc2NyaXB0aW9uIHtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgIG1hcmdpbjogNXB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIHRhYmxlLnByb2dyZXNzIHtcclxuICAgIHRkIHtcclxuICAgICAgcGFkZGluZzowO1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAgKyAucGVyY2VudCB7bWFyZ2luOiAwICFpbXBvcnRhbnQ7fVxyXG4gIH1cclxufVxyXG5cclxuZGl2Lmlzc3VlIH4gaHIge2Rpc3BsYXk6IG5vbmU7fVxyXG5cclxuZGl2LmdyYXZhdGFyLXdpdGgtY2hpbGQgPiBpbWcuZ3JhdmF0YXI6bnRoLWNoaWxkKDIpIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbmRpdi5ncmF2YXRhci13aXRoLWNoaWxkIHtcclxuICBmbG9hdDogbGVmdDtcclxuICB3aWR0aDogNDBweDtcclxuICBoZWlnaHQ6IDQwcHg7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OmNlbnRlcjtcclxuICBtYXJnaW46LTVweCAxMHB4IDEwcHggMDtcclxuXHJcbiAgaW1nLmdyYXZhdGFyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIG1hcmdpbjowO1xyXG4gIH1cclxufVxyXG4ubmV4dC1wcmV2LWxpbmtzLmNvbnRleHR1YWwge1xyXG4gIGZvbnQtc2l6ZTogMDtcclxuICBsaW5lLWhlaWdodDowO1xyXG4gIGNvbG9yOiB2YXIoLS1iZy1ib2R5KTtcclxuXHJcbiAgYVthY2Nlc3NrZXk9XCJwXCJdLFxyXG4gIGFbYWNjZXNza2V5PVwiblwiXSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0ZXh0LWluZGVudDogLTk5OTk5cHg7XHJcbiAgICBtYXJnaW46LTJweCAwIDA7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IEBwcmV2O1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgIHRleHQtaW5kZW50OiAwO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgei1pbmRleDogMztcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuXHJcbiAgICAmW2FjY2Vzc2tleT1cIm5cIl06YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBAbmV4dDtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgei1pbmRleDogMTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgfVxyXG4gICAgICAmOmFmdGVyIHtjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7fVxyXG4gICAgfVxyXG4gIH1cclxuICAucG9zaXRpb24ge1xyXG4gICAgbWFyZ2luOjAgMTBweDtcclxuICAgIGEge1xyXG4gICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgIGxpbmUtaGVpZ2h0OjIxcHg7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxudGFibGUucHJvZ3Jlc3Mge1xyXG4gIHdpZHRoOiAxNjBweDtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG5cclxuICAuYm9yZGVyLXJhZGl1cyhAcmFkKTtcclxuXHJcbiAgdGQge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSAhaW1wb3J0YW50Oy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgIWltcG9ydGFudDtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICYuY2xvc2VkIHtcclxuICAgICAgJiB+IC5kb25lLFxyXG4gICAgICAmIH4gLnRvZG8ge1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKSAwICFpbXBvcnRhbnQ7LW1vei1ib3JkZXItcmFkaXVzOiAwIHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgIWltcG9ydGFudDtib3JkZXItcmFkaXVzOiAwIHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICAmLmRvbmUge1xyXG4gICAgICAmIH4gLnRvZG8ge1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKSAwICFpbXBvcnRhbnQ7LW1vei1ib3JkZXItcmFkaXVzOiAwIHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgIWltcG9ydGFudDtib3JkZXItcmFkaXVzOiAwIHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYudG9kbyB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5wcmlvcml0eS0xIHtcclxuICAgdGFibGUucHJvZ3Jlc3Mge1xyXG4gICAgIHRkLmNsb3NlZCB7XHJcbiAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS0xKTtcclxuICAgICB9XHJcbiAgIH1cclxuIH1cclxuXHJcbi5wcmlvcml0eS0yIHtcclxuICB0YWJsZS5wcm9ncmVzcyB7XHJcbiAgICB0ZC5jbG9zZWQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS0yKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wcmlvcml0eS0zIHtcclxuICB0YWJsZS5wcm9ncmVzcyB7XHJcbiAgICB0ZC5jbG9zZWQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS0zKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wcmlvcml0eS00IHtcclxuICB0YWJsZS5wcm9ncmVzcyB7XHJcbiAgICB0ZC5jbG9zZWQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS00KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wcmlvcml0eS01IHtcclxuICB0YWJsZS5wcm9ncmVzcyB7XHJcbiAgICB0ZC5jbG9zZWQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS01KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLnByaW9yaXR5LTEsXHJcbi5wcmlvcml0eS0yLFxyXG4ucHJpb3JpdHktMyxcclxuLnByaW9yaXR5LTQsXHJcbi5wcmlvcml0eS01IHtcclxuICAucHJpb3JpdHktMSB7XHJcbiAgICB0YWJsZS5wcm9ncmVzcyB7XHJcbiAgICAgIHRkLmNsb3NlZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpb3JpdHktMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wcmlvcml0eS0yIHtcclxuICAgIHRhYmxlLnByb2dyZXNzIHtcclxuICAgICAgdGQuY2xvc2VkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS0yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnByaW9yaXR5LTMge1xyXG4gICAgdGFibGUucHJvZ3Jlc3Mge1xyXG4gICAgICB0ZC5jbG9zZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW9yaXR5LTMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucHJpb3JpdHktNCB7XHJcbiAgICB0YWJsZS5wcm9ncmVzcyB7XHJcbiAgICAgIHRkLmNsb3NlZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpb3JpdHktNCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5wcmlvcml0eS01IHtcclxuICAgIHRhYmxlLnByb2dyZXNzIHtcclxuICAgICAgdGQuY2xvc2VkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS01KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5ib2R5LmNvbnRyb2xsZXItaXNzdWVzLmFjdGlvbi1zaG93IGRpdi5pc3N1ZS5kZXRhaWxzIC5hdHRyaWJ1dGVzIHtcclxuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG59XHJcbmJvZHkuY29udHJvbGxlci1pc3N1ZXMuYWN0aW9uLXNob3cgZGl2Lmlzc3VlLmRldGFpbHMgLnNwbGl0Y29udGVudCB7XHJcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiAgU1RBUlQgSElTVE9SWSAqL1xyXG5cclxuLmluZm8tc21hbGwtZmFuY3lib3gge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IC05OTk5OTlweDtcclxuICBsZWZ0OiAtOTk5OTk5cHg7XHJcbn1cclxuXHJcbiNoaXN0b3J5LFxyXG4jaGlzdG9yeV90YWJzIHtcclxuICBkaXYudGh1bWJuYWlscyB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgZGl2IHtcclxuICAgICAgbWFyZ2luOiAwIDVweCA1cHggMDtcclxuICAgICAgYm9yZGVyOiAwO1xyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGJvcmRlci1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGJvcmRlci1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiAgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246ICBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBtaW4taGVpZ2h0OiA1MHB4O1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICBjb250ZW50OiBAc2VhcmNoO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgIG1hcmdpbjogLTEzcHggMCAwIC0xM3B4O1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjI7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jbWFpbiA+ICNjb250ZW50ICNoaXN0b3J5X3RhYnMsXHJcbiNtYWluID4gI2NvbnRlbnQgI2hpc3RvcnksXHJcbiNtYWluID4gI2NvbnRlbnQgKyAjaGlzdG9yeSB7XHJcbiAgcGFkZGluZzogMCAwIDIwcHg7XHJcbiAgYm9yZGVyOiBub25lO1xyXG4gIG1hcmdpbjowO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OjI7XHJcblxyXG4gIC5pY29uLW1hZ25pZmllciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcclxuICAgIHRvcDogLTk5OTk5OTlweDtcclxuICAgIGxlZnQ6IC05OTk5OTk5cHg7XHJcbiAgfVxyXG5cclxuICBoMyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgcGFkZGluZzogMCAwIDdweDtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOiAtMnB4O1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB3aWR0aDogNjBweDtcclxuICAgICAgaGVpZ2h0OiA0cHg7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5qb3VybmFsIHtcclxuXHJcbiAgICAmID4gZGl2IHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBwYWRkaW5nOiA1cHggMDtcclxuXHJcbiAgICAgICY6dGFyZ2V0IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgICAgbGVmdDotMzBweDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIG1pbi1oZWlnaHQ6IDI2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmdyYXZhdGFyIHtcclxuICAgICAgbWFyZ2luOiAwIDVweCA4cHggMDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xyXG4gICAgfVxyXG5cclxuICAgIGg0IHtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgbWluLWhlaWdodDogMjZweDtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuXHJcbiAgICAgIC5pY29uLWVtYWlsIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRldGFpbHMge1xyXG4gICAgICBwYWRkaW5nOjA7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICBjb2xvcjogIzM3MzczNztcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBzdHJvbmcsXHJcbiAgICAgIGIge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGkge1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmb3JtW2FjdGlvbio9XCJqb3VybmFsc1wiXSB7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwIDAgMjBweDtcclxuXHJcbiAgICBwIHtcclxuICAgICAgbWFyZ2luOiAxNXB4IDAgMDtcclxuICAgIH1cclxuXHJcbiAgICAuanN0QmxvY2sge1xyXG4gICAgICBtYXJnaW46IDAgMCAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICAgJjpob3ZlciB7XHJcbiAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgIH1cclxuXHJcbiAgICAgICYgKyBhIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmcpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3IpO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNtYWluID4gI2NvbnRlbnQgKyAjaGlzdG9yeSB7XHJcbiAgcGFkZGluZzogMjBweCAzMHB4IDIwcHg7XHJcbiAgbWFyZ2luOiAtNjJweCAwIDEwcHg7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiAxMTtcclxufVxyXG5cclxuLyogIEVORCBISVNUT1JZICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4jbmV3LXJlbGF0aW9uLWZvcm0ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDE1cHggMCAwO1xyXG4gIHAge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgfVxyXG4gIC5qY2Ytc2VsZWN0IHtcclxuICAgIG1hcmdpbjowIDEwcHggMCAwO1xyXG4gIH1cclxuICBpbnB1dC5hdXRvY29tcGxldGUge1xyXG4gICAgbWFyZ2luOiAwIDEwcHggIWltcG9ydGFudDtcclxuICB9XHJcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICBoZWlnaHQ6IDMwcHggIWltcG9ydGFudDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgLmJvcmRlci1yYWRpdXMgKHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpKSAhaW1wb3J0YW50O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDVweCAzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbWFyZ2luOiAwIDIwcHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICB9XHJcbn1cclxuI3VwZGF0ZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDExO1xyXG4gIG1hcmdpbjogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBwYWRkaW5nOiAxNXB4IDAgMDtcclxuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O2JveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gIFx0Y29udGVudDonJztcclxuICBcdGRpc3BsYXk6YmxvY2s7XHJcbiAgXHRjbGVhcjpib3RoO1xyXG4gICAgd2lkdGg6IGNhbGMoficxMDAlICsgNjBweCcpO1xyXG4gICAgaGVpZ2h0OiAxcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAtMzBweDtcclxuICB9XHJcblxyXG4gIC5jYy1saXN0LWVkaXQge1xyXG4gICAgLnNlbGVjdDIge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNjb250ZW50IHtcclxuICBmb3JtIHtcclxuICAgIC5ib3gge1xyXG4gICAgICAuY2MtbGlzdC1lZGl0IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIC5pcy1jYyB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIC0yOTVweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgd2lkdGg6IDI5NXB4O1xyXG4gICAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMDtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3VwZGF0ZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcblxyXG4gICAgJi5oaWRkZW4ge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICAuanN0QmxvY2sge1xyXG4gICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICB9XHJcblxyXG4gICAgLmJveCB7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgZmllbGRzZXQge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBwYWRkaW5nOjUycHggMjBweCAxNXB4O1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLW90aGVyKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcblxyXG4gICAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDoxN3B4O1xyXG4gICAgICAgICAgbGVmdDoyMHB4O1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGxhYmVsIHtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuICAgIC5qY2Ytc2VsZWN0IHtcclxuICAgICAgbWluLXdpZHRoOiAxOTBweDtcclxuICAgIH1cclxuICAgIC5hdHRyaWJ1dGVzIHtcclxuICAgICAgLnNwbGl0Y29udGVudCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHNlbGVjdCNpc3N1ZV9kZWFsc19pc3N1ZV9hdHRyaWJ1dGVzX2RlYWxfaWQgKyAuamNmLXNlbGVjdCB7ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O31cclxuICAgICNjaGVja2xpc3RfZm9ybSB7XHJcbiAgICAgIC5jaGVja2xpc3QtaXRlbSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICAgIC5jaGVja2xpc3Qtc3ViamVjdCB7XHJcbiAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgIH1cclxuICAgICAgaW5wdXRbdHlwZT0nY2hlY2tib3gnXSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmb3JtLm5ld19pc3N1ZSB7XHJcbiAgICAjY2hlY2tsaXN0X2Zvcm0ge1xyXG4gICAgICAuY2hlY2tsaXN0LWl0ZW0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgIH1cclxuICAgICAgaW5wdXRbdHlwZT0nY2hlY2tib3gnXSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5zcGFuLnJlcXVpcmVkIHtcclxuICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbn1cclxuXHJcbiNpc3N1ZV9pc19wcml2YXRlX3dyYXAge1xyXG4gIHBhZGRpbmc6IDAgMCAwIDEwcHg7XHJcbiAgZmxvYXQ6IG5vbmU7XHJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxufVxyXG5cclxuYS5zb3J0IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgdG9wOjUwJTtcclxuICAgIHJpZ2h0OjBweDtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBjbGVhcjpib3RoO1xyXG4gICAgaGVpZ2h0OjE4cHg7XHJcbiAgICB3aWR0aDoxOHB4O1xyXG4gICAgbWFyZ2luOiAtOXB4IDAgMDtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIHotaW5kZXg6MTtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMThweDtcclxuICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIENIRUNLIExJU1QgKi9cclxuI21haW4ge1xyXG4gICNjaGVja2xpc3RfZm9ybV9pdGVtcyB7XHJcbiAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIC5jaGVja2xpc3QtaXRlbS5uZXcge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAgIC5jaGVja2xpc3QtbmV3IHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzZweCk7XHJcbiAgICAgICAgZmxleDogMSAwIGF1dG87XHJcblxyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgc3Bhbi5pY29uIHtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7dHJhbnNmb3JtOiBzY2FsZSgxKTt9XHJcbiAgICAgICAgICAmOmFmdGVyIHtvcGFjaXR5OjE7fVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jaGVja2xpc3QtcmVtb3ZlIHtcclxuICAgICAgYSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMCA1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNpc3N1ZS1mb3JtIHtcclxuICAjd2F0Y2hlcnNfZm9ybV9jb250YWluZXIge1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAuc2VhcmNoX2Zvcl93YXRjaGVycyB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgd2lkdGg6IDI2cHg7XHJcbiAgICAgIGhlaWdodDogMjZweDtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICN3YXRjaGVyc19pbnB1dHMge1xyXG4gICAgICBwYWRkaW5nOiAwIDQwcHggMCAwO1xyXG5cclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwIHtcclxuICAgIGJyIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbjowIDAgNXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIENIRUNLIExJU1QgKi9cclxuXHJcbi5hdHRhY2htZW50c19mb3JtIHtcclxuICBzcGFuLmF0dGFjaG1lbnRzX2ZpZWxkcyB7XHJcbiAgICAmID5zcGFuIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KXtcclxuICB0YWJsZS5saXN0IHtcclxuICAgIHRoLFxyXG4gICAgdGQsXHJcbiAgICB0ZC5jaGVja2JveCB7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgdGgge1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgSVNTVUVTICovXHJcblxyXG4vKiBTVEFSVCBQQUJMSUMgVElDRVRTICovXHJcblxyXG4uY29udHJvbGxlci1wdWJsaWNfdGlja2V0cyB7XHJcbiAgJi5hY3Rpb24tc2hvdyB7XHJcblxyXG4gICAgI2hlYWRlciB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI21haW4ge1xyXG4gICAgI2NvbnRlbnQge1xyXG4gICAgICAuam91cm5hbCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweCAxNXB4IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICB3ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgPiBkaXYge1xyXG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgI3VwZGF0ZSB7XHJcbiAgICAgIC5ib3gge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBwYWRkaW5nOjIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcblxyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBQQUJMSUMgVElDRVRTICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBCQURHRSAqL1xyXG5cclxuLmNvbnRyb2xsZXItaXNzdWVzLmFjdGlvbi1zaG93IHtcclxuICAjbWFpbiB7XHJcblxyXG4gICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgJiA+IC5iYWRnZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNjBweDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMThweDtcclxuXHJcbiAgICAgICAgJi5iYWRnZS1wcml2YXRlIHtcclxuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgPi5jb250ZXh0dWFsOm5vdCgubmV4dC1wcmV2LWxpbmtzKSB7XHJcblxyXG4gICAgICAgIC5kcmRuIHtcclxuICAgICAgICAgIC5kcmRuLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAuZHJkbi10cmlnZ2VyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kcmRuLWl0ZW1zIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgICBhLmljb24ge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMCA1cHg7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgQkFER0UgKi9cclxuXHJcbi8qIFNUQVJUIE1FRElBKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcblxyXG5cclxuICAuY29udHJvbGxlci1pc3N1ZXMge1xyXG4gICAgI21haW4ge1xyXG4gICAgICAuYmFkZ2Uge1xyXG4gICAgICAgIGxlZnQ6IDEwcHg7XHJcblxyXG4gICAgICAgICYuYmFkZ2UtcHJpdmF0ZSB7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgcG9zaXRpb246IGluaGVyaXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmID4gI2NvbnRlbnQge1xyXG4gICAgICAgICAgJiA+IC5jb250ZXh0dWFsOm5vdCgubmV4dC1wcmV2LWxpbmtzKSB7XHJcblxyXG4gICAgICAgICAgICAuZHJkbi1pdGVtcyB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgICAgICAgIGEuaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItcHVibGljX3RpY2tldHMge1xyXG4gICAgJi5hY3Rpb24tc2hvdyB7XHJcblxyXG4gICAgICAjaGVhZGVyIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNjb250ZW50IHtcclxuICAgICAgI3VwZGF0ZSB7XHJcbiAgICAgICAgLmJveCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cclxuICAgICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjdGFiLWNvbnRlbnQtdGltZWxvZyB7XHJcbiAgICAjaXNzdWVfdGltZWxvZ190YWJsZSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgICBmbG9hdDogbm9uZTtcclxuICAgIH1cclxuICAgICNpc3N1ZV90aW1lbG9nIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYm9keS5jb250cm9sbGVyLWlzc3Vlc3tcclxuICAgICYuYWN0aW9uLXNob3cge1xyXG4gICAgICBkaXYuaXNzdWUuZGV0YWlscyB7XHJcbiAgICAgICAgLnZhbHVlIHtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBib2R5LmNvbnRyb2xsZXItaXNzdWVze1xyXG4gICAgJi5hY3Rpb24taW5kZXgge1xyXG4gICAgICAjbWFpbiB7XHJcbiAgICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMTBQWDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5xdWVyeS10b3RhbHMge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCAxMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuYXV0b3Njcm9sbCB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29udHJvbGxlci1pc3N1ZXMge1xyXG4gICAgJi5hY3Rpb24taW5kZXgge1xyXG4gICAgICB0YWJsZS5saXN0IHtcclxuICAgICAgICB0cjpub3QoLmdyb3VwKXtcclxuICAgICAgICAgIHRkLFxyXG4gICAgICAgICAgdGgge1xyXG4gICAgICAgICAgICAmOm5vdCguaWQpOm5vdCguc3ViamVjdCk6bm90KC5idXR0b25zKTpub3QoLmFzc2lnbmVkX3RvKSB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIHRoLFxyXG4gICAgICAgICAgdGR7XHJcbiAgICAgICAgICAgICYuc3ViamVjdCxcclxuICAgICAgICAgICAgJi5hc3NpZ25lZF90byB7XHJcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgI3F1ZXJ5X2Zvcm0ge1xyXG4gICAgICAgIC5ob2xkZXItZmlsdGVycyB7XHJcbiAgICAgICAgICAuaW4tZmlsdGVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAwIDEwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudmFsdWUge1xyXG4gICAgLmZhLFxyXG4gICAgLmR5bmFtaWNFZGl0IHtcclxuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm9wZW4tc2lkZWJhci1saW5rIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAubmV4dC1wcmV2LWxpbmtzLmNvbnRleHR1YWwgYVthY2Nlc3NrZXk9XCJwXCJdOmJlZm9yZSxcclxuICAubmV4dC1wcmV2LWxpbmtzLmNvbnRleHR1YWwgYVthY2Nlc3NrZXk9XCJuXCJdOmJlZm9yZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgYm9keS5jb250cm9sbGVyLWlzc3VlcyB7XHJcblxyXG4gICAgI3F1ZXJ5X2Zvcm1fd2l0aF9idXR0b25zIHtcclxuICAgICAgLmhvbGRlci1maWx0ZXJzIHtcclxuICAgICAgICAuaW4tZmlsdGVyIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgMTBweCAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5xdWVyeS10b3RhbHMge1xyXG4gICAgICBwYWRkaW5nOiAwIDEwcHggMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAmLmFjdGlvbi1zaG93e1xyXG4gICAgICAmLmxvZ2dlZGFzLFxyXG4gICAgICAmLmlzc3Vlcy1jb250ZXh0dWFsIHtcclxuICAgICAgICAjd3JhcHBlcjIge1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICB9XHJcbiAgICAgICAgI21haW4gI2NvbnRlbnQgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDUwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBsZWZ0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAgIC5pY29uLFxyXG4gICAgICAgICAgLmFzc2lnbi10by1tZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDVweDtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uLWJnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5kcmRuLWl0ZW1zIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAgICAgICAgIGEuaWNvbiB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDVweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJi5oaWRkZW4tbGluayB7XHJcbiAgICAgICAgICAgIC5pY29uOm5vdCgubmV3LWljb24pIHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5hY3Rpb24tc2hvdyB7XHJcbiAgICAgICNtYWluICNjb250ZW50IHtcclxuXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xyXG4gICAgICAgICAgcGFkZGluZzogMTVweCA3NXB4IDE1cHggNDVweDtcclxuICAgICAgICAgIG1hcmdpbjogMCAtMTBweCAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcC5vdGhlci1mb3JtYXRzIHtcclxuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmFjdGlvbi1zaG93IHtcclxuICAgICAgI2lzc3VlX3RyZWUsXHJcbiAgICAgICNyZWxhdGlvbnMge1xyXG4gICAgICAgIHRhYmxlLmxpc3Qge1xyXG4gICAgICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAgICAgICAmID4gdGJvZHkgPiB0ciB7XHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICYgPiB0ZCB7XHJcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgICAtbW96LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgICAgLW1vei1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICYgPiB0ZCB7XHJcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgICAtbW96LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgICAgLW1vei1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRyLmlzc3VlIHtcclxuICAgICAgdGFibGUucHJvZ3Jlc3Mge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDE2MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2lzc3VlX3RyZWUgLFxyXG4gICAgI3JlbGF0aW9ucyB7XHJcblxyXG4gICAgICB0ci5pc3N1ZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgICAgICAgJiA+IHRkIHtcclxuICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcikgIWltcG9ydGFudDtcclxuICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgd2lkdGg6IDMzLjMzMzMlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICAgICY6bm90KC5jaGVja2JveCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJi5zdWJqZWN0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLmJ1dHRvbnMge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuYWN0aW9uLWluZGV4IHtcclxuICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgICYgPiAubm9kYXRhLFxyXG4gICAgICAgICYgPiAud2FybmluZyB7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluID4gI2NvbnRlbnQgKyAjaGlzdG9yeSB7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICB9XHJcblxyXG4gICNtYWluID4gI2NvbnRlbnQge1xyXG4gICAgI2hpc3RvcnksXHJcbiAgICAmICsgI2hpc3Rvcnkge1xyXG4gICAgICAuam91cm5hbCB7XHJcbiAgICAgICAgaDR7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMTBweDtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICAgICAgICBtaW4taGVpZ2h0OiAyNnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiA+IGRpdjp0YXJnZXQge1xyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGxlZnQ6IC0xMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbWFpbiB7XHJcbiAgICAudG9nZ2xlLW11bHRpc2VsZWN0LFxyXG4gICAgc3Bhbi50b2dnbGUtbXVsdGlzZWxlY3QuaWNvbi1vbmx5IHtcclxuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdGFibGUubGlzdCB7XHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG5cclxuICAgICYgPiB0Ym9keSB7XHJcbiAgICAgICYgPiB0cjpob3ZlciA+IHRkLFxyXG4gICAgICAmID4gdHIuaXNzdWUuaWRudCA+IHRkLFxyXG4gICAgICAmID4gdHIuaXNzdWUuY29udGV4dC1tZW51LXNlbGVjdGlvbiA+IHRkLFxyXG4gICAgICAmID4gdHI6aG92ZXIgPiB0ZC5jaGVja2JveCxcclxuICAgICAgJiA+IHRyLmlzc3VlLmlkbnQgPiB0ZC5jaGVja2JveCxcclxuICAgICAgJiA+IHRyLmlzc3VlLmNvbnRleHQtbWVudS1zZWxlY3Rpb24gPiB0ZC5jaGVja2JveCxcclxuICAgICAgJiA+IHRyOmhvdmVyID4gdGQuc3ViamVjdCxcclxuICAgICAgJiA+IHRyLmlzc3VlLmlkbnQgPiB0ZC5zdWJqZWN0LFxyXG4gICAgICAmID4gdHIuaXNzdWUuY29udGV4dC1tZW51LXNlbGVjdGlvbiA+IHRkLnN1YmplY3Qge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAjbWFpbiB7XHJcbiAgICBkaXYuaXNzdWUge1xyXG4gICAgICAuc3ViamVjdCB7XHJcbiAgICAgICAgZGl2OmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuY29udHJvbGxlci1pc3N1ZXMge1xyXG4gICAgI21haW4ge1xyXG4gICAgICAuYmFkZ2Uge1xyXG4gICAgICAgIHRvcDogNTRweDtcclxuICAgICAgICBsZWZ0OiAxMHB4O1xyXG5cclxuICAgICAgICAmLmJhZGdlLXByaXZhdGUge1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICN3cmFwcGVyIHtcclxuICAgIHRyLmdyb3VwIHtcclxuICAgICAgc3Bhbi50b3RhbHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI25ldy1yZWxhdGlvbi1mb3JtIHtcclxuICAgIHAge1xyXG4gICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICBtYXJnaW46IDEwcHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLWlzc3VlcyB7XHJcbiAgICAmLmFjdGlvbi1pbmRleCB7XHJcbiAgICAgIHRhYmxlLmxpc3Qge1xyXG4gICAgICAgIHRye1xyXG4gICAgICAgICAgdGQsXHJcbiAgICAgICAgICB0aCB7XHJcbiAgICAgICAgICAgJi5hc3NpZ25lZF90byB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2lzc3VlLWZvcm0gI3dhdGNoZXJzX2Zvcm1fY29udGFpbmVyIHtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgfVxyXG5cclxuICAuam91cm5hbC1saW5rIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIGJvZHkuY29udHJvbGxlci1pc3N1ZXMge1xyXG4gICAgLnF1ZXJ5LXRvdGFscyB7XHJcbiAgICAgIC50b3RhbC1mb3ItZXN0aW1hdGVkLWhvdXJzIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG5cclxuICAgICAgLnRvdGFsLWZvci1zcGVudC1ob3VycyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiA1cHggMCAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItaXNzdWVzLmFjdGlvbi1pbmRleCAjbWFpbiAjY29udGVudCxcclxuICAuY29udHJvbGxlci1rZXlzLmFjdGlvbi1pbmRleCAjbWFpbiAjY29udGVudCB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgIGRpdi5pc3N1ZSB7XHJcbiAgICAgIHBhZGRpbmc6IDIwcHggMCAwO1xyXG4gICAgfVxyXG5cclxuICAgICN6ZW4tZHJhZnQge1xyXG4gICAgICAjYXBwbHktemVuLWRyYWZ0IHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgICAjY2FuY2VsLXplbi1kcmFmdCB7XHJcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluID4gI2NvbnRlbnQge1xyXG4gICAgI2hpc3RvcnksXHJcbiAgICAmICsgI2hpc3Rvcnkge1xyXG4gICAgICBmb3JtW2FjdGlvbio9XCJqb3VybmFsc1wiXSB7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICBtYXJnaW46IDAgLTEwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgI3VwZGF0ZSB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcblxyXG4gICAgICAuYm94IHtcclxuICAgICAgICBvdmVyZmxvdzogaW5oZXJpdDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICBmaWVsZHNldCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcblxyXG4gICAgICAgICAgbGVnZW5kIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBsZWZ0OjAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgIGxlZnQ6IC0xMHB4O1xyXG4gICAgICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctbW9iaWxlKTtcclxuICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ib3gge1xyXG4gICAgICBvdmVyZmxvdzogaW5oZXJpdDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgZmllbGRzZXQge1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG5cclxuICAgICAgICBsZWdlbmQge1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICBsZWZ0OjAgIWltcG9ydGFudDtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMDtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAtMTBweDtcclxuICAgICAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLW1vYmlsZSk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5hZGRfYXR0YWNobWVudCB7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI25ldy1yZWxhdGlvbi1mb3JtIHtcclxuXHJcbiAgICBpbnB1dC5hdXRvY29tcGxldGUge1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgZGl2LmdyYXZhdGFyLXdpdGgtY2hpbGQge1xyXG4gICAgd2lkdGg6IDQwcHg7XHJcbiAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgfVxyXG5cclxuICAjY29udGVudCB7XHJcbiAgICAjbmV3LXJlbGF0aW9uLWZvcm0sXHJcbiAgICBmb3JtLm5ld19vcGVyYXRpb25fb2JqZWN0LFxyXG4gICAgZm9ybS5lZGl0X3JlbGF0aW9uIHtcclxuICAgICAgcCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgICAgc2VsZWN0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuamNmLXNlbGVjdCB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0uYXV0b2NvbXBsZXRlIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW46NXB4IDAgMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29udHJvbGxlci1pc3N1ZXMuYWN0aW9uLW5ldyB7XHJcbiAgI2NoYW5nZV9hdXRob3Ige1xyXG4gICAgJiA+IGEge1xyXG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29udHJvbGxlci1pc3N1ZXMuYWN0aW9uLXNob3cge1xyXG4gIC5tb2Qtb2JqIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4vKiAzMC4wMy4yMDIyICovXHJcbi5jb250cm9sbGVyLWlzc3VlcyB7XHJcbiAgLnJlZnJlc2hEYXRhIHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgbWFyZ2luOjA7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6MjtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBmb250LXNpemU6MHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6MHB4O1xyXG4gICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogQHJlbG9hZDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICBtYXJnaW46MDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgei1pbmRleDoxO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlKTtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubGlzdCB7XHJcbiAgICAucmVmcmVzaERhdGEge1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICBtaW4td2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jY29udGVudCB7XHJcbiAgI2NoYW5nZV9hdXRob3Ige1xyXG4gICAgLmljb24tZWRpdCB7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIFNUQVJUIFRFU1QgREVTQ1JJUFRJT04gKi9cclxuXHJcbi5jb250cm9sbGVyLWlzc3Vlcy5hY3Rpb24taW5kZXgge1xyXG4gIHRhYmxlLmxpc3Qge1xyXG4gICAgdGQuYnV0dG9ucyB7XHJcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG5cclxuICAgICAgLmxpc3QtaW5uZXItYm94IHtcclxuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmlubmVyLWJveCB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWZsb3c6IHdyYXA7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmhvbGRlci1kZXNjcmlwdGlvbiB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAub3Blbi1ib3gtZGVzIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMTAwJTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbWF4LWhlaWdodDogMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgLm9wZW4tY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5vcGVuIHtcclxuICAgIHotaW5kZXg6IDEwO1xyXG5cclxuICAgIC5vcGVuLWJveC1kZXMge1xyXG4gICAgICBtYXgtaGVpZ2h0OiAyMDAwcHg7XHJcblxyXG4gICAgICAub3Blbi1jb250ZW50IHtcclxuXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuXHJcbi8qIHNjcm9sbGJhcnMgKi9cclxuLmpjZi1zY3JvbGxhYmxlLXdyYXBwZXIge1xyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG4uamNmLXNjcm9sbGJhci12ZXJ0aWNhbCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1zY3JvbGwtYmcpO1xyXG4gIHdpZHRoOiBAd2JhcjtcclxuICBib3R0b206IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHotaW5kZXg6IDEwO1xyXG59XHJcbi5qY2Ytc2VsZWN0LWRyb3AgLmpjZi1zY3JvbGxiYXItdmVydGljYWwge1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxufVxyXG4uamNmLXNjcm9sbGJhci12ZXJ0aWNhbCAuamNmLXNjcm9sbGJhci1kZWMsXHJcbi5qY2Ytc2Nyb2xsYmFyLXZlcnRpY2FsIC5qY2Ytc2Nyb2xsYmFyLWluYyB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICBoZWlnaHQ6IEBoVXBEb3duO1xyXG4gIHdpZHRoOiBAd2JhcjtcclxuICBsZWZ0OiAwO1xyXG4gIHRvcDogMDtcclxufVxyXG4uamNmLXNjcm9sbGJhci12ZXJ0aWNhbCAuamNmLXNjcm9sbGJhci1pbmMge1xyXG4gIHRvcDogYXV0bztcclxuICBib3R0b206IDA7XHJcbn1cclxuLmpjZi1zY3JvbGxiYXItdmVydGljYWwgLmpjZi1zY3JvbGxiYXItaGFuZGxlIHtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1zY3JvbGwtaGFuZGxlKTtcclxuICBoZWlnaHQ6IDFweDtcclxuICB3aWR0aDogQHdiYXI7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG59XHJcbi5qY2Ytc2Nyb2xsYmFyLWhvcml6b250YWwge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1zY3JvbGwtYmcpO1xyXG4gIHJpZ2h0OiBhdXRvO1xyXG4gIHRvcDogYXV0bztcclxuICBsZWZ0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICB3aWR0aDogMXB4O1xyXG4gIGhlaWdodDogMTRweDtcclxufVxyXG4uamNmLXNjcm9sbGJhci1ob3Jpem9udGFsIC5qY2Ytc2Nyb2xsYmFyLWRlYyxcclxuLmpjZi1zY3JvbGxiYXItaG9yaXpvbnRhbCAuamNmLXNjcm9sbGJhci1pbmMge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgYmFja2dyb3VuZDogI2JiYjtcclxuICBoZWlnaHQ6IDE0cHg7XHJcbiAgd2lkdGg6IEB3YmFyO1xyXG59XHJcbi5qY2Ytc2Nyb2xsYmFyLWhvcml6b250YWwgLmpjZi1zY3JvbGxiYXItaW5jIHtcclxuICBsZWZ0OiBhdXRvO1xyXG4gIHJpZ2h0OiAwO1xyXG59XHJcbi5qY2Ytc2Nyb2xsYmFyLWhvcml6b250YWwgLmpjZi1zY3JvbGxiYXItc2xpZGVyIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGhlaWdodDogMTRweDtcclxufVxyXG4uamNmLXNjcm9sbGJhci1ob3Jpem9udGFsIC5qY2Ytc2Nyb2xsYmFyLWhhbmRsZSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLXNjcm9sbC1oYW5kbGUpO1xyXG4gIGhlaWdodDogMTRweDtcclxufVxyXG4uamNmLXNjcm9sbGJhci5qY2YtaW5hY3RpdmUgLmpjZi1zY3JvbGxiYXItaGFuZGxlIHtcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbn1cclxuLmpjZi1zY3JvbGxiYXIuamNmLWluYWN0aXZlIC5qY2Ytc2Nyb2xsYmFyLWRlYyxcclxuLmpjZi1zY3JvbGxiYXIuamNmLWluYWN0aXZlIC5qY2Ytc2Nyb2xsYmFyLWluYyB7XHJcbiAgYmFja2dyb3VuZDogI2UzZTNlMztcclxufVxyXG4uamNmLXNlbGVjdCB7XHJcbiAgZm9udC1mYW1pbHk6IEBnZmY7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIG1pbi13aWR0aDogMTUwcHg7XHJcbiAgaGVpZ2h0OiAzMHB4O1xyXG4gIG1pbi1oZWlnaHQ6IDMwcHg7XHJcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICB3aWR0aDogMTAwJTtcclxuICBmbGV4OiAxO1xyXG59XHJcblxyXG4uamNmLXNlbGVjdCBzZWxlY3Qge1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgbGVmdDogMDtcclxuICB0b3A6IDA7XHJcbn1cclxuLmpjZi1zZWxlY3QgLmpjZi1zZWxlY3QtdGV4dCB7XHJcbiAgdGV4dC1vdmVyZmxvdzplbGxpcHNpcztcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zaXplOiBAZnMxMjtcclxuICBsaW5lLWhlaWdodDogMS4xO1xyXG4gIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luOiA4cHggNDRweCA4cHggMTBweDtcclxuICB6LWluZGV4OiAxO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuLmpjZi1zZWxlY3QgLmpjZi1zZWxlY3QtdGV4dCA+IHNwYW4ge1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG59XHJcbi5qY2Ytc2VsZWN0IC5qY2Ytc2VsZWN0LW9wZW5lciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBoZWlnaHQ6IDMwcHg7XHJcbiAgd2lkdGg6IDMwcHg7XHJcbiAgcmlnaHQ6IDBweDtcclxuICB0b3A6IDA7XHJcbiAgei1pbmRleDogMjtcclxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gIFx0ZGlzcGxheTpibG9jaztcclxuICBcdGNsZWFyOmJvdGg7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIHRvcDowcHg7XHJcbiAgICBsZWZ0OjBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmstZ3JleSk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgZm9udC1mYW1pbHk6IEBmb250SWNvbjtcclxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgfVxyXG59XHJcbi5qY2Ytc2VsZWN0OmhvdmVyLFxyXG4uamNmLXNlbGVjdC5qY2YtZHJvcC1hY3RpdmUge1xyXG4gIC5qY2Ytc2VsZWN0LW9wZW5lciB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLWpjZi1kcm9wLWFjdGl2ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5qY2Ytc2VsZWN0LmpjZi1kcm9wLWFjdGl2ZSAuamNmLXNlbGVjdC1vcGVuZXI6YWZ0ZXIge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG59XHJcbmJvZHkgPiAuamNmLXNlbGVjdC1kcm9wIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbWFyZ2luOiAtMXB4IDAgMDtcclxuICBwYWRkaW5nOiAwIDAgMXB4O1xyXG4gIHotaW5kZXg6IDk5OTk7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICBmb250LXNpemU6IEBnZnM7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxufVxyXG4uamNmLXNlbGVjdCAuamNmLXNlbGVjdC1kcm9wIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbWFyZ2luLXRvcDogMHB4O1xyXG4gIHotaW5kZXg6IDk5OTk7XHJcbiAgdG9wOiAxMDAlO1xyXG4gIGxlZnQ6IC0xcHg7XHJcbiAgcmlnaHQ6IC0xcHg7XHJcbn1cclxuLmpjZi1zZWxlY3QgLmpjZi1kcm9wLWZsaXBwZWQge1xyXG4gIGJvdHRvbTogMTAwJTtcclxuICB0b3A6IGF1dG87XHJcbn1cclxuLmpjZi1zZWxlY3QuamNmLWNvbXBhY3QtbXVsdGlwbGUge1xyXG4gIG1heC13aWR0aDogMjIwcHg7XHJcbn1cclxuLmpjZi1zZWxlY3QuamNmLWNvbXBhY3QtbXVsdGlwbGUgLmpjZi1zZWxlY3Qtb3BlbmVyOmJlZm9yZSB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHBhZGRpbmctdG9wOiAycHg7XHJcbiAgY29udGVudDogJy4uLic7XHJcbn1cclxuLmpjZi1zZWxlY3QtZHJvcC5qY2YtY29tcGFjdC1tdWx0aXBsZSAuamNmLWhvdmVyIHtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG59XHJcbi5qY2Ytc2VsZWN0LWRyb3AuamNmLWNvbXBhY3QtbXVsdGlwbGUgLmpjZi1zZWxlY3RlZCB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZGFyay1ncmV5KTtcclxuICBjb2xvcjogdmFyKC0tYmctZmZmKTtcclxufVxyXG4uamNmLXNlbGVjdC1kcm9wLmpjZi1jb21wYWN0LW11bHRpcGxlIC5qY2Ytc2VsZWN0ZWQ6YmVmb3JlIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgY29udGVudDogJyc7XHJcbiAgaGVpZ2h0OjRweDtcclxuICB3aWR0aDo4cHg7XHJcbiAgbWFyZ2luOi03cHggNXB4IDAgLTNweDtcclxuICBib3JkZXI6M3B4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgYm9yZGVyLXdpZHRoOjAgMCAzcHggM3B4O1xyXG4gIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5NYXRyaXgoTTExPTAuNzA3MTA2NzgxMTg2NTQ4MywgTTEyPTAuNzA3MTA2NzgxMTg2NTQ2NywgTTIxPS0wLjcwNzEwNjc4MTE4NjU0NjcsIE0yMj0wLjcwNzEwNjc4MTE4NjU0ODMsIFNpemluZ01ldGhvZD0nYXV0byBleHBhbmQnKVwiO1xyXG59XHJcblxyXG4vKiBtdWx0aXBsZSBzZWxlY3Qgc3R5bGVzICovXHJcbi5qY2YtbGlzdC1ib3gge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgbWluLXdpZHRoOiAyMDBweDtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXJnaW46IDA7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgLmpjZi1zY3JvbGxiYXItaG9yaXpvbnRhbCB7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgfVxyXG59XHJcbi8qIHNlbGVjdCBvcHRpb25zIHN0eWxlcyAqL1xyXG4uamNmLWxpc3Qge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICBtaW4taGVpZ2h0OiAzMHB4O1xyXG59XHJcbi5qY2YtbGlzdCAuamNmLWxpc3QtY29udGVudCB7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG59XHJcbi5qY2YtbGlzdCB1bCB7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG4uamNmLWxpc3QgdWwgbGkge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDE7XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDonJztcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBjbGVhcjpib3RoO1xyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICB0b3A6MHB4O1xyXG4gICAgbGVmdDoxMHB4O1xyXG4gICAgaGVpZ2h0OiAxcHg7XHJcbiAgICB3aWR0aDogY2FsYyh+JzEwMCUgLSAyMHB4Jyk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gIH1cclxuXHJcbiAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgZGlzcGxheTogbm9uZTt9XHJcbiAgfVxyXG59XHJcbi5qY2YtbGlzdCAuamNmLW92ZXJmbG93IHtcclxuICBvdmVyZmxvdzogYXV0bztcclxufVxyXG4uamNmLWxpc3QgLmpjZi1vcHRpb24ge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgbWluLWhlaWdodDogMTRweDtcclxuICBmb250LXNpemU6IEBmczEyO1xyXG4gIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gIGhlaWdodDogMSU7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDonJztcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBjbGVhcjpib3RoO1xyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYWxsLWhvdmVyLWJnKTtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gIH1cclxuXHJcbiAgJi5qY2YtZGlzYWJsZWQge1xyXG4gICAgY29sb3I6ICNhYWEgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmOmhvdmVyIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLmpjZi1zZWxlY3QtZHJvcCAuamNmLWhvdmVyLFxyXG4uamNmLWxpc3QtYm94IC5qY2Ytc2VsZWN0ZWQge1xyXG4gIGNvbG9yOiB2YXIoLS1qY2YtZHJvcC1hY3RpdmUpO1xyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxufVxyXG4uamNmLWxpc3QgLmpjZi1vcHRncm91cC1jYXB0aW9uIHtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDVweCA5cHg7XHJcbiAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG59XHJcbi5qY2YtbGlzdCAuamNmLW9wdGdyb3VwIC5qY2Ytb3B0aW9uIHtcclxuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbn1cclxuLyogY29tbW9uIHN0eWxlcyAqL1xyXG4uamNmLWRpc2FibGVkIHtiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1kYXJrLWdyZXkpICFpbXBvcnRhbnQ7fVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLmpjZi1zZWxlY3Qtc2VsZWN0Mi1oaWRkZW4tYWNjZXNzaWJsZSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogLTk5OTk5OXB4O1xyXG4gIGxlZnQ6IC05OTk5OTlweDtcclxufVxyXG5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTE9HSU4gKyBSRUdJU1RSICsgRk9SR0VUIFBBU1NXT1JEICovXHJcbi5jb250cm9sbGVyLWFjY291bnQge1xyXG4gIGRpc3BsYXk6IHRhYmxlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG5cclxuICAudGFidWxhciBwIHtcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gICYuc3RhcnQge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjaGVhZGVyLFxyXG4gICNzaWRlYmFyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogLTk5OTk5OXB4O1xyXG4gICAgbGVmdDogLTk5OTk5OXB4O1xyXG4gIH1cclxuXHJcbiAgI3dyYXBwZXIge1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAjd3JhcHBlcjIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjd3JhcHBlcjMge1xyXG4gICAgcGFkZGluZy10b3A6IDgwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICB9XHJcblxyXG4gIC5ib3gge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgd29yZC13cmFwOiBpbml0aWFsO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiA0NDBweDtcclxuICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAjbWFpbiAjY29udGVudCB7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgIHBhZGRpbmc6IDE1NXB4IDMwcHggMzBweDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiA2NDhweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6dmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MzBweDtcclxuICAgICAgbGVmdDowO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvcmVkbWluZS1ldm9sdXRpb24uc3ZnXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS1iZy1mZmYpO1xyXG4gICAgfVxyXG5cclxuICAgIGgyIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBmb250LXNpemU6IDEuNzE0cmVtO1xyXG4gICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5ib3gge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRhYnVsYXIge1xyXG5cclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW4tbGVmdDogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBwIHtcclxuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBsYWJlbFtmb3I9XCJ1c2VyX2xhbmd1YWdlXCJdLFxyXG4gICAgICBsYWJlbFtmb3I9XCJ1c2VyX2xhbmd1YWdlXCJdIH4gLnNlbGVjdDIge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmxpc3QtYnV0dG9ucyB7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIGxpc3Qtc3R5bGU6bm9uZTtcclxuICAgIHBhZGRpbmc6MzBweCAwIDA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG5cclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWxpbmspO1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOjBweDtcclxuICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcbiAgICAgICY6aG92ZXI6YWZ0ZXIge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaG9sZGVyLWJvdHRvbi1sb2dpbiB7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDAgMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgJiA+IGlucHV0W3R5cGU9XCJzdWJtaXRcIl17XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnKTtcclxuICAgICAgZm9udC1zaXplOiAxLjI4NTdyZW07XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgICBib3JkZXI6IDAgbm9uZTtcclxuICAgICAgcGFkZGluZzogMTJweCAxMnB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIG91dGxpbmU6IDAgbm9uZTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBsYWJlbFtmb3I9XCJ1c2VyX2xhbmd1YWdlXCJdIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luOiAwIDAgMTBweCAwO1xyXG4gIH1cclxuXHJcbiAgYS5sb2dpbixcclxuICBhLnJlZ2lzdGVyIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcblxyXG4gICAgJjpob3ZlciB7XHJcblxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4jbG9naW4tZm9ybSB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYm9yZGVyOiBub25lO1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAuaG9sZGVyLWxvZ2luIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAmLmhvbGRlci1ib3R0b24tbG9naW4ge1xyXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYWN0aW9uLXJlZ2lzdGVyICNuZXdfdXNlcixcclxuLmFjdGlvbi1sb3N0X3Bhc3N3b3JkICNjb250ZW50IGZvcm0sXHJcbiN3cmFwcGVyICNsb2dpbi1mb3JtIHtcclxuICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcclxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXHJcbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxyXG4gIGlucHV0W3R5cGU9XCJ0ZWxcIl0ge1xyXG4gICAgd2lkdGg6MTAwJSAhaW1wb3J0YW50O1xyXG4gICAgbWF4LXdpZHRoOiBpbmhlcml0O1xyXG4gICAgaGVpZ2h0OmF1dG87XHJcbiAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgIGJhY2tncm91bmQ6bm9uZTtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgcGFkZGluZzo1cHggMCA1cHggMDtcclxuICAgIG1hcmdpbjoyMHB4IDAgMTVweDtcclxuICAgIGJvcmRlcjogMCBub25lO1xyXG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tY29sb3ItZ3JleSk7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJvcmRlci1ib3R0b20gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGJvcmRlci1ib3R0b20gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICB9XHJcblxyXG4gIGxhYmVsIHtcclxuICAgIHdpZHRoOmF1dG87XHJcbiAgICBmbG9hdDpub25lO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgIG1hcmdpbjowIDAgNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGxlZnQ6MDtcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgdG9wOjE1cHg7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICZbZm9yPVwicHJlZl9oaWRlX21haWxcIl0sXHJcbiAgICAmW2Zvcj1cInVzZXJfbGFuZ3VhZ2VcIl17XHJcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICB9XHJcblxyXG4gICAgJltmb3I9XCJhdXRvbG9naW5cIl0ge1xyXG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaW5wdXRbdHlwZT1cInRleHRcIl0sXHJcbiAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxyXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcclxuICBpbnB1dFt0eXBlPVwidGVsXCJdIHtcclxuICAgICY6dmFsaWQsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG5cclxuICAgICAgJiArIGxhYmVsIHtcclxuICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6LXdlYmtpdC1hdXRvZmlsbCB7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuXHJcbiAgICAgICYgKyBsYWJlbCB7XHJcbiAgICAgICAgdG9wOjBweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOi13ZWJraXQtYXV0b2ZpbGwsXHJcbiAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOi13ZWJraXQtYXV0b2ZpbGwsXHJcbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOi13ZWJraXQtYXV0b2ZpbGwsXHJcbiAgaW5wdXRbdHlwZT1cInRlbFwiXTotd2Via2l0LWF1dG9maWxsIHtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgMTAwMHB4IHZhcigtLWNvbG9yLWZmZikgaW5zZXQgIWltcG9ydGFudDtcclxuICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4uYWN0aW9uLXJlZ2lzdGVyLFxyXG4uYWN0aW9uLWxvc3RfcGFzc3dvcmQge1xyXG4gIHAge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxufVxyXG5cclxuLmFjdGlvbi1yZWdpc3RlciAjY29udGVudCBmb3JtIHtcclxuXHJcbiAgZW0uaW5mbyB7XHJcbiAgICBmb250LXNpemU6MTFweDtcclxuICAgIGxpbmUtaGVpZ2h0OjEzcHg7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBtYXJnaW46IC04cHggMCA4cHg7XHJcbiAgfVxyXG5cclxuICBsYWJlbFtmb3I9XCJwcmVmX2hpZGVfbWFpbFwiXSB7XHJcbiAgICBmbGV4OiAxICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW46IDE1cHggMCAxNXB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICBsYWJlbFtmb3I9XCJ1c2VyX2xhbmd1YWdlXCJde1xyXG4gICAgZmxleDogMSAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuXHJcbiAgLmpjZi1zZWxlY3Qge1xyXG4gICAgZmxleDogMTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAxNXB4IDAgMTVweDtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuICB9XHJcblxyXG4gIHNwYW4ucmVxdWlyZWQge1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLmFjdGlvbi1sb2dvdXQge1xyXG4gICNjb250ZW50IHtcclxuICAgIGZvcm0ge1xyXG4gICAgICBwIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIFNUQVJUIE1FRElBICovXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gIC5jb250cm9sbGVyLWFjY291bnQge1xyXG4gICAgI21haW4ge1xyXG4gICAgICAjY29udGVudCB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlIC0gMjBweCcpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gIC5jb250cm9sbGVyLWFjY291bnQge1xyXG4gICAgI21haW4ge1xyXG4gICAgICAjY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZzogOTBweCAyMHB4IDMwcHg7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgdG9wOiAxNXB4O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItYWNjb3VudCB7XHJcbiAgICAjbWFpbiB7XHJcbiAgICAgICNjb250ZW50IHtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBmczE4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGgyO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjbG9naW4tZm9ybSB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAjbmV3X3VzZXIgLmhvbGRlci1ib3R0b24tbG9naW4ge1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHggIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTAwcHgpIHtcclxuICAuY29udHJvbGxlci1hY2NvdW50IHtcclxuICAgICNtYWluIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBTVEFSVCBMT0dJTiArIFJFR0lTVFIgKyBGT1JHRVQgUEFTU1dPUkQgKi9cclxuXHJcbi5jb250cm9sbGVyLWFjY291bnQge1xyXG4gICYuYWN0aW9uLWxvZ291dCB7XHJcbiAgICAjbWFpbiB7XHJcbiAgICAgIHotaW5kZXg6IDE0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBNQUlOIE1FTlUgKi9cclxuXHJcbiN3cmFwcGVyMyA+ICNtYWluLW1lbnUsXHJcbiN3cmFwcGVyMyA+ICNhZG1pbi1tZW51IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAtOTk5OTk5cHg7XHJcbiAgbGVmdDogLTk5OTk5OXB4O1xyXG59XHJcblxyXG4uaGFzLW1haW4tbWVudSB7XHJcbiAgJi5iaWctbWVudSB7XHJcbiAgICAjd3JhcHBlcjMgPiAjbWFpbi1tZW51LFxyXG4gICAgI3dyYXBwZXIzID4gI2FkbWluLW1lbnUge1xyXG4gICAgICAub3Blbi1tYWluLW1lbnUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IC05OTk5OTlweDtcclxuICAgICAgICBsZWZ0OiAtOTk5OTk5OXB4O1xyXG5cclxuICAgICAgICAubmF2LWljb24ge1xyXG4gICAgICAgICAgc3BhbjpudGgtY2hpbGQoMSkge1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgICAgICB0b3A6IDBweDtcclxuICAgICAgICAgICAgbGVmdDogM3B4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgc3BhbjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgICAgICB3aWR0aDogMCU7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgc3BhbjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgICAgdG9wOiAxNHB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAycHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuamNmLXNjcm9sbGJhci1ob3Jpem9udGFsIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiN3cmFwcGVyMyA+ICNhZG1pbi1tZW51IGEuc2VsZWN0ZWQge1xyXG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxufVxyXG4uaGFzLW1haW4tbWVudSB7XHJcbiAgI3dyYXBwZXIge1xyXG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xyXG4gIH1cclxuICAjdG9wLW1lbnUge1xyXG4gICAgd2lkdGg6IGNhbGMoficxMDAlIC0gNjBweCcpO1xyXG4gIH1cclxuXHJcbiAgI3dyYXBwZXIzID4gI21haW4tbWVudSxcclxuICAjd3JhcHBlcjMgPiAjYWRtaW4tbWVudSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZyk7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiA1MHB4IDAgMDtcclxuICAgIHotaW5kZXg6IDEyO1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQpO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAuamNmLXNjcm9sbGFibGUtd3JhcHBlciB7XHJcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAuamNmLXNjcm9sbGFibGUge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGFicy1idXR0b25zIHtcclxuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5vcGVuLW1lbnUtYm94IHtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgcGFkZGluZzogNXB4IDVweCAxMHB4O1xyXG4gICAgICBoZWlnaHQ6IDQ1cHg7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDVweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3JlZG1pbmUtZXZvbHV0aW9uLW1lbnUuc3ZnKSAwIDAgbm8tcmVwZWF0O1xyXG4gICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgIFx0Y29udGVudDonJztcclxuICAgICAgXHRkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBcdGNsZWFyOmJvdGg7XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgd2lkdGg6IDUwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYm9yZGVyLWNvbG9yLWxvZ28pO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTotMXB4O1xyXG4gICAgICAgIGxlZnQ6IDVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5vcGVuLW1haW4tbWVudSB7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IC05OTk5OTlweDtcclxuICAgICAgbGVmdDogLTk5OTk5OTlweDtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICBcdGNvbnRlbnQ6Jyc7XHJcbiAgICAgIFx0ZGlzcGxheTpibG9jaztcclxuICAgICAgXHRjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5uYXYtaWNvbiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIGhlaWdodDogM3B4O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHRvcDogN3B4O1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOnRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjp0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOnRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246dHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcclxuICAgICAgICAgICAgdG9wOiAwcHg7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgIHRvcDogNnB4O1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgICAgICB0b3A6IDEzcHg7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIHJpZ2h0OjBweDtcclxuICAgICAgd2lkdGg6IDFweDtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG5cclxuICAgJiA+ICB1bCxcclxuICAgJiAuamNmLXNjcm9sbGFibGV7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogaW5pdGlhbDtcclxuICAgICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgICAgJiA+IGxpIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmID4gYSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yKTtcclxuICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzRweCAzNHB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEzcHggNTAlO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcblxyXG5cclxuICAgICAgICAgICYubmV3LW9iamVjdCB7XHJcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OTlweDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweCAwIDYwcHg7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdWwge1xyXG4gICAgICBhIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDM0cHggMzRweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHdpZHRoOiAycHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saW5rLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDAgLTJweDtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBtYXJnaW4gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IG1hcmdpbiB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBtYXJnaW4gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiBtYXJnaW4gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBtYXJnaW4gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgICB3aWR0aDogNjBweDtcclxuICAgICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLm5ldy1vYmplY3Qge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5zZWxlY3RlZDpub3QoLm5ldy1vYmplY3QpIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWljb25fYmdfYWN0aXZlKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yLWFjdGl2ZSk7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yLWFjdGl2ZSk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxpbmstY29sb3ItYWN0aXZlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICYgPiBhIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWNvbl9iZ19ob3Zlcik7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5vcHJuLW5ldy1vYmplY3Qge1xyXG4gICAgICAgICAgLm5ldy1vYmplY3Qge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pY29uX2JnX2FjdGl2ZSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yLWFjdGl2ZSk7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtjb2xvcjogdmFyKC0tbGluay1jb2xvci1hY3RpdmUpO31cclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdWwubWVudS1jaGlsZHJlbiB7XHJcbiAgICAgIHBhZGRpbmc6IDFweCAwO1xyXG4gICAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnKTtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1tZW51LWNoaWxkcmVuLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O2JveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnKTtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjphZnRlcixcclxuICAgICAgJjpiZWZvcmV7XHJcbiAgICAgIFx0Y29udGVudDonJztcclxuICAgICAgXHRkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBcdGNsZWFyOmJvdGg7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjBweDtcclxuICAgICAgICBsZWZ0OjIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgLSA0MHB4Jyk7XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHRvcDogYXV0bztcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDVweCAyMHB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1tZW51LWJnKTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlcik7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ob2xkZXItY2hpbGRyZW4ge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICB3aWR0aDogMDtcclxuICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmZseW91dC1pcy1hY3RpdmUge1xyXG4gICN3cmFwcGVyIHtcclxuICAgIC5mbHlvdXQtbWVudSB7XHJcbiAgICAgIHJpZ2h0OjA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBib2R5LmNvbnRyb2xsZXItaXNzdWVzLmFjdGlvbi1zaG93LmxvZ2dlZGFzICNtYWluICNjb250ZW50ID4gLmNvbnRleHR1YWwge1xyXG4gICAgbGVmdDogLTI1MHB4O1xyXG4gIH1cclxufVxyXG5cclxuI3dyYXBwZXIge1xyXG4gIC5mbHlvdXQtbWVudSB7XHJcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICByaWdodDogLTI1MHB4O1xyXG4gICAgd2lkdGg6IDI0OXB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLW1haW5fbWVudV9ib3JkZXIpO1xyXG4gICAgei1pbmRleDogMTA7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1mbHlvdXRfbWVudV9iZyk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IHJpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IHJpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IHJpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiByaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgY29sb3I6IHZhcigtLWZseW91dF9tZW51X2NvbG9yKTtcclxuXHJcbiAgICBociB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5zaWRlYmFyLWFkZGl0aW9uYWxzIHtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLW1haW5fbWVudV9ib3JkZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIGEucmVwb3NpdG9yeSB7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mbHlvdXQtbWVudS1mb250LXdlaWdodCk7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1mbHlvdXRfbWVudV9jb2xvcik7XHJcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1mbHlvdXRfbWVudV9ib3JkZXIpO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgLW8tdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIGEucmVwb3NpdG9yeSB7XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiArIGJyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBmb3JtW2FjdGlvbio9XCJyb2FkbWFwXCJdIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG5cclxuICAgICAgdWwge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWZseW91dF9tZW51X2JvcmRlcik7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZmx5b3V0X21lbnVfYnV0dG9uX2JnKTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tZmx5b3V0X21lbnVfYnV0dG9uX2NvbG9yKTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAxMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdWJtaXQtZm9udC13ZWlnaHQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZGl2IHtcclxuICAgICAgYVtocmVmPVwiL215L2FwaV9rZXlcIl0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1mbHlvdXRfbWVudV9ib3JkZXIpO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZseW91dC1tZW51LWZvbnQtd2VpZ2h0KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgI2FwaS1hY2Nlc3Mta2V5IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZm9ybSB7XHJcbiAgICAgICYgPiB1bCB7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgICBtaW4taGVpZ2h0OiAzNnB4O1xyXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAjYWN0aXZpdHlfc2NvcGVfZm9ybSB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgIHVsIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1mbHlvdXRfbWVudV9ib3JkZXIpO1xyXG5cclxuICAgICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogLTlweCAwIDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDI2cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMTBweDtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWZseW91dF9tZW51X2J1dHRvbl9iZyk7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWZseW91dF9tZW51X2J1dHRvbl9jb2xvcik7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTBweDtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdWJtaXQtZm9udC13ZWlnaHQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1mbHlvdXRfbWVudV9jb2xvcik7XHJcbiAgICB9XHJcblxyXG4gICAgdWwge1xyXG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgfVxyXG5cclxuICAgICAgbGksXHJcbiAgICAgIGxpOmZpcnN0LWNoaWxke1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mbHlvdXQtbWVudS1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1mbHlvdXRfbWVudV9jb2xvcik7XHJcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZmx5b3V0X21lbnVfYm9yZGVyKTtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge2Rpc3BsYXk6IG5vbmU7fVxyXG5cclxuICAgICAgICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1mbHlvdXRfbWVudV9iZ19zZWxlY3RlZCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBhW2hyZWYqPVwiL3Blb3BsZVwiXSB7XHJcbiAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5pY29uLWRlbCB7XHJcbiAgICAgICAgbWFyZ2luOiA1cHggMTBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgbGkge1xyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZmx5b3V0X21lbnVfYm9yZGVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoMyB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWZseW91dF9tZW51X3RpdGxlX2JnKTtcclxuICAgICAgY29sb3I6IHZhcigtLWZseW91dF9tZW51X3RpdGxlX2NvbG9yKTtcclxuICAgICAgcGFkZGluZzogMTBweCAxMHB4O1xyXG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1mbHlvdXRfbWVudV9ib3JkZXIpO1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgICNhZG1pbi1tZW51IHtcclxuICAgICAgbGkge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWZseW91dF9tZW51X2FkbWluX21lbnVfYmcpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1mbHlvdXRfbWVudV9hZG1pbl9tZW51X2NvbG9yKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmLnNlbGVjdGVkICB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1mbHlvdXRfbWVudV9iZ19zZWxlY3RlZCk7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZmx5b3V0X21lbnVfY29sb3Jfc2VsZWN0ZWQpO1xyXG4gICAgICAgICAgcGFkZGluZzogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5yZWRtaW5lLWdpdC1ob3N0aW5nIHtcclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjY21zLXNldHRpbmdzLW1lbnUge1xyXG4gICAgICBsaSB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgfVxyXG4gICAgICBhIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1mbHlvdXRfbWVudV9hZG1pbl9tZW51X2JnKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tZmx5b3V0X21lbnVfYWRtaW5fbWVudV9jb2xvcikgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgJi5zZWxlY3RlZCAge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZmx5b3V0X21lbnVfYmdfc2VsZWN0ZWQpO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWZseW91dF9tZW51X2NvbG9yX3NlbGVjdGVkKTtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5qcy1nZW5lcmFsLW1lbnUge1xyXG4gICAgICBhIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1mbHlvdXRfbWVudV9nZW5lcmFsLW1lbnVfYmcpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1mbHlvdXRfbWVudV9nZW5lcmFsLW1lbnVfY29sb3IpICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuanMtcHJvZmlsZS1tZW51IHtcclxuICAgICAgYSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZmx5b3V0X21lbnVfcHJvZmlsZS1tZW51X2JnKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tZmx5b3V0X21lbnVfcHJvZmlsZS1tZW51X2NvbG9yKSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmpzLXByb2plY3QtbWVudSB7XHJcbiAgICAgIC5tZW51LWNoaWxkcmVuIHtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW1vYmlsZS1tZW51LWNoaWxkcmVuLWJnKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1tb2JpbGUtbWVudS1jaGlsZHJlbi1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2NvbnRhY3RfaXNzdWVzIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5hdHRhY2htZW50cyB7XHJcbiAgICAgIHRhYmxlIHtcclxuICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcblxyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDM1cHggMTBweCAxMHB4O1xyXG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1mbHlvdXRfbWVudV9ib3JkZXIpO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMzVweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1mbHlvdXRfbWVudV9idXR0b25fYmcpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmljb24tYXR0YWNobWVudCB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuc2l6ZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmljb24tb25seSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHJpZ2h0OiA1cHg7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzowO1xyXG4gICAgICAgIGhlaWdodDp2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIHdpZHRoOnZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgbWFyZ2luOi0xM3B4IDAgMDtcclxuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgei1pbmRleDoyO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBmb250LXNpemU6MHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OjBweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tZmx5b3V0LXRleHQtY29sb3IpO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgbWluLXdpZHRoOiAyNnB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDI2cHg7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OiBAZG93bmxvYWQ7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1mbHlvdXRfbWVudV9jb2xvcik7XHJcbiAgICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC53aWtpIHtcclxuICAgICAgcGFkZGluZzogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZmx5b3V0X21lbnVfYm9yZGVyKTtcclxuICAgIH1cclxuXHJcbiAgICAjd2F0Y2hlcnMge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1mbHlvdXRfbWVudV93YXRjaGVycy1tZW51X2JnKTtcclxuICAgICAgY29sb3I6IHZhcigtLWZseW91dF9tZW51X3dhdGNoZXJzLW1lbnVfY29sb3IpO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgaDMge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB1bCB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWZseW91dF9tZW51X2JvcmRlcik7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDQwcHggMTBweCAzNnB4O1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICB3aWR0aDogMXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICByaWdodDogMzVweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZmx5b3V0X21lbnVfYnV0dG9uX2JnKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAuZ3JhdmF0YXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBsZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTZweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IC04cHggMCAwO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGFbIGhyZWYqPVwicGVvcGxlXCJdIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNnB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgLTVweCAwIC0zNnB4O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5kZWxldGUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICByaWdodDogNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IC0xM3B4IDAgMDtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgcGFkZGluZzowO1xyXG4gICAgICAgICAgICBoZWlnaHQ6dmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgICAgd2lkdGg6dmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICAgICB6LWluZGV4OjI7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6MHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1mbHlvdXQtdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBjb250ZW50OiBAZGVsO1xyXG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZmx5b3V0X21lbnVfY29sb3IpO1xyXG4gICAgICAgICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgI2FkZF9pc3N1ZV9saW5rLFxyXG4gICAgICBhW2hyZWYqPVwicHJvamVjdHMvbmV3XCJdLFxyXG4gICAgICBhW2hyZWYqPVwid2F0Y2hlcnNcIl17XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzowO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICBtYXJnaW46NXB4IDVweCAwIDA7XHJcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6MjtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgZm9udC1zaXplOjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWZseW91dC10ZXh0LWNvbG9yKTtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIG1pbi13aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDogQG5ldy1vYmplY3Q7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1mbHlvdXRfbWVudV9jb2xvcik7XHJcbiAgICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mbHlvdXQtbWVudV9fYXZhdGFyIHtcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWZseW91dF9tZW51X2JvcmRlcik7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZseW91dC1tZW51LWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICBjb2xvcjogdmFyKC0tZmx5b3V0X21lbnVfY29sb3IpO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgd2lkdGg6IDIycHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnVzZXIge1xyXG4gICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmW2hyZWYqPVwiL3VzZXJzL1wiXSB7XHJcbiAgICAgICAgICB3aWR0aDogNDJweDtcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2FkbWluLW1lbnUge1xyXG4gICAgIGEge1xyXG4gICAgICAgcGFkZGluZzogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZseW91dC1tZW51X19zaWRlYmFyIHtcclxuXHJcbiAgICAgICYgPiBkaXYge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgYnIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgPiBhIHtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZmx5b3V0LW1lbnUtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTBweDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZmx5b3V0X21lbnVfYm9yZGVyKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaDMgfiBhIHtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZmx5b3V0LW1lbnUtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTBweDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZmx5b3V0X21lbnVfYm9yZGVyKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgcDpub3QoLmljb24pIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgc3Bhbi5pY29uIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAgICAgJi5pY29uLWhlbHBkZXNrIHtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRhYmxlLm5vdGVfZGF0YSB7XHJcbiAgICAgIC5jb250ZW50LnByZXZpZXcge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1mbHlvdXRfbWVudV9jb2xvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaWNvbjpub3QodGQpOm5vdChbaHJlZio9XCIvY21zXCJdKSxcclxuICAgIGFbaHJlZio9XCJxdWVzdGlvbnNfc2VjdGlvbnMvbmV3XCJdIHtcclxuICAgICAgcGFkZGluZzogMCAwIDAgdmFyKC0taWNvbi13aWR0aCk7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLnRhZ3Mge1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIGxlZnQ6IDMwcHg7XHJcbiAgICAgICAgICB3aWR0aDogMXB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZmx5b3V0X21lbnVfY29sb3IpO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuaWNvbi1waG9uZSxcclxuICAgICAgJi5pY29uLWVtYWlsIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgbWluLWhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDAgdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUtc21hbGwpO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgZGl2LmNvbnRhY3Qge1xyXG4gICAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgLmdyYXZhdGFyIHtcclxuICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3ViamVjdF9oZWFkZXIge1xyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHggIWltcG9ydGFudDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAjY3VzdG9tZXJfcHJldmlvdXNfaXNzdWVzLFxyXG4gICAgI2N1c3RvbWVyX3Byb2ZpbGUge1xyXG4gICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZmx5b3V0LW1lbnUtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHg7XHJcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZmx5b3V0X21lbnVfYm9yZGVyKTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE0O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mbHlvdXQtbWVudV9fc2lkZWJhciB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgIHNwYW4uaWNvbi50YWdfbGlzdCB7XHJcbiAgICAgICAgbWFyZ2luOiA1cHggMCAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDI2cHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMDtcclxuICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAxMHB4Jyk7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDogQHRhZ3M7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDowO1xyXG4gICAgICAgICAgbGVmdDowO1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBoZWlnaHQ6MjBweDtcclxuICAgICAgICAgIHdpZHRoOjIwcHg7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWZseW91dC10ZXh0LWNvbG9yKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKGZseW91dF9tZW51X2JnKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1mbHlvdXRfbWVudV9jb2xvcik7XHJcbiAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mbHlvdXQtbWVudS1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4xNDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGgzIH4gcDpub3QoLmljb24pIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG5cclxuICAgICAgICBiciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pY29uLWhlbHBkZXNrLFxyXG4gICAgICAgIC5pY29uLWNvbXBhbnktY29udGFjdCB7XHJcbiAgICAgICAgICBtYXJnaW46IC0xMHB4O1xyXG4gICAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1mbHlvdXRfbWVudV9ib3JkZXIpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjplbXB0eSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI3RvZ2dsZS1jb21wbGV0ZWQtdmVyc2lvbnMge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTBweCAzNnB4O1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIG1hcmdpbjogLTEwcHg7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZmx5b3V0LW1lbnUtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBAb3Blbi1mb2xkZXI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6NTAlO1xyXG4gICAgICAgICAgICBsZWZ0OjVweDtcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgaGVpZ2h0OjIwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOjIwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogLTEwcHggMCAwO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZmx5b3V0X21lbnVfY29sb3IpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLmNvbGxhcHNpYmxle1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5pY29uLWV4cGVuZGVkIHtcclxuICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLmNvbGxhcHNlZCxcclxuICAgICAgICAgICAgJi5pY29uLWNvbGxhcHNlZCB7XHJcbiAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBhW2hyZWYqPVwiL215L2FjY291bnQvZGVzdHJveVwiXSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDBweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1cHg7XHJcbiAgICAgICAgbGVmdDogMjEzcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgJiA+IGg0IHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZmx5b3V0X21lbnVfYm9yZGVyKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tZmx5b3V0X21lbnVfY29sb3IpO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNpc3N1ZV9jb250YWN0cyB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmluLW1vYmlsZSB7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDA7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogIG1heC1oZWlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgLm9wZW4ge1xyXG4gICAgICAmID4gLmluLW1vYmlsZSB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZseW91dC1tZW51IHVsIGxpIGEubmV3LW9iamVjdCxcclxuICAubmV3LW9iamVjdCB+IC5tZW51LWNoaWxkcmVuIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuICAuZmx5b3V0LW1lbnUge1xyXG4gICAjbmV3LW9iamVjdCB7XHJcbiAgICAgZGlzcGxheTogbm9uZTtcclxuICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm1vZC1vYmoge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6LTk5OTk5cHg7XHJcbiAgbGVmdDotOTk5OTlweDtcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tYmcpO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgb3BhY2l0eTogMDtcclxuICB6LWluZGV4OiAxMTtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gIGJvcmRlci1sZWZ0OiBub25lO1xyXG4gIGJvcmRlci10b3A6IG5vbmU7XHJcblxyXG4gIC5ob2xkZXItY2hpbGRyZW4ge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLm1lbnUtY2hpbGRyZW4ge1xyXG4gICAgbWFyZ2luOjA7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBsaXN0LXN0eWxlOm5vbmU7XHJcbiAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICBmb250LXdlaWdodDogdmFyKGZvbnQtd2VpZ2h0KTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmcpO1xyXG5cclxuICAgIGEge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Oy1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlcik7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICBodG1sLmZseW91dC1pcy1hY3RpdmUge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICBib2R5IHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICAjd3JhcHBlciB7XHJcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5oYXMtbWFpbi1tZW51IHtcclxuICAgICN3cmFwcGVyIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgI3dyYXBwZXIzIHtcclxuICAgICAgJiA+ICNhZG1pbi1tZW51LFxyXG4gICAgICAmID4gI21haW4tbWVudSB7XHJcbiAgICAgICAgdG9wOiAtOTk5OTk5OXB4O1xyXG4gICAgICAgIGxlZnQ6IC05OTk5OTlweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuI21haW4tbWVudSxcclxuI2FkbWluLW1lbnUge1xyXG4gIC5qY2Ytc2Nyb2xsYmFyLXZlcnRpY2FsIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXNjcm9sbGJhcik7XHJcblxyXG4gICAgLmpjZi1zY3JvbGxiYXItaGFuZGxlIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyX2hhbmRsZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcblxyXG4vKiBTVEFSVCBNQVkgUEFHRSAqL1xyXG5cclxuLmNvbnRyb2xsZXItd2VsY29tZSxcclxuLmNvbnRyb2xsZXItbXksXHJcbi5jb250cm9sbGVyLXByb2plY3RzIHtcclxuXHJcbiAgI2Jsb2NrLXNlbGVjdCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAtOTk5OTlweDtcclxuICAgIHRvcDogLTk5OTk5cHg7XHJcbiAgfVxyXG5cclxuICBzZWxlY3RbaWQqPVwic2V0dGluZ3NfaXNzdWVxdWVyeV9cIl0ge1xyXG4gICAgJiArIC5zZWxlY3QyIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjYmxvY2stZm9ybSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICBvcmRlcjogLTM7XHJcblxyXG4gICAgLnNlbGVjdDIge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNjb250ZW50IHtcclxuICAgICYgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgIGZvcm0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluID4gI2NvbnRlbnQge1xyXG5cclxuICAgIGgzIHtcclxuICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcblxyXG4gICAgICAuaWNvbi1vbmx5IHtcclxuICAgICAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSkgIWltcG9ydGFudDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpICFpbXBvcnRhbnQ7O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJsb2NrLXJlY2VpdmVye1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLm15cGFnZS1ib3gge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O2JveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBwYWRkaW5nOjE1cHggMTVweCAxNXB4O1xyXG4gICAgbWFyZ2luOiAyMHB4IDA7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuXHJcbiAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgLmJveCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICAgZGl2W2lkKj1cIi1zZXR0aW5nc1wiXVtzdHlsZSo9XCJkaXNwbGF5XCJde1xyXG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICB0b3A6IC05OTk5OTk5cHg7XHJcbiAgICAgIGxlZnQ6IC05OTk5OTk5cHg7XHJcblxyXG4gICAgICAmLm9wZW4tc2V0dGluZ3N7XHJcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAjY29udGVudCB7XHJcbiAgICAubXlwYWdlLWJveCB7XHJcbiAgICAgIGZvcm0ge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggO1xyXG5cclxuICAgICAgICAuYm94IHtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgICAgJiArIHAge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwIDEwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgICYgKyBhLFxyXG4gICAgICAgICAgJiArIGlucHV0W3R5cGU9XCJidXR0b25cIl17XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3IpO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyKTtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI3NldHRpbmdzX3RpbWVsb2dfZGF5cyB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGRpdltpZCo9XCItc2V0dGluZ3NcIl17XHJcbiAgICBmb3JtIHtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgfVxyXG4gICAgLmJveCB7XHJcblxyXG4gICAgICAmICsgcCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbXktcGFnZSB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICNsaXN0LXRvcCxcclxuICAgICNsaXN0LWxlZnQsXHJcbiAgICAjbGlzdC1yaWdodCB7XHJcbiAgICAgIC5teXBhZ2UtYm94IHtcclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLmRyYWdnaW5nIHtcclxuXHJcbiAgICAuYmxvY2stcmVjZWl2ZXIgIHtcclxuICAgICAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICBtYXJnaW46IDE1cHggMDtcclxuICAgICAgcGFkZGluZzogMTVweDtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Oy1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0YWJsZS5saXN0IHtcclxuICAgICYgPiB0aGVhZCAgPiB0ciB7XHJcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIC5pZCB7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogIHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogIHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJiA+IHRib2R5ICA+IHRyIHtcclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAuaWQge1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAgdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIENPTlRBQ1RTIEFTU0lHTkVEIFRPIE1FICovXHJcblxyXG4jYmxvY2stbXlfY29udGFjdHMgIHtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG5cclxuICAuYm94IHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG5cclxuICAgIHVsIHtcclxuICAgICAgbWFyZ2luOiAwIC03cHg7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgd2lkdGg6IDE2MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIG1hcmdpbjogMCA3cHggMTVweCA3cHg7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGgyO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcblxyXG4gICAgICAgIC5jb250YWN0IHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG5cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAjYXZhdGFyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgICBpbWcuZ3JhdmF0YXIge1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDA7XHJcblxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmhvdmVyICB7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnNtYWxsIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcGFkZGluZzogOHB4IDEwcHggOHB4O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnKTtcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIG1pbi13aWR0aDogMTYwcHg7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiNibG9jay1teV9jb250YWN0c19zdGF0cyB7XHJcbiAgLmxpc3Qge1xyXG4gICAgdGJvZHl7XHJcbiAgICAgIHRyIHtcclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuI2Jsb2NrLW15X2NvbnRhY3RzX2F2YXRhcnMge1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcblxyXG4gIC5ib3gge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMCAtN3B4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuXHJcbiAgICAgLnRvb2x0aXAge1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzI1JSAtIDE0cHgnKTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBtYXJnaW46IDAgN3B4IDE1cHg7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG5cclxuICAgICAgI2F2YXRhciB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAudGlwIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGdmcyAhaW1wb3J0YW50O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoMiAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluaykgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBAZ2ZzIDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgICAmICsgYnIge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGFbaHJlZl49XCJtYWlsdG9cIl0sXHJcbiAgICAgICAgYVtocmVmXj1cInRlbFwiXSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGdsaDI7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmOmhvdmVyIHNwYW4udGlwIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgYm90dG9tOiBhdXRvO1xyXG4gICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5zbWFsbCB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG5cclxuICAgIGEge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHBhZGRpbmc6IDhweCAxMHB4IDhweDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvcik7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICBtaW4td2lkdGg6IDE2MHB4O1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWhvdmVyKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIENPTlRBQ1RTIEFTU0lHTkVEIFRPIE1FKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEhFTFAgVElDS0VUUyAqL1xyXG5cclxuI2Jsb2NrLW15X2hlbHBkZXNrX3RpY2tldHMge1xyXG4gIC5zbWFsbCB7XHJcbiAgICBhIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBwYWRkaW5nOiA4cHggMTBweCA4cHg7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgbWluLXdpZHRoOiAxNjBweDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBIRUxQIFRJQ0tFVFMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIENVU1RPTSBRVUVSWSAqL1xyXG5cclxuI2NvbnRlbnQge1xyXG4gICNibG9jay1pc3N1ZXF1ZXJ5X18yLFxyXG4gICNibG9jay1pc3N1ZXF1ZXJ5LFxyXG4gICNibG9jay1pc3N1ZXF1ZXJ5X18xIHtcclxuICAgIC5ib3h7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgICAmICsgcCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDowO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZm9ybSB7XHJcbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWJnKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWhvdmVyKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgQ1VTVE9NIFFVRVJZICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBERUFMUyBCT1ggKi9cclxuXHJcbiNibG9jay1teV9kZWFscyB7XHJcbiAgLmJveCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuICAjZHVwbGljYXRlcyB7XHJcbiAgICB1bCB7XHJcbiAgICAgIG1hcmdpbjogMCAtN3B4O1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgbGkge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB3aWR0aDogMTYwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgbWFyZ2luOiAwIDdweCAxNXB4IDdweDtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHggMzVweDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoMjtcclxuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMTBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRhZy1sYWJlbC1jb2xvciB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxMjtcclxuICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zbWFsbCB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgYSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcGFkZGluZzogOHB4IDEwcHggOHB4O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnKTtcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIG1pbi13aWR0aDogMTYwcHg7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWhvdmVyKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIERFQUxTIEJPWCAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTVkgUkVTT1VSQ0UgQk9PS0lOR1MgKi9cclxuXHJcbiNibG9jay1teV9yZXNvdXJjZV9ib29raW5ncyB7XHJcbiAgLm15LXJlc291cmNlLWJvb2tpbmdzLWNoYXJ0IHtcclxuXHJcbiAgICAuY2FsIHtcclxuICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgIH1cclxuXHJcbiAgICAud29ya2xvYWQtY2FyZCB7XHJcbiAgICAgIHBhZGRpbmc6IDhweCAxMHB4O1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGJvcmRlci13aWR0aDogNHB4O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxMjtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgICAuc3BlbnQge1xyXG4gICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBwIHtcclxuICAgICAgICBvcmRlcjogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5ncmVlbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLnJlZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbm90aWNlLWVycm9yLWJnKTtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLW5vdGljZS1lcnJvci1tYWluKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbm90aWNlLWVycm9yLW1haW4pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmdyYXkge1xyXG5cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5zcGVudCB7XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGFibGUge1xyXG4gICAgICB0ciB7XHJcblxyXG4gICAgICB9XHJcblxyXG4gICAgICB0aCB7XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMCAwOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwIDA7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwIDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMCA7LW1vei1ib3JkZXItcmFkaXVzOiAwIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMCA7Ym9yZGVyLXJhZGl1czogMCB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDAgO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgdGQge1xyXG5cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ib29raW5nLWNhcmQge1xyXG4gICAgICBtYXJnaW46IDAgMCAycHg7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCAxMHB4O1xyXG4gICAgICBtaW4taGVpZ2h0OiAxMDBweDtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1iZyk7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgei1pbmRleDogMTtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5sb2ctdGltZSB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIsXHJcbiAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAtMTJweCAwIDAgMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5wcm9qZWN0LW5hbWUge1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxNjtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICAgICAgICBwYWRkaW5nOiA4cHggMTBweDtcclxuICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnByb2dyZXNzLnNwZW50IHtcclxuICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgLSAyMHB4JykgIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW46IDAgMTBweCAwO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuXHJcbiAgICAgICAgdHIge1xyXG4gICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5zcGVudCB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBAZ3JlZW4tZGFyaztcclxuICAgICAgICBiYWNrZ3JvdW5kOiBAYmctbm90aWNlLXN1Y2Nlc3NmdWw7XHJcblxyXG5cclxuICAgICAgICAudG9vbHRpcCxcclxuICAgICAgICAudG9vbHRpcDpob3ZlciB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLW5vdGljZS1zdWNjZXNzZnUtbWFpbik7XHJcblxyXG4gICAgICAgICAgc3Bhbi50aXAge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLW5vdGljZS1zdWNjZXNzZnUtbWFpbik7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW5vdGljZS1zdWNjZXNzZnUtYmcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnByb2plY3QtbmFtZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ub3RpY2Utc3VjY2Vzc2Z1LW1haW4pO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLW5vdGljZS1zdWNjZXNzZnUtbWFpbi10ZXh0KTtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbm90aWNlLXN1Y2Nlc3NmdS1tYWluKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC50b29sdGlwIHtcclxuICAgICAgICBzcGFuLnRpcCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDQ1cHg7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCAtNHB4O1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLnRvb2x0aXA6aG92ZXIge1xyXG4gICAgICAgIHNwYW4udGlwIHtcclxuICAgICAgICAgIHRvcDogMzBweDtcclxuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLnRvb2x0aXAsXHJcbiAgICAgIC50b29sdGlwOmhvdmVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCA1cHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICBzcGFuLnRpcCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IEBmczE2O1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0LWJnKTtcclxuICAgICAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyA0cHgnKTtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tc21hbGwtYm94LXNoYWRvdyk7XHJcbiAgICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLXNtYWxsLWJveC1zaGFkb3cpO1xyXG4gICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tc21hbGwtYm94LXNoYWRvdyk7XHJcblxyXG4gICAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1saW5rX2NvbG9yKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5pY29uIHtcclxuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIG1hcmdpbjogLTEycHggMCAwIC01cHg7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICB3aWR0aDogMjRweDtcclxuICAgICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIG1hcmdpbjogLTEycHggMCAwIC01cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaXNzdWUge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCA1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmljb24tcHJvamVjdCB7XHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogQGlzc3VlcztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaWNvbi10aW1lLWFkZCB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmRlc2NyaXB0aW9uLWJveCB7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWluLWhlaWdodDogMDtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHggMTBweDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuXHJcbiAgICAgICAgLnRleHQtYm94IHtcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIsXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNwZW50Lmdyb3VwLW5hbWUge1xyXG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLW5vdGljZS1zdWNjZXNzZnUtYmcpO1xyXG4gICAgICBtYXJnaW46IDAgMCAycHg7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRhYmxlLmNhbCB7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMDstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMDtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDA7XHJcblxyXG4gICAgJiA+IHRib2R5IHtcclxuICAgICAgYm9yZGVyOiAwO1xyXG5cclxuICAgICAgLndlZWstZW5kIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmID4gdHIge1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuXHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcclxuXHJcbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgJiA+IHRke1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogMCAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogMCAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgTVkgUkVTT1VSQ0UgQk9PS0lOR1MgKi9cclxuXHJcbiNjb250ZW50IHtcclxuICBmb3JtW2FjdGlvbj1cIi9teS9wYWdlXCJdIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAuYm94IHtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcblxyXG4gICAgICBwIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAuamNmLXNlbGVjdCxcclxuICAgICAgICAgIC5zZWxlY3QyIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogU1RBUlQgICovXHJcblxyXG4jY29udGVudCB7XHJcbiAgI2Jsb2NrLWNhbGVuZGFyIHtcclxuICAgIHRhYmxlLmNhbCB7XHJcbiAgICAgIHRyIHtcclxuICAgICAgICB0ZCB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG5cclxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogU1RBUlQgTUVESUEqL1xyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItd2Vsb21lLFxyXG4gIC5jb250cm9sbGVyLXByb2plY3RzIHtcclxuXHJcbiAgICAubXlwYWdlLWJveCB7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcclxuICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuXHJcbiAgICAgICYgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAjbWFpbiB7XHJcbiAgICAgICYgPiAjY29udGVudCB7XHJcblxyXG4gICAgICAgIGRpdiNhY3Rpdml0eSB7XHJcbiAgICAgICAgICBkbCB7XHJcbiAgICAgICAgICAgIGR0IHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBkZCB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2Jsb2NrLW15X2RlYWxzIHtcclxuICAgICNkdXBsaWNhdGVzIHtcclxuICAgICAgdWwge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMzMlIC0gMTRweCcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2Jsb2NrLW15X2NvbnRhY3RzX2F2YXRhcnMge1xyXG4gICAgLmJveCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgIC50b29sdGlwIHtcclxuICAgICAgICB3aWR0aDogY2FsYyh+JzUwJSAtIDE0cHgnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2Jsb2NrLW15X2NvbnRhY3RzIHtcclxuICAgIC5ib3gge1xyXG4gICAgICB1bCB7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoficzMyUgLSAxNHB4Jyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiBTVEFSVCBNWSBSRVNPVVJDRSBCT09LSU5HUyAqL1xyXG5cclxuICAjYmxvY2stbXlfcmVzb3VyY2VfYm9va2luZ3Mge1xyXG4gICAgaDMge1xyXG4gICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgICYgPiAqIHtcclxuICAgICAgICBtYXJnaW46IDAgNXB4IDAgMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmljb24tdGltZS1hZGQge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2Jsb2NrLXRpbWVsb2cge1xyXG4gICAgaDMge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMzVweCAhaW1wb3J0YW50O1xyXG4gICAgICBtaW4taGVpZ2h0OiAzMHB4O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgICAmID4gKiB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDVweCAwIDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5pY29uLWFkZCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgI2Jsb2NrLW15X2NvbnRhY3RzLFxyXG4gICNibG9jay1teV9kZWFscyxcclxuICAjYmxvY2stbXlfY29udGFjdHNfYXZhdGFycyxcclxuICAjYmxvY2stbXlfaGVscGRlc2tfdGlja2V0cyB7XHJcbiAgICAuc21hbGwge1xyXG4gICAgICBhIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItd2VsY29tZSxcclxuICAuY29udHJvbGxlci1wcm9qZWN0cyxcclxuICAuY29udHJvbGxlci1teSB7XHJcbiAgICBkaXZbaWQqPVwiLXNldHRpbmdzXCJdIHtcclxuICAgICAgLmJveCB7XHJcbiAgICAgICAgJiArIHAge1xyXG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAjbXktcGFnZSB7XHJcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgfVxyXG4gICAgLm15cGFnZS1ib3gge1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgfVxyXG5cclxuICAgICNtYWluID4gI2NvbnRlbnQge1xyXG4gICAgICAmID4gLmNvbnRleHR1YWw6bm90KC5uZXh0LXByZXYtbGlua3MpIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgIC8qbWFyZ2luLXRvcDogMjBweDsqL1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgICAgIGZvcm0ge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjYmxvY2stYWN0aXZpdHkge1xyXG4gICAgICAgIGRpdiNhY3Rpdml0eSB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDFweDtcclxuXHJcbiAgICAgICAgICBkbCBkZCB7XHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLm15cGFnZS1ib3gge1xyXG4gICAgICAgIGZvcm0ge1xyXG5cclxuICAgICAgICAgICNzZXR0aW5nc190aW1lbG9nX2RheXMge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNjb250ZW50IHtcclxuICAgICNibG9jay1pc3N1ZXF1ZXJ5X18yLFxyXG4gICAgI2Jsb2NrLWlzc3VlcXVlcnksXHJcbiAgICAjYmxvY2staXNzdWVxdWVyeV9fMSB7XHJcbiAgICAgIGZvcm0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJveCB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNibG9jay1teV9kZWFscyB7XHJcbiAgICAjZHVwbGljYXRlcyB7XHJcbiAgICAgIHVsIHtcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzUwJSAtIDE0cHgnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5zbWFsbCB7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI21haW4gPiAjY29udGVudCB7XHJcbiAgICAjYmxvY2stbXlfY29udGFjdHNfYXZhdGFycyxcclxuICAgICNibG9jay1teV9kZWFscyB7XHJcbiAgICAgIC5ib3gge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjYmxvY2stbXlfY29udGFjdHNfYXZhdGFycyB7XHJcbiAgICAuc21hbGwge1xyXG4gICAgICBhIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNibG9jay1teV9jb250YWN0cyB7XHJcbiAgICAuYm94IHtcclxuICAgICAgdWwge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKH4nNTAlIC0gMTRweCcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zbWFsbCB7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcclxuXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgZm9ybVthY3Rpb249XCIvbXkvcGFnZVwiXSB7XHJcbiAgICAgIC5ib3gge1xyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgICAgICAgICAuamNmLXNlbGVjdCB7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNibG9jay1teV9kZWFscyB7XHJcbiAgICAjZHVwbGljYXRlcyB7XHJcbiAgICAgIHVsIHtcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgLSAxNHB4Jyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjYmxvY2stbXlfY29udGFjdHNfYXZhdGFycyB7XHJcbiAgICAuYm94IHtcclxuICAgICAgLnRvb2x0aXAge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNibG9jay1teV9jb250YWN0cyB7XHJcbiAgICAuYm94IHtcclxuICAgICAgdWwge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSAtIDE0cHgnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBNQVkgUEFHRSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcblxyXG4vKiBTVEFSVCBORVdTICovXHJcbi5jb250cm9sbGVyLW5ld3MgI21haW4gI2NvbnRlbnQge1xyXG4gIGgyIHtcclxuICAgIGltZy5ncmF2YXRhciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5jb250cm9sbGVyLW5ld3Mge1xyXG5cclxuICAmLmFjdGlvbi1pbmRleCB7XHJcbiAgICAjbWFpbiA+ICNjb250ZW50IHtcclxuICAgICAgcGFkZGluZzogMCAwIDQzcHg7XHJcblxyXG4gICAgICAmID4gaDIge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDQwcHg7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBwLm90aGVyLWZvcm1hdHMge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG4gICAgICA+IC5jb250ZXh0dWFsIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGhlYWRlciB7XHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IEBnZmY7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICBpbWcgIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCA1cHggMCAwO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgNXB4IDAgMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuYWN0aW9uLXNob3cge1xyXG4gICAgI21haW4gPiAjY29udGVudCB7XHJcbiAgICAgIGgzLmNvbW1lbnRzIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICBtYXJnaW46IDAgLTMwcHggMjBweDtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgI2NvbW1lbnRzIHtcclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgICAgICAgcGFkZGluZzogOHB4IDMwcHggOHB4IDA7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG5cclxuICAgICAgICAgIC5ncmF2YXRhciB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCA1cHggNXB4IDA7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjZWRpdC1uZXdzIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uZXdzLWFydGljbGUge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctb3RoZXIpO1xyXG4gICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICBib3gtc2hhZG93IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiAgYm94LXNoYWRvdyB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiAgYm94LXNoYWRvdyB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICBib3gtc2hhZG93IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogIGJveC1zaGFkb3cgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAub3Blbi1ib3gtbmV3cyB7XHJcbiAgICAgIGhlaWdodDogMDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgaGVhZGVyIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgZm9udC1mYW1pbHk6IEBnZmY7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICBwYWRkaW5nOiAxNXB4IDYwcHggMTVweCAyMHB4O1xyXG4gICAgICBmb250LXdlaWdodDogNjAwO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDonJztcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIG1hcmdpbjogLTE1cHggMCAwO1xyXG4gICAgICAgIHJpZ2h0OiA2MHB4O1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICB3aWR0aDogMXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgIH1cclxuXHJcblxyXG4gICAgICBwIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgICYuYXV0aG9yIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAub3Blbi1uZXdzLWxpbmsge1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjUwJTtcclxuICAgICAgcmlnaHQ6MTVweDtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XHJcbiAgICAgIHBhZGRpbmc6MDtcclxuICAgICAgaGVpZ2h0OnZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICB3aWR0aDp2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgbWFyZ2luOi0xNXB4IDAgMDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICB6LWluZGV4OjI7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0taWNvbi13aWR0aCkgdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBmb250LXNpemU6MHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjBweDtcclxuICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIH1cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlcik7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5zZWxlY3RlZCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlKTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19hY3RpdmUpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAud2lraSB7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O2JveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuXHJcbiAgICAgIHAge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcblxyXG4gICAgICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLm9wZW4tbmV3cyB7XHJcbiAgICAgIC5vcGVuLW5ld3MtbGluayB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2FkZC1uZXdzIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDU7XHJcbiAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XHJcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBTVEFSVCBORVdTIEZPUiBNQVkgUEFHRSAqL1xyXG5cclxuLm5ld3MuYm94LFxyXG4jYmxvY2stbmV3cyB7XHJcbiAgcDpub3QoLm5vZGF0YSkge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O2JveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xyXG4gICAgZm9udC1mYW1pbHk6IEBnZmY7XHJcbiAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICBtYXJnaW46IDAgNXB4IDAgMDtcclxuICAgIH1cclxuXHJcbiAgICAuc3VtbWFyeSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBtYXJnaW46IDEwcHggMCAwO1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoMjtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJiA+IGEge1xyXG4gICAgbWFyZ2luOiAyMHB4IDAgMDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBhZGRpbmc6IDhweCAxMHB4IDhweDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICBsaW5lLWhlaWdodDogQGdmcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXIpO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgTkVXUyBGT1IgTUFZIFBBR0UgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1FRElBKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItbmV3cyB7XHJcbiAgICAuYXR0YWNobWVudHN7XHJcbiAgICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgICBtYXJnaW46IDAgLTQwcHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubmV3cy1hcnRpY2xlIHtcclxuXHJcbiAgICAgIC53aWtpIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5hY3Rpb24tc2hvdyB7XHJcbiAgICAgICNtYWluID4gI2NvbnRlbnQge1xyXG4gICAgICAgIGgzLmNvbW1lbnRzIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweDtcclxuICAgICAgICAgIG1hcmdpbjogMCAtMTBweCAyMHB4O1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICNtYWluIHtcclxuICAgICAgICB0ciB7XHJcbiAgICAgICAgICAuaWNvbixcclxuICAgICAgICAgIC5pY29uLW9ubHkge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZyk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlcik7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjY29tbWVudHMge1xyXG4gICAgICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogIHZhcigtLWljb25fYmcpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlcik7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5hY3Rpb24taW5kZXgge1xyXG4gICAgICAjbWFpbiB7XHJcbiAgICAgICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgMTBweCA1NnB4O1xyXG5cclxuICAgICAgICAgICYgPiBoMiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBoMy5jb21tZW50cyB7XHJcbiAgICAgICAgbWFyZ2luOiAwIC0xMHB4IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAxMHB4O1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItbmV3cyB7XHJcblxyXG4gICAgI2FkZC1uZXdzIHtcclxuICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG5cclxuICAgICAgaDIge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubmV3cy1hcnRpY2xlIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuXHJcbiAgICAgIGhlYWRlciB7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCA2MHB4IDEwcHggMTBweDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICByaWdodDogNTBweDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2FkZC1uZXdzIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAuY29udHJvbGxlci1uZXdzIHtcclxuICAgICYuYWN0aW9uLXNob3cge1xyXG4gICAgICAuYXR0YWNobWVudHMge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgIHRhYmxlIHtcclxuICAgICAgICAgIHRyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuYWN0aW9uLWluZGV4IHtcclxuICAgICAgI2FkZC1uZXdzIHtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBmczE2O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IEBmczE2O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5uZXdzLWFydGljbGUge1xyXG4gICAgICBtYXJnaW46IDAgLTEwcHggMTBweDtcclxuICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpICFpbXBvcnRhbnQ7XHJcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKSAhaW1wb3J0YW50O1xyXG4gICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCkgIWltcG9ydGFudDtcclxuICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKSAhaW1wb3J0YW50O1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5uZXdzLmJveCA+IGEsXHJcbiAgI2Jsb2NrLW5ld3MgPiBhIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItbmV3cy5hY3Rpb24tc2hvdyB7XHJcbiAgICAuYXR0YWNobWVudHMge1xyXG4gICAgICB0YWJsZSB7XHJcblxyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgICZbaWQqPVwiYXR0YWNobWVudC1cIl0ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIE5FV1MgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuXHJcbi8qIFNUQVJUIE9WRVJWSUVXICovXHJcbi5jb250cm9sbGVyLXByb2plY3RzLmFjdGlvbi1zaG93IHtcclxuICAjY29udGVudCB7XHJcbiAgICBkaXYuYm94LFxyXG4gICAgLnNwbGl0Y29udGVudGxlZnQgLndpa2l7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgcGFkZGluZzoyMHB4O1xyXG4gICAgICBtYXJnaW46MCAwIDIwcHg7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG5cclxuICAgICAgcCB7XHJcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5saXN0IHtcclxuICAgICAgICBtYXJnaW46IDAgMCAxNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNwbGl0Y29udGVudGxlZnQge1xyXG4gICAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xyXG4gICAgfVxyXG4gICAgLnNwbGl0Y29udGVudHJpZ2h0IHtcclxuICAgICAgcGFkZGluZzogMCAwIDAgMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc3BsaXRjb250ZW50bGVmdCxcclxuICAgIC5zcGxpdGNvbnRlbnRyaWdodCB7XHJcbiAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgICAgLmJveCB7XHJcbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLndpa2kge1xyXG4gICAgICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRleHR1YWwge1xyXG4gICAgICAjYmxvY2stZm9ybSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIG9yZGVyOiAtMztcclxuXHJcbiAgICAgICAgLnNlbGVjdDIge1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRhYmxlLmxpc3Qge1xyXG4gICAgdGgge1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgIH1cclxuICAgIHRkIHtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG5cclxuICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgICAgbWluLXdpZHRoOiAxMDlweDtcclxuICAgICAgICAgIHBhZGRpbmc6IDRweCA1cHggNXB4O1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdHJhY2tlci0xKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlO1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2U7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlO1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlO1xyXG5cclxuICAgICAgICAgICZbaHJlZio9XCJ0cmFja2VyX2lkPTFcIl0ge2JhY2tncm91bmQ6dmFyKC0tdHJhY2tlci0xKTt9XHJcbiAgICAgICAgICAmW2hyZWYqPVwidHJhY2tlcl9pZD0yXCJdIHtiYWNrZ3JvdW5kOnZhcigtLXRyYWNrZXItMik7fVxyXG4gICAgICAgICAgJltocmVmKj1cInRyYWNrZXJfaWQ9M1wiXSB7YmFja2dyb3VuZDp2YXIoLS10cmFja2VyLTMpO31cclxuXHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBTVEFSVCBPVkVSVklFVyAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgQ09OVEFDVFMqL1xyXG4jZHVwbGljYXRlcyB7XHJcbiAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcclxuXHJcbiAgLmljb24tdmNhcmQge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCJcXEUwMUFcIjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHdpZHRoOiAyMnB4O1xyXG4gICAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNkdXBsaWNhdGVzIHtcclxuICAgIG1hcmdpbjogMCAtN3B4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuXHJcbiAgICAuYXZhdGFyIHtcclxuICAgICAgd2lkdGg6IDY0cHg7XHJcbiAgICAgIGhlaWdodDogNjRweDtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgICAgIG1hcmdpbjogMCA3cHggMTVweCA3cHg7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgbGluZS1oZWlnaHQ6IEBnbGgyO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIHNwYW4udGlwIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICBib3R0b206IC0yNnB4O1xyXG4gICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIHdpZHRoOiAxNjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAgLTgwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZnMxMiAhaW1wb3J0YW50O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjMgIWltcG9ydGFudDtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBib3R0b20gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgIGJvcmRlci1sZWZ0OiA4cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDhweCBzb2xpZCB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAtNXB4O1xyXG4gICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCAtOHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBhOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTIgIWltcG9ydGFudDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjEgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAmICsgYnIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS10b29sdGlwLWJnKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYVtocmVmXj1cIm1haWx0b1wiXSxcclxuICAgICAgICBhW2hyZWZePVwidGVsXCJdIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTIgIWltcG9ydGFudDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjMgIWltcG9ydGFudDtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfVxyXG4gICAgICAmOmhvdmVyIHNwYW4udGlwe1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICBib3R0b206IC02cHg7XHJcbiAgICAgIH1cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgQ09OVEFDVFMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1FRElBKi9cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyNTBweCkge31cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcclxuICAubXlwYWdlLWJveCB7XHJcbiAgICAmID4gLmNvbnRleHR1YWwge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gIC5jb250cm9sbGVyLXByb2plY3RzLmFjdGlvbi1zaG93IHtcclxuICAgICNjb250ZW50IHtcclxuICAgICAgZGl2LmJveCxcclxuICAgICAgLnNwbGl0Y29udGVudGxlZnQgLndpa2kge1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAjYmxvY2stZm9ybSB7XHJcbiAgICAgICAgLnNlbGVjdDIge1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0YWJsZS5saXN0IHtcclxuICAgICAgdGQge1xyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogYXV0bztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIE1FRElBKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuXHJcbi8qU1RBUlQgUEFHSU5BVElPTiovXHJcbiNtYWluID4gI2NvbnRlbnQgc3Bhbi5wYWdpbmF0aW9uIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAucGFnZXMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBtYXJnaW46IDAgMTVweCAwIDA7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBtYXJnaW46IDAgM3B4O1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1pbi13aWR0aDogMzBweDtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuXHJcbiAgICAgIGEsIHNwYW4ge1xyXG4gICAgICAgIHBhZGRpbmc6IDhweCAxMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tcGFnaW5hdGlvbi1jb2xvcik7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuICAgICAgYSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcGFnaW5hdGlvbi1iZyk7XHJcbiAgICAgIH1cclxuICAgICAgYTpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXBhZ2luYXRpb24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBhZ2luYXRpb24tYmctaG92ZXIpO1xyXG4gICAgICB9XHJcbiAgICAgICYuY3VycmVudCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcblxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLXBhZ2luYXRpb24tY29sb3ItYXZ0aXZlKTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBhZ2luYXRpb24tYmctYWN0aXZlKTtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wYWdpbmF0aW9uLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYubmV4dCxcclxuICAgICAgJi5wcmV2aW91cyB7XHJcbiAgICAgICAgYSwgc3BhbiB7XHJcbiAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTk5cHg7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwcHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLWljb24td2lkdGgpIHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDBweDtcclxuICAgICAgICAgICAgbGVmdDogMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYWdpbmF0aW9uLWJnKTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOmhvdmVyOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBhZ2luYXRpb24tYmctaG92ZXIpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG50YWJsZSB7XHJcbiAgYVtocmVmKj1cImdhbnR0P2FjdGlvbj1zaG93XCJdIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBNRURJQSovXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAuY29udHJvbGxlci1pc3N1ZXMuYWN0aW9uLXNob3cge1xyXG4gICAgJi5sb2dnZWRhcyB7XHJcbiAgICAgICNtYWluIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2lzc3VlX3RyZWUsXHJcbiAgICAjcmVsYXRpb25zIHtcclxuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbjogLTFweCAtMTBweCAyMHB4O1xyXG4gICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgI21haW4ge1xyXG4gICAgICBkaXYuaXNzdWUge1xyXG4gICAgICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgdG9wOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItaXNzdWVzLmFjdGlvbi1pbmRleCB7XHJcbiAgICAjbWFpbiA+ICNjb250ZW50IHtcclxuICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgIHNwYW4ucGFnaW5hdGlvbiB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgcC5vdGhlci1mb3JtYXRzIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluID4gI2NvbnRlbnQge1xyXG4gICAgc3Bhbi5wYWdpbmF0aW9uIHtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gICAgICAucGFnZXMge1xyXG4gICAgICAgIGxpLm5leHQsXHJcbiAgICAgICAgbGkucHJldmlvdXMge1xyXG4gICAgICAgICAgd2lkdGg6IGF1dG87XHJcblxyXG4gICAgICAgICAgYXtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgI21haW4gPiAjY29udGVudCB7XHJcbiAgICBzcGFuLnBhZ2luYXRpb24ge1xyXG4gICAgICBtYXJnaW46IDEwcHggMCAwO1xyXG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBNRURJQSovXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuQGltcG9ydCAnX3dvcmstdmFycy5sZXNzJztcclxuXHJcblxyXG4vKiBTVEFSVCBQUk9KRUNUUyAqL1xyXG4uY29udHJvbGxlci1wcm9qZWN0cy5hY3Rpb24taW5kZXgge1xyXG5cclxuICAmOm5vdCgubG9nZ2VkYXMpe1xyXG4gICAgI21haW4ge1xyXG4gICAgICAjY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNjb250ZW50ICNxdWVyeV9mb3JtIHtcclxuICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDQwcHgnKTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcclxuICAgIG1hcmdpbi1yaWdodDogLTIwcHg7XHJcblxyXG4gICAgLmhvbGRlci1maWx0ZXJzIHtcclxuICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyA0MHB4Jyk7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAtMjBweDtcclxuXHJcbiAgICAgIC5pbi1maWx0ZXIge1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMzJweDtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNxdWVyeV9mb3JtX3dpdGhfYnV0dG9ucyB7XHJcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI21haW4ge1xyXG4gICAgI2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgJiA+IGgyIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgICAgIC5ib3JkZXJiKCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHAub3RoZXItZm9ybWF0cyB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBwIHtcclxuXHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHBbc3R5bGU9XCJ0ZXh0LWFsaWduOnJpZ2h0O1wiXSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgICBsaW5lLWhlaWdodDogQGZzMTY7XHJcblxyXG4gICAgICAgIC5pY29uLWZhdiB7XHJcbiAgICAgICAgICBwYWRkaW5nOjhweCAwIDhweCA1MHB4O1xyXG4gICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggMHB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDIwcHg7XHJcbiAgICAgICAgICB6LWluZGV4OjI7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDE1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogLTEwcHggMCAwO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplLXNtYWxsKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICYubXktcHJvamVjdCB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge2NvbG9yOiB2YXIoLS1pY29uLXN0YXIpO31cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEuaWNvbi1mYXYge1xyXG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjcHJvamVjdHMtaW5kZXgge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIGNvbHVtbi1jb3VudDogaW5oZXJpdDtcclxuICAgICAgICBjb2x1bW4td2lkdGg6IGluaGVyaXQ7XHJcbiAgICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IGluaGVyaXQ7XHJcbiAgICAgICAgLXdlYmtpdC1jb2x1bW4td2lkdGg6IGluaGVyaXQ7XHJcbiAgICAgICAgLXdlYmtpdC1jb2x1bW4tZ2FwIDogaW5oZXJpdDtcclxuICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogaW5oZXJpdDtcclxuICAgICAgICAtbW96LWNvbHVtbi13aWR0aDogaW5oZXJpdDtcclxuICAgICAgICAtbW96LWNvbHVtbi1nYXAgOiBpbmhlcml0O1xyXG5cclxuICAgICAgICAmID4gdWwucHJvamVjdHMge1xyXG4gICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICAgICAgICBsaXN0LXN0eWxlOm5vbmU7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgIGNvbHVtbi1jb3VudDogaW5oZXJpdDtcclxuICAgICAgICAgIGNvbHVtbi13aWR0aDogaW5oZXJpdDtcclxuICAgICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiBpbmhlcml0O1xyXG4gICAgICAgICAgLXdlYmtpdC1jb2x1bW4td2lkdGg6IGluaGVyaXQ7XHJcbiAgICAgICAgICAtd2Via2l0LWNvbHVtbi1nYXAgOiBpbmhlcml0O1xyXG4gICAgICAgICAgLW1vei1jb2x1bW4tY291bnQ6IGluaGVyaXQ7XHJcbiAgICAgICAgICAtbW96LWNvbHVtbi13aWR0aDogaW5oZXJpdDtcclxuICAgICAgICAgIC1tb3otY29sdW1uLWdhcCA6IGluaGVyaXQ7XHJcblxyXG4gICAgICAgICAgdWwucHJvamVjdHMge1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCA1MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgLSAyNXB4Jyk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgY29sdW1uLWNvdW50OiBpbmhlcml0O1xyXG4gICAgICAgICAgICBjb2x1bW4td2lkdGg6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiBpbmhlcml0O1xyXG4gICAgICAgICAgICAtd2Via2l0LWNvbHVtbi13aWR0aDogaW5oZXJpdDtcclxuICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tZ2FwIDogaW5oZXJpdDtcclxuICAgICAgICAgICAgLW1vei1jb2x1bW4tY291bnQ6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIC1tb3otY29sdW1uLXdpZHRoOiBpbmhlcml0O1xyXG4gICAgICAgICAgICAtbW96LWNvbHVtbi1nYXAgOiBpbmhlcml0O1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBhLnByb2plY3Qge1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDMwcHggMTVweCA1MHB4O1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJiA+IGxpIHtcclxuICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgICAgICAgICYuY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgJi5maXJzdC1jaGlsZCB7Ym9yZGVyOiBub25lO31cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBsaSB7XHJcblxyXG4gICAgICAgICAgICAmID4gZGl2IHtcclxuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcblxyXG4gICAgICAgICAgICAgINCwIHtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgbGkucm9vdCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogaW5oZXJpdDtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Oy1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICBicmVhay1pbnNpZGU6aW5oZXJpdDtcclxuICAgICAgICAgICAgLXdlYmtpdC1icmVhay1pbnNpZGU6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIC1tb3otYnJlYWstaW5zaWRlOiBpbmhlcml0O1xyXG4gICAgICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTppbmhlcml0O1xyXG4gICAgICAgICAgICAtd2Via2l0LWNvbHVtbi1icmVhay1pbnNpZGU6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIC1tb3otY29sdW1uLWJyZWFrLWluc2lkZTogaW5oZXJpdDtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBib3gtc2hhZG93IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBib3gtc2hhZG93IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGJveC1zaGFkb3cgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246ICBib3gtc2hhZG93IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAgYm94LXNoYWRvdyB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgZGl2LnJvb3Qge1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBkaXYuY2hpbGQge1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAucHJvamVjdHMtb3BlbiB7XHJcbiAgICAgICAgICAgICYgPiBkaXYucm9vdCxcclxuICAgICAgICAgICAgJiA+IGRpdi5jaGlsZCB7XHJcbiAgICAgICAgICAgICAgJiA+IC5wcm9qZWN0IHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICYgLmhvbGRlci1tYWlubGluayA+IC5saXN0LWJ1dHRvbnMge1xyXG4gICAgICAgICAgICAgICAgLm9wZW4tcHJvamVjdHMge1xyXG4gICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAud2lraS1vcGVuIHtcclxuICAgICAgICAgICAgLmxpc3QtYnV0dG9ucyB7XHJcbiAgICAgICAgICAgICAgLm9wZW4td2lraSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbl9jb2xvcl9hY3RpdmUtYmcpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgICAucHJvamVjdHMtb3BlbiAgPiAuaG9sZGVyLW1haW5saW5rIC5wcm9qZWN0IHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5ob2xkZXItbWFpbmxpbmsge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5wcm9qZWN0IHtcclxuICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4IDE1cHggNTBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBAZ2ZmO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IEBmczE2O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggNTAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLm15LXByb2plY3Q6YWZ0ZXIgIHtcclxuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLXN0YXIpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICB3aWR0aDogMzBweDtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICAgICAgICBtYXJnaW46IC0xNXB4IDAgMDtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgIGxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAtMTVweCAwIDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmID4gbGkgPiB1bC5wcm9qZWN0cyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAzMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgLSA2MHB4Jyk7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgICAgICAgbGVmdDowO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ob2xkZXItd2lraSxcclxuICAgICAgICAuaG9sZGVyLXByb2plY3RzIHtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ob2xkZXItd2lraS1pbm5lciB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O2JveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2hpbGQge1xyXG4gICAgICAgICAgLmhvbGRlci13aWtpLWlubmVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGRpdi53aWtpIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAub3Blbi1wcm9qZWN0cyB7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiAgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAub3Blbi13aWtpLFxyXG4gICAgICAgIC5vcGVuLXByb2plY3Rze1xyXG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICAgICAgICBmbG9hdDpyaWdodDtcclxuICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgICAgei1pbmRleDoyO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBmb250LXNpemU6MHB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6MHB4O1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge2NvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTt9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJi5zZWxlY3RlZCB7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2FjdGl2ZS1iZyk7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjphZnRlciB7Y29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlLWJnKTt9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubGlzdC1idXR0b25zIHtcclxuICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgcGFkZGluZzowIDE1cHggMCAxMHB4O1xyXG4gICAgICAgICAgbGlzdC1zdHlsZTpub25lO1xyXG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBtYXJnaW46IC0xMHB4IDAgMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMXB4O1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgNXB4O1xyXG5cclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiBTVEFSVCBUQUJMRSBMSVNUICovXHJcblxyXG4gIC5saXN0LnByb2plY3RzLm9kZC1ldmVuIHtcclxuICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcblxyXG4gICAgLmljb24ge1xyXG4gICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKSAhaW1wb3J0YW50O1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCkgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICYubXktcHJvamVjdCB7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcikgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgJjphZnRlcixcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZS1zbWFsbCk7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcikgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHAge1xyXG4gICAgLmljb24ge1xyXG4gICAgICAmLm15LXByb2plY3Qge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIsXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUtc21hbGwpO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tc3RhcikgIWltcG9ydGFudDtcclxuICAgICAgICAgIGxlZnQ6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbWFpbiB7XHJcbiAgICAjY29udGVudCB7XHJcbiAgICAgIC5wYWdpbmF0aW9uIHtcclxuICAgICAgICAmIH4gcFtzdHlsZT1cInRleHQtYWxpZ246cmlnaHQ7XCJdIHtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiBFTkQgVEFCTEUgTElTVCAqL1xyXG59XHJcblxyXG4jcHJvamVjdHMtaW5kZXggKyBwIC5teS1wcm9qZWN0IHtcclxuICBwYWRkaW5nOjhweCAwIDhweCA1MHB4O1xyXG4gIG1hcmdpbjowO1xyXG4gIG92ZXJmbG93OmhpZGRlbjtcclxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMHB4IDBweDtcclxuICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMjBweDtcclxuICB6LWluZGV4OjI7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDE1cHg7XHJcbiAgICBtYXJnaW46IC0xMHB4IDAgMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZS1zbWFsbCk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICBjb2xvcjogdmFyKC0taWNvbi1zdGFyKTtcclxuICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1FRElBKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgI3Byb2plY3RzLWluZGV4ICsgcCAubXktcHJvamVjdCB7XHJcbiAgICBwYWRkaW5nOiA4cHggMCA4cHggNDBweDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgbGVmdDogMTBweDtcclxuICAgIH1cclxuICB9XHJcbiAgLmNvbnRyb2xsZXItcHJvamVjdHMuYWN0aW9uLWluZGV4IHtcclxuICAgIGZvcm1bYWN0aW9uPVwiL3Byb2plY3RzXCJdIHtcclxuICAgICAgbGFiZWxbZm9yPVwiY2xvc2VkXCJdIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNjb250ZW50ICNxdWVyeV9mb3JtIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcblxyXG4gICAgICAuaG9sZGVyLWZpbHRlcnMge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG5cclxuICAgICAgICAuaW4tZmlsdGVyIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjbWFpbiB7XHJcbiAgICAgICNjb250ZW50IHtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcblxyXG4gICAgICAgICYgPiBoMiB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAub3RoZXItZm9ybWF0cyB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwW3N0eWxlPVwidGV4dC1hbGlnbjpyaWdodDtcIl0ge1xyXG4gICAgICAgICAgbWFyZ2luOiAyMHB4IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucHJvamVjdCB7XHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI3Byb2plY3RzLWluZGV4IHtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG5cclxuICAgICAgICAgICYgPiB1bC5wcm9qZWN0cyB7XHJcblxyXG4gICAgICAgICAgICBsaS5yb290IHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAucHJvamVjdCB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4IDE1cHggNDBweDtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcblxyXG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUtc21hbGwpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAtMTBweCAwIDA7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB1bC5wcm9qZWN0cyB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCA0MHB4O1xyXG5cclxuICAgICAgICAgICAgICBhLnByb2plY3Qge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAzMHB4IDE1cHggMzBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIHVsLnByb2plY3RzIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMzBweDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAubGlzdC1idXR0b25zIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMTBweDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAub3Blbi13aWtpLFxyXG4gICAgICAgICAgLm9wZW4tcHJvamVjdHN7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHBbc3R5bGU9XCJ0ZXh0LWFsaWduOnJpZ2h0O1wiXSB7XHJcblxyXG4gICAgICAgICAgLmljb24tZmF2IHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnBhZ2luYXRpb24ge1xyXG4gICAgICAgICAgJiB+IHBbc3R5bGU9XCJ0ZXh0LWFsaWduOnJpZ2h0O1wiXSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gIC5jb250cm9sbGVyLXByb2plY3RzIHtcclxuICAgICYuYWN0aW9uLWluZGV4IHtcclxuICAgICAgI3F1ZXJ5X2Zvcm1fd2l0aF9idXR0b25zLFxyXG4gICAgICAjcXVlcnlfZm9ybV9jb250ZW50LFxyXG4gICAgICAjZXEtZmlsdGVyLWNvbnRyb2xzIHtcclxuICAgICAgICAuYnV0dG9ucyB7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAjcHJvamVjdHMtaW5kZXggKyBwIC5teS1wcm9qZWN0IHtcclxuICAgIHBhZGRpbmc6IDhweCAwIDhweCAzMHB4O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItcHJvamVjdHMuYWN0aW9uLWluZGV4IHtcclxuICAgICNtYWluIHtcclxuICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgICNxdWVyeV9mb3JtIHtcclxuICAgICAgICAgIC5ob2xkZXItZmlsdGVycyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBmaWVsZHNldC5maWx0ZXItYm94IHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICNwcm9qZWN0cy1pbmRleCB7XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuXHJcbiAgICAgICAgICAmID4gdWwucHJvamVjdHMge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG5cclxuICAgICAgICAgICAgbGkucm9vdCB7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKSAhaW1wb3J0YW50OztcclxuICAgICAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHBbc3R5bGU9XCJ0ZXh0LWFsaWduOnJpZ2h0O1wiXSB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG5cclxuICAgICAgICAgIC5pY29uLWZhdiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxuXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIFBST0pFQ1RTICovXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuLyogU1RBUlQgVkFSUyBGT1IgU0lERUJBUiAqL1xyXG4vKiBFTkQgVkFSUyBGT1IgU0lERUJBUiAqL1xyXG5cclxuLyogU1RBUlQgU0lERUJBUiAqL1xyXG4jbWFpbiB7XHJcbiAgI3NpZGViYXIge1xyXG4gICAgLmNvbnRleHR1YWwge1xyXG4gICAgICBhIHtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCkgIWltcG9ydGFudDtcclxuICAgICAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKSAgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogIHZhcigtLWljb24tc21hbGxlci13aWR0aCkgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjdG9nZ2xlLWNvbXBsZXRlZC12ZXJzaW9ucyB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICBwYWRkaW5nOiAwIDM2cHggMCAwO1xyXG4gICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIGZsZXg6IDE7XHJcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IEBvcGVuLWZvbGRlcjtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6NTAlO1xyXG4gICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgcmlnaHQ6MDtcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIG1hcmdpbjogLTEzcHggMCAwO1xyXG4gICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDonJztcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjUwJTtcclxuICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgIHJpZ2h0OjBweDtcclxuICAgICAgICBoZWlnaHQ6MjZweDtcclxuICAgICAgICB3aWR0aDoyNnB4O1xyXG4gICAgICAgIG1hcmdpbjogLTEzcHggMCAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uX2NvbG9yX2FjdGl2ZSk7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuaWNvbi1jb2xsYXBzZWQsXHJcbiAgICAgICYuY29sbGFwc2VkIHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuI3NpZGViYXIge1xyXG4gIHdpZHRoOiAgMDtcclxuXHJcbiAgLnF1ZXN0aW9uLW1ldGEge1xyXG4gICAgLmljb24ge1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgIHBhZGRpbmc6MCAwIDAgMzBweDtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBtaW4taGVpZ2h0OjI2cHg7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OjI7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1tYWluX3RleHRfY29sb3IpO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDo1MCU7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICBtYXJnaW46LTEzcHggMCAwO1xyXG4gICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmljb24tdm90ZSB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OiBAdm90ZXM7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmljb24tdmlldyB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OiBAZmF2O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmljb24tZW1haWwge1xyXG4gICAgcGFkZGluZzogMCAwIDAgMjVweDtcclxuICAgIG1pbi1oZWlnaHQ6IDIwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMjBweDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZS1zbWFsbCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3Bhbi5pY29uLWVtYWlsIHtcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICB9XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDonJztcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBjbGVhcjpib3RoO1xyXG4gIH1cclxuXHJcbiAgYS5zZWxlY3RlZCB7XHJcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICBsaW5lLWhlaWdodDogQGZzMTI7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19hY3RpdmUpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlKTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyKTtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJ1dHRvbi1zbWFsbCB7XHJcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICBsaW5lLWhlaWdodDogQGZzMTI7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1ob3Zlcik7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYXNzaWduYWJsZS11c2VyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiA1cHggMCAwO1xyXG5cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucHJvamVjdC1tZW1iZXJzIHtcclxuICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgfVxyXG5cclxuICBzcGFuLnRhZ19saXN0IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcblxyXG4gIHRhYmxlLm5vdGVfZGF0YSB7XHJcbiAgICB0ZC5hdmF0YXIge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5pbiA+IGEge1xyXG4gICAgbWFyZ2luOiAycHggIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIGRpdiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG5cclxuICAjYXR0cmlidXRlcyB7XHJcbiAgICAuYXR0cmlidXRlcyB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgdGJvZHkge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0ciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDEwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRkLFxyXG4gICAgICB0aCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jd3JhcHBlciB7XHJcbiAgI3NpZGViYXIge1xyXG4gICAgdGFibGUubm90ZV9kYXRhIHtcclxuICAgICAgdGQubmFtZSB7XHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgM3B4IWltcG9ydGFudDtcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGgyO1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoMjtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBhLndpa2ktYW5jaG9yIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI21haW4ge1xyXG4gICNzaWRlYmFyIHtcclxuICAgIGEuaWNvbixcclxuICAgIGEuaWNvbi1vbmx5IHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYXR0YWNobWVudHMge1xyXG4gICAgICB0YWJsZSB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDJweCAzNXB4IDJweCAwO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pY29uLWRvd25sb2FkIHtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICBtYXJnaW46IC0xM3B4IDAgMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zaXplIHtcclxuICAgICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAgNXB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuaWNvbi1hdHRhY2htZW50IHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi5oYXMtc2lkZWJhciB7XHJcbiAgI3NpZGViYXIgLnNlbGVjdDIgfiBoMyB7XHJcbiAgICBtYXJnaW46IDE1cHggMCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgI3dyYXBwZXIge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAzN3B4O1xyXG5cclxuICAgICNzaWRlYmFyIHtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgICBsZWZ0OiAtMjIzcHg7XHJcbiAgICAgIHdpZHRoOiAyNjBweDtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBwYWRkaW5nOiA0MHB4IDAgMjBweCAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiBsZWZ0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgei1pbmRleDogMTI7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnKTtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgcmlnaHQ6IC0xcHg7XHJcbiAgICAgICAgd2lkdGg6IDM2cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnKTtcclxuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuaG9sZGVyLXNpZGViYXIge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XHJcblxyXG4gICAgICAgIC5pbiB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmID4gKiB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHVsIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmID4gc3BhbiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGgzIHtcclxuICAgICAgICBmb250LXNpemU6IEBmczE2O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0cDogQGZzMTY7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgICAgbWFyZ2luOiAxNXB4IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmID4gaDMge1xyXG4gICAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW46IDJweCAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogLTRweDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB1bC53YXRjaGVycyB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBtYXJnaW46IDVweCAwIDA7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDQwcHggMCAyNnB4O1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgbWluLWhlaWdodDogMzBweDtcclxuXHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJiA+ICoge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgNXB4IDAgMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICBtYXJnaW46IC04cHggMCAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYS5kZWxldGUge1xyXG4gICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgIGZsZXg6ICAxIDAgYXV0bztcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAtMTVweCAwIDA7XHJcbiAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC50YWdfbGlzdDplbXB0eSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNtYWluIHtcclxuICAgICAgLm9wZW4tc2lkZWJhci1saW5rIHtcclxuICAgICAgICBwb3NpdGlvbjpmaXhlZDtcclxuICAgICAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgbGVmdDogMjNweDtcclxuICAgICAgICB6LWluZGV4OiAxMztcclxuICAgICAgICB0b3A6IDZweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zaWRlYmFyLW9wZW4tYnV0dG9uLWJnKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc2lkZWJhci1vcGVuLWJ1dHRvbi1jb2xvcik7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNpZGViYXItb3Blbi1idXR0b24tYm9yZGVyKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBtYXJnaW4gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBsZWZ0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBtYXJnaW4gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIG1hcmdpbiB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiBsZWZ0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBtYXJnaW4gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgbWFyZ2luIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOjA7XHJcbiAgICAgICAgICByaWdodDogMXB4O1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1zaWRlYmFyLW9wZW4tYnV0dG9uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNpZGViYXItb3Blbi1idXR0b24tYmctaG92ZXIpO1xyXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zaWRlYmFyLW9wZW4tYnV0dG9uLWJvcmRlci1ob3Zlcik7XHJcbiAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICN0b3AtbWVudSB7XHJcbiAgICB3aWR0aDogY2FsYyh+JzEwMCUgLSAzN3B4Jyk7XHJcbiAgfVxyXG5cclxuICAmLm9wZW4tc2lkZWJhciB7XHJcbiAgICAjdG9wLW1lbnUge1xyXG4gICAgICByaWdodDogLTIyM3B4O1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyNTRweDtcclxuICAgIH1cclxuXHJcbiAgICAjd3JhcHBlciB7XHJcbiAgICAgICNzaWRlYmFyIHtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICNoZWFkZXIge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAgMjIzcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICNtYWluIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMjIzcHg7XHJcblxyXG4gICAgICAgIC5vcGVuLXNpZGViYXItbGluayB7XHJcbiAgICAgICAgICBsZWZ0OiAyNDJweDtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgI2Zvb3RlciB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMjNweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5oYXMtbWFpbi1tZW51IHtcclxuICAgICN3cmFwcGVyIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA5NnB4O1xyXG5cclxuICAgICAgI3NpZGViYXIge1xyXG4gICAgICAgIGxlZnQ6IC0xNjRweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgI21haW4ge1xyXG4gICAgICAgIC5vcGVuLXNpZGViYXItbGluayB7XHJcbiAgICAgICAgICBsZWZ0OiA4MnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICN0b3AtbWVudSB7XHJcbiAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSAtIDk2cHgnKTtcclxuICAgIH1cclxuXHJcbiAgICAmLm9wZW4tc2lkZWJhciB7XHJcbiAgICAgICN0b3AtbWVudSB7XHJcbiAgICAgICAgcmlnaHQ6IC0yMjRweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNTRweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgI3dyYXBwZXIge1xyXG4gICAgICAgICNzaWRlYmFyIHtcclxuICAgICAgICAgIGxlZnQ6IDYwcHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI2hlYWRlciB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDIyNHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI21haW4ge1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDIyNHB4O1xyXG5cclxuICAgICAgICAgIC5vcGVuLXNpZGViYXItbGluayB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDMwNnB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI2Zvb3RlciB7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIyNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgI3dyYXBwZXIgI3NpZGViYXIge1xyXG4gICAgdG9wOiAtOTk5OTlweCAhaW1wb3J0YW50O1xyXG4gICAgbGVmdDogLTk5OTlweCAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qIFNUQVJUIFNJREVCQVIgU0NST0xMICovXHJcblxyXG4jc2lkZWJhciB7XHJcbiAgLmpjZi1zY3JvbGxiYXItdmVydGljYWwge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsLWJnKTtcclxuICB9XHJcblxyXG4gIC5qY2Ytc2Nyb2xsYmFyLXZlcnRpY2FsIC5qY2Ytc2Nyb2xsYmFyLWhhbmRsZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zY3JvbGwtaGFuZGxlKTtcclxuICAgIHdpZHRoOiBAd2JhcjtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgfVxyXG59XHJcbi8qIEVORCBTSURFQkFSIFNDUk9MTCAqL1xyXG5cclxuI3NpZGViYXIge1xyXG4gIHVsLmRhc2hib2FyZHMge1xyXG4gICAgbGkuZ2xvYmFsIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmJvZHkgc3Bhbi5kYXNoYm9hcmQtc3lzdGVtLWRlZmF1bHQuZ2xvYmFsIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XHJcbn1cclxuXHJcbi5mbHlvdXQtbWVudSB7XHJcbiAgc3Bhbi5kYXNoYm9hcmQtc3lzdGVtLWRlZmF1bHQuZ2xvYmFsIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgU0lERUJBUiAqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIFRPUCBNRU5VICovXHJcblxyXG5ib2R5ICN0b3AtbWVudSB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIGxlZnQ6IGF1dG87XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHBhZGRpbmc6NXB4IDMwcHggNXB4IDMwcHg7XHJcbiAgaGVpZ2h0OmF1dG87XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tYmcpO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICB6LWluZGV4OiAxMztcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IHJpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQsIHBhZGRpbmctcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAtbW96LXRyYW5zaXRpb246IHJpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQsIHBhZGRpbmctcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAtbXMtdHJhbnNpdGlvbjogcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dCwgcGFkZGluZy1yaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gIC1vLXRyYW5zaXRpb246IHJpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQsIHBhZGRpbmctcmlnaHQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICB0cmFuc2l0aW9uOiByaWdodCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0LCBwYWRkaW5nLXJpZ2h0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gIGEudG9wLXN1Ym1lbnUge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgfVxyXG5cclxuICAuZHJvcGRvd24tbWVudSA+IGxpID4gYSxcclxuICAuZHJvcGRvd24tbWVudSA+IGxpIGEge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yKTtcclxuICAgIHBhZGRpbmc6IDRweCA1cHggNHB4IDMwcHg7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB3aWR0aDogMDtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saW5rLWJnKTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5kcm9wZG93bi1tZW51ID4gbGkgYTpob3ZlcixcclxuICAuZHJvcGRvd24tbWVudSA+IGxpIGE6Zm9jdXMsXHJcbiAgLmRyb3Bkb3duLXN1Ym1lbnU6aG92ZXIgYSxcclxuICAuZHJvcGRvd24tc3VibWVudTpmb2N1cyBhIHtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvci1ob3ZlcikgIWltcG9ydGFudDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tbGluay1iZy1ob3Zlcik7XHJcblxyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNsb2dnZWRhcyB7XHJcbiAgICBmb250LXNpemU6IDA7XHJcbiAgICBsaW5lLWhlaWdodDogMDtcclxuICB9XHJcblxyXG4gIHVsIHtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgIH1cclxuXHJcbiAgICBsaSB7XHJcbiAgICAgIGZsb2F0OmxlZnQ7XHJcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIG1hcmdpbjogMCAzcHggMCAwO1xyXG5cclxuICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogLTk5OTk5OTlweDtcclxuICAgICAgICBsZWZ0OiAtOTk5OTk5OXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjYWNjb3VudCB7XHJcbiAgICBsaSB7bWFyZ2luOiAwIDAgMCAzcHg7fVxyXG4gIH1cclxuXHJcbiAgJiA+IHVsID4gbGkgPiBhIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBAd2FybmluZztcclxuICAgIH1cclxuXHJcbiAgICAmLmFsbC1pc3N1ZXMtdG9wIHtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogQGljb24tdGlja2V0cztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJiA+IHVsID4gbGkgPiBhLFxyXG4gICNhY2NvdW50IGE6bm90KCN0aW1lLWxvZ2dlci1tZW51KSxcclxuICAjbG9nZ2VkYXMgYSxcclxuICAuaG9sZGVyLXNlYXJjaC1saW5rIGEsXHJcbiAgLnJldm8tdXNlci1tZW51ID4gLmljb24tdXNlciB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmc6MDtcclxuICAgIGZsb2F0OnJpZ2h0O1xyXG4gICAgaGVpZ2h0OnZhcigtLWljb24td2lkdGgpO1xyXG4gICAgd2lkdGg6dmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgei1pbmRleDoyO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGZvbnQtc2l6ZTowcHg7XHJcbiAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgaGVpZ2h0OnZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICB3aWR0aDp2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIHotaW5kZXg6MTtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICBmb250LXNpemU6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICBoZWlnaHQ6MzBweDtcclxuICAgICAgd2lkdGg6MzBweDtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlcik7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlKTtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2FjdGl2ZSk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tZW51LWNoaWxkcmVuIHtcclxuICAgIHRvcDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDJweDtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTtcclxuICAgIC1tb3otYm94LXNoYWRvdzogMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgbGkgYSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpbmstYmcpICFpbXBvcnRhbnQ7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XHJcbiAgICAgIHBhZGRpbmc6IDRweCA1cHg7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBtYXJnaW46IC0xMHB4IDAgMDtcclxuICAgICAgICBsZWZ0OiA1cHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplLXNtYWxsKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxpbmstYmcpO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyKTtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGhyIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTUVESUEqL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICBib2R5IHtcclxuICAgICN0b3AtbWVudSB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICBib3JkZXI6IDA7XHJcblxyXG4gICAgICAucmV2by11c2VyLW1lbnUge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjdG9wLW1lbnUsXHJcbiAgICAjaGVhZGVyICNtYWluLW1lbnUge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICB0b3A6IDEwcHg7XHJcbiAgICAgIHJpZ2h0OiA0MHB4O1xyXG4gICAgICB6LWluZGV4OiAxMDE7XHJcbiAgICB9XHJcblxyXG4gICAgI3RvcC1tZW51IHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgYm9yZGVyOiAwO1xyXG5cclxuICAgICAgI2xvZ2dlZGFzIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgYm9keSxcclxuICBib2R5Lmhhcy1tYWluLW1lbnUsXHJcbiAgLmhhcy1zaWRlYmFyLmhhcy1tYWluLW1lbnUsXHJcbiAgLmhhcy1zaWRlYmFyIHtcclxuICAgICN0b3AtbWVudSB7XHJcbiAgICAgIHdpZHRoOiA2NHB4O1xyXG4gICAgICByaWdodDogNDBweDtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIFNUQVJUIFVTRVIgTElTVCAqL1xyXG5cclxuI3RvcC1tZW51IHtcclxuICAjYWNjb3VudCxcclxuICAjbG9nZ2VkYXMge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAtOTk5OTk5OTlweDtcclxuICAgIGxlZnQ6IC05OTk5OTk5OXB4O1xyXG4gIH1cclxuXHJcbiAgLm9wZW4tYm94IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAucmV2by11c2VyLW1lbnUge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgcGFkZGluZzogMCAwIDAgNDBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmLm9wZW4ge1xyXG4gICAgICAuZHJkbi1jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAuZHJkbi1jb250ZW50IHtcclxuICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG5cclxuICAgICAgLmRyZG4taXRlbXMge1xyXG4gICAgICAgIG1pbi13aWR0aDogMTBweDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAycHg7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcC10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgIHBhZGRpbmc6IDRweCA1cHggNHB4IDMwcHg7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiA1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWRyb3AtaWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZS1zbWFsbCkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kcm9wLWJnLWhvdmVyKTtcclxuICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIFVTRVIgTElTVCAqL1xyXG5cclxuLyogRU5EIFRPUCBNRU5VICovXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcblxyXG4vKiBTVEFSVCBVSSBXSURHRVQgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIFBPUFVQICovXHJcblxyXG4udWktd2lkZ2V0IHtcclxuICBmb250LWZhbWlseTogQGdmZjtcclxufVxyXG5cclxuLnVpLXdpZGdldC1vdmVybGF5IHtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1wb3B1cC1vdmVybGF5KTtcclxufVxyXG5kaXYudWktZGlhbG9nLFxyXG5kaXYubW9kYWwsXHJcbmRpdi51aS1kaWFsb2cubW9kYWwge1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tbWFpbi1ib3gtc2hhZG93KTtcclxuICAtbW96LWJveC1zaGFkb3c6IHZhcigtLW1haW4tYm94LXNoYWRvdyk7XHJcbiAgYm94LXNoYWRvdzogdmFyKC0tbWFpbi1ib3gtc2hhZG93KTtcclxuICBib3JkZXI6IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBtYXJnaW46IDA7XHJcbiAgbWF4LWhlaWdodDogMTAwdmg7XHJcbiAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgbWF4LXdpZHRoOiA2NTBweDtcclxuXHJcbiAgaW5wdXRbdHlwZT1cImRhdGVcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uL2NhbGVuZGFyLnN2Zyk7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLWljb24tc21hbGxlci13aWR0aCkgdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcblxyXG4gICAgJjo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yICB7XHJcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICBmb250LXNpemU6IDBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICN0cmFja2Vyc19kZXNjcmlwdGlvbiB7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG5cclxuICAgIGRsIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgZGQge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmV5KTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tb2RhbCB7XHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gIH1cclxuXHJcbiAgI3VzZXJzIHtcclxuICAgIHBhZGRpbmc6IDE1cHggMCAwO1xyXG4gIH1cclxuXHJcbiAgLmJveCB7XHJcbiAgICBwIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuXHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcCB7XHJcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gIH1cclxuXHJcbiAgbGFiZWxbZm9yPVwidXNlcl9zZWFyY2hcIl17XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgfVxyXG5cclxuICAudWktZGlhbG9nLXRpdGxlYmFyIHtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICBwYWRkaW5nOiAyMHB4IDUwcHggMjBweCA1MHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuXHJcbiAgI3VzZXJzX2Zvcl93YXRjaGVyIHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICBpbnB1dCNwcmluY2lwYWxfc2VhcmNoLCBpbnB1dCN1c2VyX3NlYXJjaCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcblxyXG4gIC51aS1kaWFsb2ctY29udGVudCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLnVpLWRpYWxvZy1idXR0b25zIHtcclxuICAgIC51aS1kaWFsb2ctY29udGVudCB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnVpLWRpYWxvZy1idXR0b25wYW5lIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG5cclxuICAgIC51aS1idXR0b24ge1xyXG4gICAgICBwYWRkaW5nOiA4cHggMzBweDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnKTtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tYnV0dG9uLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgbWFyZ2luOiAwIDIwcHggMCAwO1xyXG4gICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWhvdmVyKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXIpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudWktYnV0dG9uLXRleHQgIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYnV0dG9ucyB7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIG1hcmdpbjogMCAtMjBweCAtMjBweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cykgdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpIHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cykgdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG5cclxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICBwYWRkaW5nOiA4cHggMzBweDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnKTtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tYnV0dG9uLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgbWFyZ2luOiAwIDIwcHggMCAwO1xyXG4gICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWhvdmVyKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXIpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmICsgYVtvbmNsaWNrXSxcclxuICAgICAgJiArIGlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiA4cHggMzBweDtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvcik7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaWNvbi5pY29uLWRlbCB7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgcGFkZGluZzogOHB4IDMwcHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWRlbGwtY29sb3IpO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uLWRlbGwtYmcpO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246ICAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246ICAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246ICAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgbWFyZ2luOiAwIDIwcHggMCAwO1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbi1kZWxsLWJnLWhvdmVyKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1kZWxsLWNvbG9yLWhvdmVyKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjphZnRlcixcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICN1c2Vyc19mb3Jfd2F0Y2hlciB7XHJcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG5cclxuICAgIGxhYmVsIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIG1hcmdpbjogMTBweCAwIDA7XHJcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuXHJcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5pY29uLXVzZXIge1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICBtaW4taGVpZ2h0OiBhdXRvO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDE1cHg7XHJcbiAgICByaWdodDogMjBweDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBvdXRsaW5lOiAwIG5vbmU7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgbWFyZ2luOjA7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICB6LWluZGV4OjI7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLWljb24td2lkdGgpIHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgZm9udC1zaXplOjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OjBweDtcclxuICAgIGNvbG9yOiB2YXIoLS1wb3B1cC1jbG9zZS1jb2xvcik7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICB0ZXh0LWluZGVudDogMHB4O1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIGNvbnRlbnQ6IEBjbG9zZS1uZXctc21hbGw7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICBtYXJnaW46MDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgei1pbmRleDoxO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tcG9wdXAtY2xvc2UtYmcpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLXBvcHVwLWNsb3NlLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wb3B1cC1jbG9zZS1iZy1ob3Zlcik7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgY29sb3I6IHZhcigtLXBvcHVwLWNsb3NlLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wb3B1cC1jbG9zZS1iZy1ob3Zlcik7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudWktaWNvbiB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4gIC8qIFNUQVJUIEJJRyBNT0RBTCAqL1xyXG5cclxuICAub2JqZWN0cy1zZWxlY3Rpb24ge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgZmllbGRzZXQuYm94IHtcclxuICAgIHBhZGRpbmc6IDUwcHggMCAzNXB4IWltcG9ydGFudDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIGxlZnQ6IC0yMHB4O1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyA0MHB4Jyk7XHJcbiAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICBtYXJnaW46IC0yMHB4IDAgMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgcGFkZGluZzogNjBweCAwIDI1cHghaW1wb3J0YW50O1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGxlZ2VuZCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDIwcHg7XHJcbiAgICAgIGhlaWdodDogMjZweDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xyXG5cclxuICAgICAgLmljb24tY2hlY2tlZCB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGxhYmVsW2Zvcio9XCJyZXBvcnRfdGVtcGxhdGVfc2VhcmNoXCJdLFxyXG4gIGxhYmVsW2Zvcio9XCJwcm9kdWN0X3NlYXJjaFwiXSxcclxuICBsYWJlbFtmb3IqPVwiaW52b2ljZS10ZW1wbGF0ZS1zZWFyY2hcIl17XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgfVxyXG5cclxuICAjcHJvZHVjdF9zZWFyY2gge1xyXG4gICAgbWFyZ2luOiAxMHB4IDAgMDtcclxuICB9XHJcblxyXG4gIGxhYmVsW2Zvcio9XCJwcm9kdWN0X3NlYXJjaFwiXSB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG5cclxuICAjbmV3X3BhZ2Uge1xyXG4gICAgLmJveCB7XHJcbiAgICAgIHAge1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG5cclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZW0ge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIG1hcmdpbjogMTBweCAwIDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYm94IHtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiAwIDAgMjBweDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG5cclxuICAgIGxhYmVsIHtcclxuICAgICAgcGFkZGluZzogMCAxMHB4IDAgMDtcclxuICAgICAgbWFyZ2luOiAwIDAgNXB4O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICBtYXJnaW46IDEwcHggMCAwO1xyXG4gICAgICBtaW4taGVpZ2h0OiAwO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgJjpudGgtb2YtdHlwZSgxKSB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBlbSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tY2hlY2tlZCB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICBwYWRkaW5nOjA7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgbWFyZ2luOjAgNXB4IDAgLTRweDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgei1pbmRleDoyO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgZm9udC1zaXplOjBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6MHB4O1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDonJztcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjBweDtcclxuICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJi5zZWxlY3RlZHtcclxuICAgICAgICAmOmFmdGVyIHtjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7fVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG4gIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxyXG4gIHRleHRhcmVhe1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgIHBhZGRpbmc6IDZweCAxMnB4O1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBmczE4O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAgIG1hcmdpbjowO1xyXG4gICAgbWluLXdpZHRoOiAxOTBweDtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgb3V0bGluZTogMCBub25lO1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuXHJcbiAgICAmI2lzc3VlX3N1YmplY3QsXHJcbiAgICAmI3RpbWVfZW50cnlfY29tbWVudHN7XHJcbiAgICAgIG1heC13aWR0aDogNTUwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0ZXh0YXJlYTpub3QoLnNlbGVjdDItc2VhcmNoX19maWVsZCkge1xyXG4gICAgbWluLWhlaWdodDogMTAwcHg7XHJcbiAgICBoZWlnaHQ6IDEwMHB4O1xyXG4gIH1cclxuXHJcbiAgLm9iamVjdHMtc2VsZWN0aW9uID4gZGl2LFxyXG4gICN1c2VyX2dyb3VwX2lkcyB7XHJcbiAgICAtd2Via2l0LWNvbHVtbi1ydWxlOiAwIHNvbGlkIHZhcigtLWJnLWZmZik7XHJcbiAgICAtbW96LWNvbHVtbi1ydWxlOiAwIHNvbGlkIHZhcigtLWJnLWZmZik7XHJcbiAgfVxyXG5cclxuICAjcHJpbmNpcGFsc19mb3JfbmV3X21lbWJlciB7XHJcbiAgICBwYWRkaW5nOiAyMHB4IDAgMDtcclxuICB9XHJcblxyXG4gIHNwYW4ucGFnaW5hdGlvbiB7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgfVxyXG5cclxuICAvKiBTVEFSVCBQUk9EVUNUUyBNT0RBTCAqL1xyXG5cclxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4gIC8qIEVORCBQUk9EVUNUUyBNT0RBTCAqL1xyXG5cclxuICAjcmVwb3J0X3RlbXBsYXRlcyB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBtYXgtaGVpZ2h0OiAyMDBweDtcclxuICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICBtaW4taGVpZ2h0OiAzMHB4O1xyXG5cclxuICAgIGxhYmVsIHtcclxuICAgICAgbWFyZ2luOiAwIDAgNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmF1dG9jb21wbGV0ZSB7XHJcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luOiAxMHB4IDAgMDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi9zZWFyY2guc3ZnKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDUwJTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMzBweCAzMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgICBwYWRkaW5nOiA4cHggOHB4IDhweCAzOHB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAjcHJvZHVjdHNfZm9yX2lzc3VlIHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xyXG4gICAgcGFkZGluZzogMCAwIDEwcHg7XHJcblxyXG4gICAgLnByb2R1Y3Qge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICB9XHJcblxyXG4gICAgbGFiZWwge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5vYmplY3RzLXNlbGVjdGlvbj5kaXYsXHJcbiAgI3VzZXJfZ3JvdXBfaWRzIHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGNvbHVtbi1jb3VudDogaW5oZXJpdDtcclxuICAgIGNvbHVtbi13aWR0aDogaW5oZXJpdDtcclxuICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiBpbmhlcml0O1xyXG4gICAgLXdlYmtpdC1jb2x1bW4td2lkdGg6IGluaGVyaXQ7XHJcbiAgICAtd2Via2l0LWNvbHVtbi1nYXA6IGluaGVyaXQ7XHJcbiAgICAtbW96LWNvbHVtbi1jb3VudDogaW5oZXJpdDtcclxuICAgIC1tb3otY29sdW1uLXdpZHRoOiBpbmhlcml0O1xyXG4gICAgLW1vei1jb2x1bW4tZ2FwOiBpbmhlcml0O1xyXG4gIH1cclxuXHJcbiAgLyogRU5EIEJJRyBNT0RBTCAqL1xyXG5cclxuICAvKiBTVEFSVCBIRUxQIE1PREFMICovXHJcblxyXG4gICYuaGVscC1tb2RhbCB7XHJcbiAgICB3aWR0aDogY2FsYyh+JzEwMCUgLSAyMHB4JykgIWltcG9ydGFudDtcclxuICAgIG1heC13aWR0aDogNTAwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgIC51aS1kaWFsb2ctdGl0bGViYXIge1xyXG4gICAgICBwYWRkaW5nOiAyMHB4IDUwcHggMjBweCAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC51aS1kaWFsb2ctdGl0bGUge1xyXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgICAgdGV4dC1vdmVyZmxvdzogaW5oZXJpdDtcclxuICAgICAgd2hpdGUtc3BhY2U6IGluaGVyaXQ7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnVpLWRpYWxvZy1jb250ZW50IHtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC51aS1kaWFsb2ctY29udGVudCB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiBFTkQgSEVMUCBNT0RBTCAqL1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBBREQgRU1BSUxTIFBPUFVQICovXHJcblxyXG4jbmV3X2VtYWlsX2FkZHJlc3Mge1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwYWRkaW5nOiAyMHB4O1xyXG4gIG1hcmdpbjogLTIwcHg7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG5cclxuICBwIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcblxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgcGFkZGluZzogOHB4IDMwcHg7XHJcbiAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWhvdmVyKTtcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyKTtcclxuICAgIH1cclxuXHJcbiAgICAmICsgYVtvbmNsaWNrXSxcclxuICAgICYgKyBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBwYWRkaW5nOiA4cHggMzBweDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3IpO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmcpO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIEFERCBFTUFJTFMgUE9QVVAgKi9cclxuXHJcbi8qIEVORCBQT1BVUCAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgQVVUT0NPTVBMSVRFICovXHJcblxyXG5ib2R5IC51aS1tZW51IHtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG5cclxuICAudWktbWVudS1pdGVtIHtcclxuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGNvbG9yOnZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcblxyXG4gICAgLnVpLW1lbnUtaXRlbS13cmFwcGVyIHtcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICYudWktc3RhdGUtYWN0aXZlLFxyXG4gICAgLnVpLXN0YXRlLWFjdGl2ZSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYWxsLWhvdmVyLWJnKTtcclxuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmZpcnN0LWNoaWxkLFxyXG4gICAgJjpmaXJzdC1jaGlsZCAudWktbWVudS1pdGVtLXdyYXBwZXJ7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgLW1vei1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmxhc3QtY2hpbGQsXHJcbiAgICAmOmxhc3QtY2hpbGQgLnVpLW1lbnUtaXRlbS13cmFwcGVyIHtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgLW1vei1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIHdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIC1tb3otYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgQVVUT0NPTVBMSVRFICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBRVUVTVElPTiAqL1xyXG5cclxuI25ld19xdWVzdGlvbnNfc2VjdGlvbiB7XHJcbiAgI3F1ZXN0aW9uc19zZWN0aW9uX2Rlc2NyaXB0aW9uIHtcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgfVxyXG5cclxuICBwIHtcclxuICAgICNxdWVzdGlvbnNfc2VjdGlvbl9kZXNjcmlwdGlvbiB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgcGFkZGluZzogOHB4IDMwcHg7XHJcbiAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlcik7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXIpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlcik7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tYnV0dG9uLWZvbnQtd2VpZ2h0KTtcclxuICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXIpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIFFVRVNUSU9OICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBFRElUIFRBU0sgUkVETUlORVVQICovXHJcblxyXG5kaXYubW9kYWwge1xyXG4gIC50YWJ1bGFyIGlucHV0Om5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJyYWRpb1wiXSkge1xyXG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgIG1pbi1oZWlnaHQ6IDMwcHg7XHJcbiAgfVxyXG5cclxuICAudGFidWxhciBzZWxlY3Qge1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgbWluLWhlaWdodDogMzBweDtcclxuICB9XHJcblxyXG4gIC5pc3N1ZS1lZGl0LW1vZGFsIHtcclxuICAgIHAge1xyXG4gICAgICBtaW4taGVpZ2h0OiAwO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBwYWRkaW5nOiAzcHggMCAzcHggMTgwcHg7XHJcblxyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xODBweDtcclxuICAgICAgICB3aWR0aDogMTc1cHg7XHJcbiAgICAgICAgcGFkZGluZzogMCA1cHggMCAwO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuYnV0dG9ucyB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRleHRhcmVhIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNpbnZvaWNlLXRlbXBsYXRlcyB7XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBFRElUIFRBU0sgUkVETUlORVVQICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBEQVRFUElDS0VSICovXHJcblxyXG4udWktZGF0ZXBpY2tlciB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcblxyXG4gIGEudWktc3RhdGUtZGVmYXVsdCB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC51aS13aWRnZXQtaGVhZGVyIHtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgfVxyXG5cclxuICAudWktc3RhdGUtZGVmYXVsdCxcclxuICAudWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWRlZmF1bHQsXHJcbiAgLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWRlZmF1bHQge1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICB9XHJcblxyXG4gIC51aS1zdGF0ZS1oaWdobGlnaHQsXHJcbiAgLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1oaWdobGlnaHQsXHJcbiAgLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWhpZ2hsaWdodCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ub3RpY2Utd29ybmluZy1iZyk7XHJcbiAgfVxyXG5cclxuICAudWktc3RhdGUtaG92ZXIsXHJcbiAgLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1ob3ZlcixcclxuICAudWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtaG92ZXIsXHJcbiAgLnVpLXN0YXRlLWZvY3VzLFxyXG4gIC51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZm9jdXMsXHJcbiAgLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWZvY3VzIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW5vdGljZS1lcnJvci1iZyk7XHJcbiAgfVxyXG5cclxuICAudWktc3RhdGUtaG92ZXIsXHJcbiAgLnVpLXN0YXRlLWZvY3VzIHtcclxuICAgICYudWktZGF0ZXBpY2tlci1uZXh0LWhvdmVyLFxyXG4gICAgJi51aS1kYXRlcGlja2VyLXByZXYtaG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudWktc3RhdGUtYWN0aXZlLFxyXG4gIC51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtYWN0aXZlLFxyXG4gIC51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbm90aWNlLWVycm9yLWJnKTtcclxuICAgIGNvbG9yOiB2YXIoLS1ub3RpY2UtZXJyb3ItbWFpbi10ZXh0KTtcclxuXHJcbiAgICAudWktaWNvbiB7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWFnZXMvdWkvdWktaWNvbnNfNDQ0NDQ0XzI1NngyNDAucG5nKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC51aS1kYXRlcGlja2VyLXByZXYsXHJcbiAgLnVpLWRhdGVwaWNrZXItbmV4dCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBjb250ZW50OiBAYXJyb3ctd2lkZS1yaWdodDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgbGVmdDogNTAlO1xyXG4gICAgICBtYXJnaW46IC0xMHB4IDAgMCAtMTBweDtcclxuICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudWktZGF0ZXBpY2tlci1wcmV2IHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudWktd2lkZ2V0LWNvbnRlbnQge1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG5cclxuICAgIC51aS1wcmlvcml0eS1wcmltYXJ5IHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaW5wdXQsIHNlbGVjdCwgYnV0dG9uIHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vKiBFTkQgREFURVBJQ0tFUiAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgUFJPR1JFU1NCQVIgKi9cclxuXHJcbi51aS1wcm9ncmVzc2Jhci51aS13aWRnZXQtY29udGVudCB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICBib3JkZXItY29sb3I6IHZhcigtLWJnLWJveCk7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gIGZvbnQtc2l6ZTogMTBweDtcclxuICBsaW5lLWhlaWdodDogMTRweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHJcbiAgLnVpLXdpZGdldC1oZWFkZXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIH1cclxuXHJcbiAgI3Byb2dyZXNzLWxhYmVsIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICB9XHJcbn1cclxuXHJcbi5ib3gsXHJcbi50YWJ1bGFyLFxyXG5maWVsZHNldCB7XHJcbiAgLnVpLXByb2dyZXNzYmFyLnVpLXdpZGdldC1jb250ZW50IHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJnLWZmZik7XHJcblxyXG4gICAgLnVpLXdpZGdldC1oZWFkZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBQUk9HUkVTU0JBUiAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgUEVSSU9EIFBJS0VSICovXHJcblxyXG5ib2R5IC5wZXJpb2RfcGlja2VyX2lucHV0IHtcclxuICBmb250LXNpemU6IEBmczEyO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmV5KTtcclxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcblxyXG4gICY6YmVmb3JlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAucGVyaW9kX2J1dHRvbl9jb250ZW50IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAucGVyaW9kX2J1dHRvbl90ZXh0IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMCA1cHggMCA1cHg7XHJcbiAgfVxyXG5cclxuICAuaWNvbl9jYWxlbmRhciB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24vY2FsZW5kYXIuc3ZnKTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKSB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgfVxyXG5cclxuICAucGVyaW9kX2J1dHRvbl9jb250ZW50X2JvZHkge1xyXG4gICAgZmxleDogMSAwIGF1dG87XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIH1cclxuXHJcbiAgLmljb25fY2xlYXIge1xyXG4gICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxuICAgICAgY29udGVudDogQGNsb3NlLW5ldztcclxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmstZ3JleSk7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZS1zbWFsbCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucGVyaW9kX2J1dHRvbl9jb250ZW50X3dyYXBwZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbmJvZHkgLnBlcmlvZF9waWNrZXJfYm94IHtcclxuICAucGVyaW9kX3BpY2tlcl9zaG93LnBlcmlvZF9waWNrZXJfb2sge1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG5cclxuICAgICAgLmJ1dHRvbl90ZXh0IHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgIC5wZXJpb2RfcGlja2VyX3Nob3c6YmVmb3JlIHtcclxuICAgICAgICBvcGFjaXR5OiAwLjI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYnV0dG9uX3RleHQge1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuICB9XHJcbiAgLnBlcmlvZF9waWNrZXJfc2hvdyB7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogIG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246ICBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIG9wYWNpdHk6IDAuMjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNjb250ZW50IHtcclxuICBmb3JtIHtcclxuICAgIGlucHV0W3R5cGU9XCJkYXRlXCJdW3N0eWxlKj1cImFic29sdXRlXCJdIHtcclxuICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICBtaW4td2lkdGg6IDA7XHJcbiAgICAgIG1heC13aWR0aDogMDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgd2lkdGg6IDA7XHJcbiAgICAgIGhlaWdodDogMDtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgbWluLWhlaWdodDogMDtcclxuICAgIH1cclxuXHJcbiAgICAjanN0RWxlbWVudHMge1xyXG4gICAgICBzZWxlY3Qge1xyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICYuaWNvbi11c2VyIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAudGFiLWVsZW1lbnRzIHtcclxuICAgICAgLmljb24ge1xyXG4gICAgICAgICYuaWNvbi11c2VyIHtcclxuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIFBFUklPRCBQSUtFUiAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTVJESUEgKi9cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gIGRpdi5tb2RhbHtcclxuICAgIC5ib3gge1xyXG4gICAgICBwIHtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGZpZWxkc2V0LmJveHtcclxuICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA1MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgI25ld19lbWFpbF9hZGRyZXNzIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuICBkaXYudWktZGlhbG9nLm1vZGFsLFxyXG4gIGRpdi51aS1kaWFsb2csXHJcbiAgZGl2Lm1vZGFsIHtcclxuICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoficxMDAlIC0gMjBweCcpO1xyXG5cclxuICAgIC51aS1kaWFsb2ctY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcclxuICAgICAgbWFyZ2luOiAwIC0xMHB4O1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcblxyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJveCB7XHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHAge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXHJcbiAgICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcclxuICAgIHRleHRhcmVhIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbnMge1xyXG4gICAgICBtYXJnaW46IDAgLTEwcHggLTE1cHg7XHJcbiAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XHJcblxyXG4gICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWhvdmVyKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgKyBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxyXG4gICAgICAgICYgKyBhW29uY2xpY2tde1xyXG4gICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yKTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZyk7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmctaG92ZXIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmpzdEJsb2NrIHtcclxuICAgIGZsZXg6IDE7XHJcbiAgICBtYXJnaW46IDEwcHggMCAwO1xyXG5cclxuICAgIC50YWJzIHtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICB1bCB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmpzdEVsZW1lbnRzIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcclxuICBkaXYubW9kYWwsXHJcbiAgZGl2Lm1vZGFsLmhlbHAtbW9kYWwsXHJcbiAgZGl2LnVpLWRpYWxvZy5tb2RhbC5oZWxwLW1vZGFse1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7LW1vei1ib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7Ym9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgIC51aS13aWRnZXQtaGVhZGVyIHtcclxuXHJcbiAgICAgIC51aS1zdGF0ZS1kZWZhdWx0IHtcclxuICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICB0b3A6IDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudWktZGlhbG9nLXRpdGxlYmFyIHtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgcGFkZGluZzogMTVweCA0MHB4IDE1cHggMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAudWktZGlhbG9nLWJ1dHRvbnBhbmUge1xyXG4gICAgICAudWktYnV0dG9uIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW46IDAgMCAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgVUkgV0lER0VUICovXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuXHJcbi8qIFNUQVJUIFdJS0kgKi9cclxuXHJcbiNtYWluICNjb250ZW50IGRpdi53aWtpIHtcclxuICBwIHtcclxuICAgIGEucHJvamVjdCB7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDMycHg7XHJcblxyXG4gICAgICAmOmFmdGVyIHtjb250ZW50OiBAcHJvamVjdHM7fVxyXG4gICAgICAmOmFmdGVyLFxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgd2lkdGg6IDI2cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyNnB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuZXh0ZXJuYWwge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIHBhZGRpbmctbGVmdDogMjRweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjUwJTtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgbWFyZ2luOi0xMHB4IDAgMDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgei1pbmRleDoxO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUtc21hbGwpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJiArIGZpZWxkc2V0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IDI1cHggMzBweCAxNXB4O1xyXG4gICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDEwMCU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDQwcHg7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuICAgIGEuaWNvbixcclxuICAgIGEuaWNvbi1vbmx5e1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC5hdHRhY2htZW50cyB7XHJcbiAgICAgIHBhZGRpbmc6IDIwcHggMCAwO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcblxyXG4gICAgbGVnZW5kIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBwYWRkaW5nOiAwIDIwcHggMCA1MHB4O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIHotaW5kZXg6IDM7XHJcblxyXG4gICAgICAmOmhvdmVyICB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogQG9wZW4tZm9sZGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNXB4O1xyXG4gICAgICAgIGxlZnQ6IDEwcHg7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIGhlaWdodDp2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICB3aWR0aDp2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDonJztcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1cHg7XHJcbiAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICBoZWlnaHQ6dmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgd2lkdGg6dmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgei1pbmRleDogMDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmljb24tZXhwZW5kZWQge1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlLWJnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfYWN0aXZlLWJnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYgPiBkaXYge1xyXG4gICAgICBtYXgtaGVpZ2h0OiAyMDAwcHg7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIG1heC1oZWlnaHQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogIG1heC1oZWlnaHQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiAgbWF4LWhlaWdodCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogIG1heC1oZWlnaHQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246ICBtYXgtaGVpZ2h0IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAmLmNvbGxhcHNlZCB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBsZWdlbmQge1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDApO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDApO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgPiBkaXYge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIG1heC1oZWlnaHQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgbWF4LWhlaWdodCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogIG1heC1oZWlnaHQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogIG1heC1oZWlnaHQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogIG1heC1oZWlnaHQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ib3gge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLXdpa2kge1xyXG4gIC5hdHRhY2htZW50cyArICN3aWtpX2FkZF9hdHRhY2htZW50IHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG4gICN3aWtpX2FkZF9hdHRhY2htZW50IHtcclxuICAgIHBhZGRpbmc6IDQwcHggMCAwO1xyXG4gIH1cclxuXHJcbiAgLndpa2ktdXBkYXRlLWluZm8ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICB9XHJcblxyXG4gICN3aWtpX2Zvcm0ge1xyXG4gICAgLmpzdEJsb2NrIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgIH1cclxuXHJcbiAgICBmaWVsZHNldCB7XHJcbiAgICAgIHBhZGRpbmc6IDQycHggMCAwIDI5NXB4O1xyXG4gICAgICBtYXJnaW46IDEwcHggMCAwO1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYm94ICsgcCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG5cclxuICAvKiBTVEFSVCBXSUtJIFNUQVJUIFBBR0UgKi9cclxuXHJcbiAgJi5hY3Rpb24tc2hvdyB7XHJcblxyXG4gICAgLndpa2kud2lraS1wYWdlIHtcclxuICAgICAgbWFyZ2luOiAwOyAvKjE1cHggMCAwIDsqL1xyXG4gICAgfVxyXG5cclxuICAgICNtYWluIHtcclxuICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgIC5jb250ZXh0dWFsOm5vdCgubmV4dC1wcmV2LWxpbmtzKSB7XHJcbiAgICAgICAgICByaWdodDogMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLndpa2ktcGFnZSB7XHJcbiAgICAgICAgICBoMSB7XHJcblxyXG4gICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IEAxMDI0X2gyO1xyXG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTUwcHggMTVweCA2NXB4O1xyXG4gICAgICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDYwcHgnKTtcclxuICAgICAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIC0zMHB4IDIwcHg7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAgMzBweCBhdXRvO1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDIwcHggNTAlO1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblxyXG4gICAgICAgICAgICAgIGJyIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5oYXMtZm9vdGVyIHtcclxuICAgICAgI21haW4ge1xyXG4gICAgICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDUwcHgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogRU5EIFdJS0kgU1RBUlQgUEFHRSAqL1xyXG5cclxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4gIC8qIFNUQVJUIFdJS0kgUEFHRSBCQVkgREFURSAqL1xyXG5cclxuICAmLmFjdGlvbi1kYXRlX2luZGV4IHtcclxuICAgICNtYWluIHtcclxuICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCA1NnB4O1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmID4gaDIge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCA0MHB4O1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICBwYWRkaW5nOiAycHggMCAxNXB4IDMwcHg7XHJcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDowO1xyXG4gICAgICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDE0cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcclxuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTowO1xyXG4gICAgICAgICAgICBsZWZ0OjhweDtcclxuICAgICAgICAgICAgd2lkdGg6IDJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA1MCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgJi5vcGVuLXdpa2kge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaG9sZGVyLXdpa2ktZGF0ZSB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDowO1xyXG4gICAgICAgICAgICBsZWZ0OjhweDtcclxuICAgICAgICAgICAgd2lkdGg6IDJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMzBweDtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctb3RoZXIpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICBtYXJnaW46IDE1cHggMCAwO1xyXG5cclxuICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctb3RoZXItaW4pO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYmctb3RoZXItaW4pO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI3dpa2ktbmV3IHtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDRweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogRU5EIFdJS0kgUEFHRSBCQVkgREFURSAqL1xyXG5cclxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4gIC8qIFNUQVJUIFdJS0kgUEFHRSBCQVkgVElUTEUgKi9cclxuXHJcbiAgJi5hY3Rpb24taW5kZXgge1xyXG5cclxuICAgICNtYWluIHtcclxuICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCA1NnB4O1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmID4gaDIge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCA0MHB4O1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNjb250ZW50ID4gLnBhZ2VzLWhpZXJhcmNoeSB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuXHJcbiAgICAmID4gbGkge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctb3RoZXIpO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBpbmhlcml0O1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBib3gtc2hhZG93IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBib3gtc2hhZG93IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogIGJveC1zaGFkb3cgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246ICBib3gtc2hhZG93IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgYm94LXNoYWRvdyB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMTQzcmVtO1xyXG4gICAgICBmbGV4OiAxO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgZm9udC1mYW1pbHk6IEBnZmY7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMHB4IDUwJTtcclxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5oYXMtZHJvcCB7XHJcbiAgICAgICYgPiBhIHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAtMTBweCAwIDA7XHJcbiAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmhvbGRlci13aWtpIHtcclxuICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcblxyXG4gICAgLm9wZW4ge1xyXG4gICAgICAmID4gLmxpbmstd2lraSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlLWJnKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5saW5rLXdpa2kge1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZzowO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIG1hcmdpbjowIDE1cHg7XHJcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgIHotaW5kZXg6MjtcclxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGZvbnQtc2l6ZTowcHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OjBweDtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIH1cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfYWN0aXZlLWJnKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlLWJnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucGFnZXMtaGllcmFyY2h5IHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIG1hcmdpbjogMCAwIDAgMjBweDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgd2lkdGg6IGNhbGMoficxMDAlIC0gMjBweCcpO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgbGkge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG5cclxuICAgICAgICAmLmZpcnN0LWNoaWxkIHtib3JkZXI6IG5vbmU7fVxyXG5cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogRU5EIFdJS0kgUEFHRSBCQVkgVElUTEUgKi9cclxuICAuY29udGV4dHVhbCAuZHJkbi1jb250ZW50IHtcclxuICAgIHRvcDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbi8qIFNUQVJUIFdJS0kgSElTVE9SWSAqL1xyXG5cclxuLmNvbnRyb2xsZXItd2lraS5hY3Rpb24taGlzdG9yeSB7XHJcbiAgLndpa2ktcGFnZS12ZXJzaW9ucyB7XHJcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gIH1cclxuXHJcbiAgI21haW4gI2NvbnRlbnQge1xyXG4gICAgc3Bhbi5wYWdpbmF0aW9uIHtcclxuICAgICAgYm90dG9tOiAtNTRweDtcclxuICAgIH1cclxuICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICAgfVxyXG4gIH1cclxuXHJcbiAgYS5pY29uLFxyXG4gIGEuaWNvbi1vbmx5IHtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgV0lLSSBISVNUT1JZICovXHJcblxyXG4jY29udGVudCB7XHJcbiAgZGl2Lndpa2ktcGFnZSAuY29udGV4dHVhbCBhIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgV0lLSSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTUVESUEqL1xyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItd2lraSB7XHJcbiAgICAmLmFjdGlvbi1kYXRlX2luZGV4IHtcclxuICAgICAgI21haW4gI2NvbnRlbnQge1xyXG4gICAgICAgICYgPiBoMiB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGgze1xyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI3dpa2ktbmV3IHtcclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogMTRweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmFjdGlvbi1pbmRleCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbWFpbiB7XHJcbiAgICAjY29udGVudCB7XHJcbiAgICAgIGRpdi53aWtpIHtcclxuICAgICAgICAmICsgZmllbGRzZXQge1xyXG4gICAgICAgICAgcGFkZGluZzogMjVweCAxMHB4IDE1cHg7XHJcblxyXG4gICAgICAgICAgbGVnZW5ke1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItd2lraSB7XHJcbiAgICAmLmFjdGlvbi1zaG93IHtcclxuICAgICAgI21haW4gI2NvbnRlbnQge1xyXG4gICAgICAgIC53aWtpLXBhZ2Uge1xyXG4gICAgICAgICAgaDEge1xyXG4gICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4IDE1cHggNDVweDtcclxuICAgICAgICAgICAgICBtYXJnaW46IDAgLTEwcHggMjBweDtcclxuICAgICAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTBweCA1MCU7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNXB4IGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgPiAuY29udGV4dHVhbCB7XHJcblxyXG4gICAgICAgICAgLmRyZG4tY29udGVudCB7XHJcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAub3RoZXItZm9ybWF0cyB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC53aWtpLXVwZGF0ZS1pbmZvIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBib3R0b206IDIwcHg7XHJcbiAgICAgIGhlaWdodDogMzFweDtcclxuICAgICAgbGVmdDogMTBweDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgLmJhZGdlIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIDVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNjb250ZW50IHtcclxuICAgICAgJiA+IC5wYWdlcy1oaWVyYXJjaHkge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTBweCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICYgPiBsaSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubGluay13aWtpIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaGFzLWRyb3Age1xyXG4gICAgICAgICAmID4gYXtcclxuICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmV5KTtcclxuICAgICAgICAgICB9XHJcbiAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmFjdGlvbi1kYXRlX2luZGV4IHtcclxuICAgICAgI3dyYXBwZXIgI3dyYXBwZXIyOmFmdGVyIHtiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib2R5KTt9XHJcbiAgICAgICNtYWluIHtcclxuICAgICAgICAjY29udGVudCB7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG5cclxuICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIGxlZnQ6IDZweDtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IDYwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5ob2xkZXItd2lraS1kYXRle1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgbGVmdDogNnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG5cclxuICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAuY29udHJvbGxlci13aWtpe1xyXG4gICAgI21haW4gPiAjY29udGVudCB7XHJcbiAgICAgICYgPiAucGFnZXMtaGllcmFyY2h5IHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcblxyXG4gICAgICAgICYgPiBsaSB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCkgIWltcG9ydGFudDtcclxuICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCkgIWltcG9ydGFudDtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmNvbnRyb2xsZXItd2lraS5hY3Rpb24tZGF0ZV9pbmRleCB7XHJcbiAgICAjbWFpbiAjY29udGVudCB7XHJcbiAgICAgIGgzIHtcclxuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAxMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcblxyXG5cclxuICAgICAgICAmLm9wZW4td2lraSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1iZy1vdGhlci1pbik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmFmdGVyLFxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjd2lraS1uZXcge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuaG9sZGVyLXdpa2ktZGF0ZSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIGZvcm1bYWN0aW9uKj1cImRpZmZcIl0ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgb3ZlcmZsb3cteDogYXV0bztcclxuICB9XHJcbiAgLmNvbnRyb2xsZXItd2lraSB7XHJcbiAgICAud2lraS11cGRhdGUtaW5mbyB7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXJnaW46IDEwcHggMDtcclxuICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5hdHRhY2htZW50cyB7XHJcblxyXG4gICAgICB0YWJsZSB7XHJcbiAgICAgICAgdHIge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuYWN0aW9uLXNob3cge1xyXG4gICAgICAjbWFpbiAjY29udGVudCB7XHJcbiAgICAgICAgLndpa2ktcGFnZSB7XHJcbiAgICAgICAgICBoMSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggNTAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHggYXV0bztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgI21haW4ge1xyXG4gICAgI2NvbnRlbnQge1xyXG4gICAgICBkaXYud2lraSB7XHJcbiAgICAgICAgJiArIGZpZWxkc2V0IHtcclxuICAgICAgICAgIC5hdHRhY2htZW50cyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDYwcHggMCAwO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgICAgICAgdG9wOiAyNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAuYm94IHtcclxuICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIE1FRElBKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG5cclxuLyogU1RBUlQgTU9EQUwgU0VBUkNIICovXHJcblxyXG4jaGVhZGVyIHtcclxuXHJcbiAgLmhvbGRlci1zZWFyY2gtbGluayB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1hcmdpbjogMCAwIDAgMTBweDtcclxuICB9XHJcblxyXG4gIC5yZWRtaW5lZXZvbHV0aW9uLXNlYXJjaC1saW5rLFxyXG4gIC5yZWRtaW5lZXZvbHV0aW9uLW9wZW4tc2VhcmNoLWxpbmsge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBmbG9hdDpyaWdodDtcclxuICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHotaW5kZXg6MjtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBmb250LXNpemU6MHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6MHB4O1xyXG4gICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBAcXVpY2stc2VhcmNoO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIGhlaWdodDp2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBtYXJnaW46MDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgei1pbmRleDoxO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG5cclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIGJhY2tncm91bmQ6ICB2YXIoLS1pY29uX2JnKTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC0td2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yZWRtaW5lZXZvbHV0aW9uLW9wZW4tc2VhcmNoLWxpbmsge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICBjb250ZW50OiBAZnVsbHNjcmVlbjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yZWRtaW5lZXZvbHV0aW9uLXNlYXJjaC1saW5rIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogLTk5OTk5OXB4O1xyXG4gICAgbGVmdDogLTk5OTk5OXB4O1xyXG4gIH1cclxufVxyXG5cclxuLnNtYWxsLXNlYXJjaCB7XHJcbiAgJi5yZWRtaW5lZXZvbHV0aW9uLXN0YXJ0LXNlYXJjaCB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgICNoZWFkZXIge1xyXG4gICAgICAucmVkbWluZWV2b2x1dGlvbi1tb2RhbC1zZWFyY2gge1xyXG4gICAgICAgIC5yZWRtaW5lZXZvbHV0aW9uLW9wZW4tYm94IHtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjaGVhZGVyIHtcclxuICAgIC5yZWRtaW5lZXZvbHV0aW9uLXNlYXJjaC1saW5rIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcbiAgICAucmVkbWluZWV2b2x1dGlvbi1vcGVuLXNlYXJjaC1saW5rIHtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogQGljb24tY2xvc2Utc2VhcmNoO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI3F1aWNrLXNlYXJjaCB7XHJcbiAgICAgIC5yZWRtaW5lZXZvbHV0aW9uLW1vZGFsLXNlYXJjaCB7XHJcbiAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZHJkbi1pdGVtcy5wcm9qZWN0cyB7XHJcbiAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKH4nMTAwdmggLSAyMDBweCcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmhvbGRlci1zZWFyY2gtbGluayB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAgMTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5yZWRtaW5lZXZvbHV0aW9uLW1vZGFsLXNlYXJjaCB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAucmVkbWluZWV2b2x1dGlvbi1vcGVuLWJveCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIHRvcDogLTk5OTk5cHg7XHJcbiAgICAgICAgbGVmdDogLTk5OTk5cHg7XHJcbiAgICAgICAgei1pbmRleDogMTAwMDtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBvcHVwLW92ZXJsYXkpO1xyXG4gICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5yZWRtaW5lZXZvbHV0aW9uLXdyYXBwZXIge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1tYWluLWJveC1zaGFkb3cpO1xyXG4gICAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tbWFpbi1ib3gtc2hhZG93KTtcclxuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1tYWluLWJveC1zaGFkb3cpO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAzO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAucmVkbWluZWV2b2x1dGlvbi1jbG9zZSB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBvdXRsaW5lOiAwIG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzowO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICBtYXJnaW46MCAwIDAgMjBweDtcclxuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgei1pbmRleDoyO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBmb250LXNpemU6MHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OjBweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tcG9wdXAtY2xvc2UtY29sb3IpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICAgIGNvbnRlbnQ6IEBjbG9zZS1uZXctc21hbGw7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplKTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBvcHVwLWNsb3NlLWJnKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLXBvcHVwLWNsb3NlLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBvcHVwLWNsb3NlLWJnLWhvdmVyKTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLnJlZG1pbmVldm9sdXRpb24tY29udGVudCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgLnNlbGVjdDIge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIE1PREFMIFNFQVJDSCAqL1xyXG5cclxuLyogU1RBUlQgU0VBUkNIIFBBR0UgKi9cclxuXHJcbiNjb250ZW50IHtcclxuICAjc2VhcmNoLWZvcm0ge1xyXG4gICAgI3Njb3BlICsgLnNlbGVjdDIge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICB9XHJcbiAgICAuYm94IHtcclxuICAgICAgcCB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICAuamNmLXNlbGVjdCB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiA+IGxhYmVsIHtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmJveCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmNvbGxhcHNpYmxlIHtcclxuICAgICAgICBwYWRkaW5nOjYwcHggMCAwO1xyXG5cclxuICAgICAgICAmID4gbGVnZW5kIHtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgcGFkZGluZzogMCAyMHB4IDAgNTBweDtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOjVweDtcclxuICAgICAgICAgICAgbGVmdDoxMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS1pY29uLXdpZHRoKSB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOjVweDtcclxuICAgICAgICAgICAgbGVmdDoxMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuY29sbGFwc2VkIHtcclxuICAgICAgICAgICYgPiBsZWdlbmQge1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDApO1xyXG4gICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICAgICAgICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgI3NlYXJjaC1mb3JtIHtcclxuICAgICAgLmJveCB7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcclxuICAgICAgICAgIC5qY2Ytc2VsZWN0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZmxleDogMTtcclxuXHJcbiAgICAgICAgICAgICYgfiBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29sbGFwc2libGV7XHJcbiAgICAgICAgICBwYWRkaW5nOiA1MHB4IDEwcHggMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgICAgICAgICYgPiBsZWdlbmQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgU0VBUkNIIFBBR0UgKi9cclxuXHJcbiNtYWluIHtcclxuICAjc2VhcmNoLXJlc3VsdHMge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAuaGlnaGxpZ2h0IHtcclxuICAgICAgcGFkZGluZzogMCA1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgZHQge1xyXG4gICAgICBwYWRkaW5nOiAxNXB4IDIwcHggMDtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDA7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDA7XHJcbiAgICB9XHJcblxyXG4gICAgZGQge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHBhZGRpbmc6IDAgMjBweCAxNXB4O1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBkaXYjc2VhcmNoLXJlc3VsdHMtY291bnRzIHtcclxuICAgIGxpIHtcclxuICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjc2VhcmNoLXJlc3VsdHMtY291bnRzIHtcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcblxyXG4gICAgdWwge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAjbWFpbiB7XHJcbiAgICB1bCB7XHJcbiAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDEwcHgnKTtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICBtYXJnaW46IDAgMTBweCA1cHggMDtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMTBweCA1cHggMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjc2VhcmNoLXJlc3VsdHMge1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuXHJcbiAgICAgIGR0IHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGRkIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHggMTBweDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgUk9BRE1BUCAqL1xyXG5cclxuZGl2I3JvYWRtYXAge1xyXG4gIC5yZWxhdGVkLWlzc3VlcyB7XHJcbiAgICB0ZCB7XHJcbiAgICAgICYuYXNzaWduZWRfdG8ge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmID4gZm9ybSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiA3MiU7XHJcbiAgfVxyXG5cclxuICAucmVsYXRlZC1pc3N1ZXMge1xyXG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIGRpdiN2ZXJzaW9uLXN1bW1hcnkge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgICB3aWR0aDogY2FsYyh+JzI4JSAtIDIwcHgnKTtcclxuICAgIG1hcmdpbi10b3A6IDM3cHg7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgIC5yZWxhdGVkLWlzc3VlcyB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jbWFpbiB7XHJcbiAgJiA+ICNjb250ZW50IHtcclxuICAgIGRpdiNyb2FkbWFwIHtcclxuICAgICAgaDIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBmb250LXNpemU6IEAxMDI0X2gyO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggNDVweDtcclxuICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyA2MHB4Jyk7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIG1hcmdpbjogMCAtMzBweCA3MHB4O1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogIDMwcHggYXV0bztcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDUwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5iYWRnZSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgcGFkZGluZzogMnB4IDVweDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICB9XHJcblxyXG4gIHRhYmxlIHtcclxuICAgIC5iYWRnZS5iYWRnZS1jb3VudCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYmFkZ2UtcHJpdmF0ZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1yZWRfYm9yZGVyX2Vycm9yKTtcclxuICAgIGNvbG9yOiB2YXIoLS1yZWRfZXJyb3JfdGV4dCk7XHJcbiAgfVxyXG4gIC5iYWRnZS1jb3VudCB7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcbiAgfVxyXG4gIC5iYWRnZS1zdGF0dXMtb3BlbiB7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICB9XHJcbiAgLmJhZGdlLXN0YXR1cy1sb2NrZWQge1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAgIGJvcmRlcjogMDtcclxuICB9XHJcbiAgLmJhZGdlLXN0YXR1cy1jbG9zZWQge1xyXG4gICAgY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4udmVyc2lvbi1hcnRpY2xlIHtcclxuICBwYWRkaW5nOiAzMHB4O1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgbWFyZ2luOiAwIDAgMzBweDtcclxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogIGJveC1zaGFkb3cgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgLW1vei10cmFuc2l0aW9uOiAgYm94LXNoYWRvdyB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAtbXMtdHJhbnNpdGlvbjogIGJveC1zaGFkb3cgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgLW8tdHJhbnNpdGlvbjogIGJveC1zaGFkb3cgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgdHJhbnNpdGlvbjogIGJveC1zaGFkb3cgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICB9XHJcblxyXG4gIC52ZXJzaW9uLW92ZXJ2aWV3IHtcclxuICAgIHAge1xyXG4gICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG5cclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLXZlcnNpb25zLmxvZ2dlZGFzIHtcclxuICAmLmFjdGlvbi1pbmRleCB7XHJcbiAgICAjbWFpbiA+ICNjb250ZW50IHtcclxuXHJcbiAgICAgIGgzIHtcclxuICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgLSA2MHB4Jyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4uY29udHJvbGxlci12ZXJzaW9ucyB7XHJcbiAgJi5hY3Rpb24taW5kZXgge1xyXG4gICAgI21haW4gPiAjY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBoMiB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMzBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmNvbnRleHR1YWwge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnZlcnNpb24tYXJ0aWNsZSB7XHJcbiAgICAgICAgLmNvbnRleHR1YWwge1xyXG4gICAgICAgICAgbWFyZ2luOiA1cHggMCAwIDA7XHJcblxyXG4gICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGgzIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplKTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAtMTVweCAwICAwO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6NTAlO1xyXG4gICAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBtYXJnaW46IC0xNXB4IDAgMDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHBhZGRpbmc6IDEzcHggMzBweCAxM3B4IDUwcHg7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuXHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnZlcnNpb24tb3ZlcnZpZXcge1xyXG4gICAgLnByb2dyZXNzIHtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9yb3VuZC5wbmdcIikgMCAwIG5vLXJlcGVhdDtcclxuICAgICAgfVxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDonJztcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB3aWR0aDogMTBweDtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3JvdW5kLnBuZ1wiKSAwIDAgbm8tcmVwZWF0O1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICB9XHJcbiAgICAgIHRkIHtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDstbW96LWJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucHJvZ3Jlc3MtaW5mbyB7XHJcbiAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmV5KTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBtYXJnaW46IDEwcHggMDtcclxuICB9XHJcblxyXG4gIC5saXN0IHtcclxuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgIGNhcHRpb24ge1xyXG4gICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIH1cclxuXHJcbiAgICB0ciB7XHJcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5yZWxhdGVkLWlzc3VlcyB7XHJcbiAgICAgIHRib2R5IHtcclxuICAgICAgICB0ciB7XHJcbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgLmFzc2lnbmVkX3RvIHtcclxuICAgICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMCAwOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwIDA7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwIDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJ1dHRvbnMge1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDA7LW1vei1ib3JkZXItcmFkaXVzOiAwIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMDtib3JkZXItcmFkaXVzOiAwIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYS5pc3N1ZSB7XHJcbiAgICBtYXJnaW46IDAgNXB4IDAgMDtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gIH1cclxuICAucHJpb3JpdHktMSB7XHJcbiAgICAmOmJlZm9yZSB7YmFja2dyb3VuZDogdmFyKC0tcHJpb3JpdHktMSk7fVxyXG4gIH1cclxuICAucHJpb3JpdHktMiB7XHJcbiAgICAmOmJlZm9yZSB7YmFja2dyb3VuZDogdmFyKC0tcHJpb3JpdHktMik7fVxyXG4gIH1cclxuICAucHJpb3JpdHktMyB7XHJcbiAgICAmOmJlZm9yZSB7YmFja2dyb3VuZDogdmFyKC0tcHJpb3JpdHktMyk7fVxyXG4gIH1cclxuICAucHJpb3JpdHktNCB7XHJcbiAgICAmOmJlZm9yZSB7YmFja2dyb3VuZDogdmFyKC0tcHJpb3JpdHktNCk7fVxyXG4gIH1cclxuICAucHJpb3JpdHktNSB7XHJcbiAgICAmOmJlZm9yZSB7YmFja2dyb3VuZDogdmFyKC0tcHJpb3JpdHktNSk7fVxyXG4gIH1cclxufVxyXG4uY29udHJvbGxlci12ZXJzaW9ucyB7XHJcbiAgJi5hY3Rpb24tc2hvdyB7XHJcbiAgICBkaXYjcm9hZG1hcCB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICYgKyBmaWVsZHNldCB7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMjBweCAwIDA7XHJcbiAgICAgICAgcGFkZGluZzogNTBweCAwIDA7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICBsZWdlbmQge1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICB0b3A6IDUwcHg7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IC01MHB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAtMzBweDtcclxuICAgICAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgNjBweCcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAuamNmLXNlbGVjdCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5zZWxlY3Qye1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMTBweDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAjY2hhcnQtdW5pdC1yb3cge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiN2ZXJzaW9uLXN1bW1hcnkge1xyXG4gIGZpZWxkc2V0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IDYwcHggMjBweCAyMHB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlcjogMDtcclxuXHJcbiAgICBsZWdlbmQge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIHBhZGRpbmc6IDIwcHg7XHJcblxyXG4gICAgICAuamNmLXNlbGVjdCB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zZWxlY3QyIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIDEwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdGFibGUucHJvZ3Jlc3Mge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuXHJcbiAgICB0ZC50b2RvIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIFJPQURNQVAgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1FRElBKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTMwMHB4KSB7XHJcbiAgZGl2I3JvYWRtYXAge1xyXG4gICAgJiA+IGZvcm0ge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgZGl2I3ZlcnNpb24tc3VtbWFyeSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXJnaW46MDtcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcblxyXG4gICAgICAudGltZS10cmFja2luZyxcclxuICAgICAgI3N0YXR1c19ieXtcclxuICAgICAgICB3aWR0aDogY2FsYyh+JzUwJSAtIDEwcHgnKTtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gICN2ZXJzaW9uLXN1bW1hcnkge1xyXG4gICAgZmllbGRzZXQge1xyXG4gICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcblxyXG4gICAgICBsZWdlbmQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcblxyXG4gICAgICAgIC5qY2Ytc2VsZWN0IHtcclxuICAgICAgICAgIG1hcmdpbjogNXB4IDAgO1xyXG4gICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zZWxlY3QyIHtcclxuICAgICAgICAgIG1hcmdpbjogNXB4IDAgO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbWFpbiB7XHJcbiAgICAmID4gI2NvbnRlbnQge1xyXG4gICAgICBkaXYjcm9hZG1hcCB7XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctYm94KTtcclxuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggNTAlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNXB4IGF1dG87XHJcbiAgICAgICAgICBtYXJnaW46IDAgLTEwcHggMjBweDtcclxuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTIwcHggMTVweCA0NXB4O1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAudmVyc2lvbi1hcnRpY2xlIHtcclxuICAgIHBhZGRpbmc6IDEwcHggMTBweCAyMHB4O1xyXG4gICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgfVxyXG5cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC52ZXJzaW9uLW92ZXJ2aWV3IHRhYmxlLnByb2dyZXNzIHtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLXZlcnNpb25zLmxvZ2dlZGFzIHtcclxuICAgICYuYWN0aW9uLWluZGV4IHtcclxuICAgICAgI21haW4ge1xyXG4gICAgICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSAtIDQwcHgnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAuY29udHJvbGxlci12ZXJzaW9ucy5hY3Rpb24tc2hvdyB7XHJcbiAgICBkaXYjcm9hZG1hcCB7XHJcbiAgICAgICYgK2ZpZWxkc2V0IHtcclxuICAgICAgICBsZWdlbmQge1xyXG4gICAgICAgICAgLnNlbGVjdDIge1xyXG4gICAgICAgICAgICBtYXJnaW46IDVweCAwO1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIGRpdiNyb2FkbWFwIHtcclxuICAgIGRpdiN2ZXJzaW9uLXN1bW1hcnkge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgIC50aW1lLXRyYWNraW5nLFxyXG4gICAgICAjc3RhdHVzX2J5e1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICBtYXJnaW46IDAgLTEwcHggMjBweDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmNvbnRyb2xsZXItdmVyc2lvbnMge1xyXG4gICAgJi5hY3Rpb24taW5kZXgge1xyXG4gICAgICAjbWFpbiB7XHJcbiAgICAgICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgIGRpdiNyb2FkbWFwIHtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgLTEwcHggMjBweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGZzMTY7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgTUVESUEqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBSRURNSU5FRVZPTFVUSU9OIFNNQUxMIFZJRVcgKi9cclxuXHJcbi5jb250cm9sbGVyLWlzc3Vlcy5hY3Rpb24taW5kZXgge1xyXG4gIHRhYmxlLmxpc3QgdGJvZHkgdHI6bGFzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkLFxyXG4gIHRhYmxlLmxpc3Q+dHI6bGFzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkIHtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgfVxyXG5cclxuICB0YWJsZS5saXN0IHtcclxuICAgIHRoLFxyXG4gICAgdGQge1xyXG4gICAgICAmLnN1YmplY3Qge1xyXG4gICAgICAgIG1pbi13aWR0aDogMjAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5zbWFsbC1saXN0LXZpZXcge1xyXG4gICNtYWluIC5jb250ZXh0dWFsOm5vdCgubmV4dC1wcmV2LWxpbmtzKSB7XHJcbiAgICBhLnJlZG1pbmVldm9sdXRpb24tc21hbGwtdmlldzpub3QoI3Nob3dfbm90ZV9mb3JtX2V4dHJhcykge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBAaWNvbi1ub3JtYWwtaXNzdWVzO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jbWFpbiAuY29udGV4dHVhbDpub3QoLm5leHQtcHJldi1saW5rcykge1xyXG4gIGEucmVkbWluZWV2b2x1dGlvbi1zbWFsbC12aWV3Om5vdCgjc2hvd19ub3RlX2Zvcm1fZXh0cmFzKSB7XHJcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgcGFkZGluZzowO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OnZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICB3aWR0aDp2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgbWFyZ2luOjA7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6MjtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBAaWNvbi1zbWFsbC1pc3N1ZXM7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIHotaW5kZXg6MTtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc21hbGwtbGlzdC12aWV3IHtcclxuICB0YWJsZS5saXN0IHtcclxuICAgIHRoLFxyXG4gICAgdGQge1xyXG4gICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgcGFkZGluZzogMnB4IDhweDtcclxuICAgIH1cclxuICAgIHRoIHtcclxuICAgICAgcGFkZGluZzogNXB4IDhweDtcclxuICAgIH1cclxuICAgIHRkLnN1YmplY3Qge1xyXG4gICAgICBhIHtcclxuICAgICAgICBwYWRkaW5nOiA1cHggOHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5KQ29sUmVzaXplciB7XHJcbiAgICAgIHRoLFxyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbWFpbiB7XHJcbiAgICBhLmljb24tb25seSB7XHJcbiAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDE4cHg7XHJcbiAgICAgIG1pbi13aWR0aDogMThweDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAubGlzdCB7XHJcbiAgICAgdGgge1xyXG4gICAgICAgYS5pY29uOm5vdCguYWRkLWNoZWNrbGlzdC1pdGVtKXtcclxuICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgIHdpZHRoOiAxMnB4O1xyXG4gICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICBsaW5lLWhlaWdodDogMTJweDtcclxuICAgICAgICAgICBtYXJnaW46IC02cHggMCAwO1xyXG4gICAgICAgICB9XHJcbiAgICAgICB9XHJcbiAgICAgfVxyXG4gICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgUkVETUlORUVWT0xVVElPTiBTTUFMTCBWSUVXICovXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuLyogU1RBUlQgUkVETUlORSBFVk9MVVRJT04gQkFER0UgICovXHJcblxyXG4jdG9wLW1lbnUge1xyXG4gIC5yZWRtaW5lLWV2b2x1dGlvbi1iYWRnZSB7XHJcbiAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgbWFyZ2luOiAwIDIwcHggMCAwO1xyXG5cclxuICAgIC5yZXZvLWJhZGdlIHtcclxuICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgIHBhZGRpbmc6MCAwIDAgNXB4O1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGhlaWdodDp2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OjI7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBmb250LXNpemU6MHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgbWluLWhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBAaWNvbi1ub3RpZmljYXRpb25zO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICB9XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucmV2by1udW1iZXIge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEycHg7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIHBhZGRpbmc6IDJweCAzcHggMDtcclxuICAgICAgbWFyZ2luOiAwIDAgMTRweDtcclxuICAgICAgbWluLXdpZHRoOiAxMHB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10b3Atbm90aWZpY2F0aW9uLWNvbG9yKTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tdG9wLW5vdGlmaWNhdGlvbik7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uc3RhcnQtcmV2by1tb2RhbC1iYWRnZSB7XHJcbiAgLnJlZG1pbmUtZXZvbHV0aW9uLWJhZGdlLW92ZXJsYXksXHJcbiAgLnJldm8tbW9kYWwtYmFkZ2Uge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG59XHJcbi5yZWRtaW5lLWV2b2x1dGlvbi1iYWRnZS1vdmVybGF5IHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLXBvcHVwLW92ZXJsYXkpO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgei1pbmRleDogMTAwMDtcclxufVxyXG4ucmV2by1tb2RhbC1iYWRnZSB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxuICB6LWluZGV4OiAxMDAwMTtcclxuXHJcbiAgLnJldm8tY2xvc2Uge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1cHg7XHJcbiAgICByaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXBvcHVwLWNsb3NlLWJnLTIpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgb3V0bGluZTogMCBub25lO1xyXG4gICAgcGFkZGluZzowO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgIG1hcmdpbjowO1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgei1pbmRleDoyO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS1pY29uLXdpZHRoKSB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpIDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpIDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgIGZvbnQtc2l6ZTowcHg7XHJcbiAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICBjb2xvcjogdmFyKC0tcG9wdXAtY2xvc2UtY29sb3ItMik7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1tYWluLWJveC1zaGFkb3cpO1xyXG4gICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1tYWluLWJveC1zaGFkb3cpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tbWFpbi1ib3gtc2hhZG93KTtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgdGV4dC1pbmRlbnQ6IDBweDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICBjb250ZW50OiBAY2xvc2UtbmV3LXNtYWxsO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCkgMCAwIHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZSk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgei1pbmRleDogNTtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wb3B1cC1jbG9zZS1iZy0yKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tZm9udCkgMCAwIHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1mb250KSAwIDAgdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1mb250KSAwIDAgdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgei1pbmRleDogNDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLXBvcHVwLWNsb3NlLWNvbG9yLWhvdmVyLTIpO1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBvcHVwLWNsb3NlLWJnLWhvdmVyLTIpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucmV2by1tb2RhbCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogLTUwMHB4O1xyXG4gICAgd2lkdGg6IDQ1MHB4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmcpO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLW1haW4tYm94LXNoYWRvdyk7XHJcbiAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLW1haW4tYm94LXNoYWRvdyk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1tYWluLWJveC1zaGFkb3cpO1xyXG4gIH1cclxuXHJcbiAgLmhvbGRlci1yZXZvLWNvbnRlbnQge1xyXG4gICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnKTtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgfVxyXG5cclxuICAucmV2by1pdGVtLWluIHtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAucmV2by1ob2xkZXItaWQge1xyXG4gICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gIH1cclxuXHJcbiAgLnJldm8taG9sZGVyLXRpdGxlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLXRpdGxlKTtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA0cHg7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgICBvcGFjaXR5OiAwLjI7XHJcbiAgICB9XHJcblxyXG4gICAgLnJldm8tdGl0bGUge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnJldm8taXRlbSB7XHJcblxyXG4gICAgICAmLnByaW9yaXR5LTEge1xyXG4gICAgICAgIC5yZXZvLWhvbGRlci1pZCB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpb3JpdHktMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5yZXZvLWhvbGRlci10aXRsZSB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW9yaXR5LTEpO1xyXG4gICAgICAgICAgJjpiZWZvcmUge2JhY2tncm91bmQ6IHZhcigtLXByaW9yaXR5LTEpO31cclxuICAgICAgICB9XHJcbiAgICAgICAgLnJldm8taXRlbS1saXN0IHtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpb3JpdHktMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYucHJpb3JpdHktMiB7XHJcbiAgICAgICAgLnJldm8taG9sZGVyLWlkIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmlvcml0eS0yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnJldm8taG9sZGVyLXRpdGxlIHtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpb3JpdHktMik7XHJcbiAgICAgICAgICAmOmJlZm9yZSB7YmFja2dyb3VuZDogdmFyKC0tcHJpb3JpdHktMik7fVxyXG4gICAgICAgIH1cclxuICAgICAgICAucmV2by1pdGVtLWxpc3Qge1xyXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmlvcml0eS0yKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJi5wcmlvcml0eS0zIHtcclxuICAgICAgICAucmV2by1ob2xkZXItaWQge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLXByaW9yaXR5LTMpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAucmV2by1ob2xkZXItdGl0bGUge1xyXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmlvcml0eS0zKTtcclxuICAgICAgICAgICY6YmVmb3JlIHtiYWNrZ3JvdW5kOiB2YXIoLS1wcmlvcml0eS0zKTt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5yZXZvLWl0ZW0tbGlzdCB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW9yaXR5LTMpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLnByaW9yaXR5LTQge1xyXG4gICAgICAgIC5yZXZvLWhvbGRlci1pZCB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpb3JpdHktNCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5yZXZvLWhvbGRlci10aXRsZSB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW9yaXR5LTQpO1xyXG4gICAgICAgICAgJjpiZWZvcmUge2JhY2tncm91bmQ6IHZhcigtLXByaW9yaXR5LTQpO31cclxuICAgICAgICB9XHJcbiAgICAgICAgLnJldm8taXRlbS1saXN0IHtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpb3JpdHktNCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYucHJpb3JpdHktNSB7XHJcbiAgICAgICAgLnJldm8taG9sZGVyLWlkIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmlvcml0eS01KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnJldm8taG9sZGVyLXRpdGxlIHtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpb3JpdHktNSk7XHJcbiAgICAgICAgICAmOmJlZm9yZSB7YmFja2dyb3VuZDogdmFyKC0tcHJpb3JpdHktNSk7fVxyXG4gICAgICAgIH1cclxuICAgICAgICAucmV2by1pdGVtLWxpc3Qge1xyXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmlvcml0eS01KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICB9XHJcblxyXG4gIC5yZXZvLWl0ZW0tbGlzdCB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBib3JkZXItbGVmdC13aWR0aDogNHB4O1xyXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tbGluay1iZyk7XHJcblxyXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWxpbmstY29sb3IpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxpbmstYmcpO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDEwcHg7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAmID4gKiB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saW5rLWJnKTtcclxuICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgIGJvcmRlcjogMDtcclxuXHJcbiAgICAgICAgICAuaG9sZGVyLWlkIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWxpbmstY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxpbmstYmctaG92ZXIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhvbGRlci1pZCB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yZXZvLWhvbGRlci1saW5rIHtcclxuICAgIGZsZXg6IDE7XHJcbiAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xyXG4gIH1cclxuXHJcbiAgLnJldm8taG9sZGVyLWRhdGUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgLnJldm8tZGF0ZSB7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMHB4O1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saW5rLWJnKTtcclxuICAgICAgcGFkZGluZzogM3B4O1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24td2FybmluZyB7XHJcbiAgICAgIG1pbi13aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWFyZ2luOiAwIDVweCAwIDAgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtaW4td2lkdGg6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgICBoZWlnaHQ6IDI2cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYub3ZlcmR1ZS1kYXRlIHtcclxuICAgICAgLmljb24td2FybmluZyB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAucmV2by1kYXRlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1lcnJvcik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLndhcm5pbmctZGF0ZSB7XHJcbiAgICAgIC5pY29uLXdhcm5pbmcge1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdhcm5pbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAucmV2by1kYXRlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci13YXJuaW5nKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXdhcm5pbmcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucmV2by1ob2xkZXItYnV0dG9uIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgcmlnaHQ6IDEwcHg7XHJcbiAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIG1hcmdpbjogLTEzcHggMCAwO1xyXG4gIH1cclxuXHJcbiAgYS5yZXZvLWljb24ge1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIHBhZGRpbmc6MCAwIDAgNXB4O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OjMwcHg7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgei1pbmRleDoyO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGZvbnQtc2l6ZTogMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmstZ3JleSk7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgbWluLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogQGljb24tbm90aWZpY2F0aW9ucztcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5yZXZvLXRpbWUge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBAdGltZS1lbnRyaWVzO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzcGFuLnJldm8taWNvbiB7XHJcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgcGFkZGluZzogMCAwIDAgNXB4O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBmb250LXNpemU6IDBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAwcHg7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmV5KTtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBtaW4td2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBAaWNvbi1ub3RpZmljYXRpb25zO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwcHg7XHJcbiAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgfVxyXG5cclxuICAgICYuaWNvbi13YXJuaW5nIHtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogQHdhcm5pbmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgI3RvcC1tZW51IHtcclxuICAgIC5yZWRtaW5lLWV2b2x1dGlvbi1iYWRnZSB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAucmV2by1tb2RhbC1iYWRnZSB7XHJcbiAgICAucmV2by1tb2RhbCB7XHJcbiAgICAgIHdpZHRoOiAzMDBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcclxuICAucmV2by1tb2RhbC1iYWRnZSB7XHJcbiAgICAucmV2by1tb2RhbCB7XHJcbiAgICAgIHdpZHRoOiAyODBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIFJFRE1JTkUgRVZPTFVUSU9OIEJBREdFICovXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuLyogU1RBUlQgUkVETUlORSBFVk9MVVRJT04gVElNRSBMT0dHRVIgKi9cclxuXHJcbiN0b3AtbWVudSB7XHJcbiAgLnJlZG1pbmUtZXZvbHV0aW9uLXRvcC1tZW51IHtcclxuICAgIHdpZHRoOiAxMjZweDtcclxuICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGZsb2F0OiByaWdodDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yZXZvLXRpbWUtYm94IHtcclxuICAgIHdpZHRoOiAxMjZweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgIHBhZGRpbmc6IDAgMXB4IDAgM3B4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgIC5yZXZvLWljb24ge1xyXG4gICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgcGFkZGluZzowIDAgMCA1cHg7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgaGVpZ2h0OnZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgei1pbmRleDoyO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICBsaW5lLWhlaWdodDogMDtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICBtaW4td2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogQGljb24tbm90aWZpY2F0aW9ucztcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjBweDtcclxuICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgaGVpZ2h0OjI2cHg7XHJcbiAgICAgICAgd2lkdGg6MjZweDtcclxuICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xyXG4gICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuaWNvbi10aW1lciB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OiBAaWNvbi10aW1lcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuYXJyb3ctdG9wIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC43KTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMC43KTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjcpO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMC43KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNyk7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDogQGFycm93LXRvcDtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGEucmV2by1pY29uIHtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgaGVpZ2h0OjI2cHg7XHJcbiAgICAgICAgd2lkdGg6MjZweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnJldm8tdGltZSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgcGFkZGluZzogMCA1cHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiN0b3AtbWVudSB7XHJcbiAgLm9wZW4tbW9kYWwge1xyXG4gICAgLnJldm8tbW9kYWwtbG9nZ2VyIHtcclxuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICB9XHJcbiAgLnJldm8tbW9kYWwtbG9nZ2VyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMTAwJTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgei1pbmRleDogMjA7XHJcbiAgICB3aWR0aDogNDAwcHg7XHJcbiAgICBtYXJnaW46IDE1cHggMCAwO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1taWRsZSk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWlkbGUpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1taWRsZSk7XHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLW1haW4tYm94LXNoYWRvdyk7XHJcbiAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLW1haW4tYm94LXNoYWRvdyk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1tYWluLWJveC1zaGFkb3cpO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdmlzaWJpbGl0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogdmlzaWJpbGl0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiB2aXNpYmlsaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogdmlzaWJpbGl0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgLnJldm8tdG9wIHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgfVxyXG5cclxuICAgIC5jbG9zZS10aW1lcixcclxuICAgIC50aW1lci1yZXNldCB7XHJcbiAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiBAZmZmICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgb3V0bGluZTogMCBub25lO1xyXG4gICAgICBwYWRkaW5nOjA7XHJcbiAgICAgIGhlaWdodDozMHB4O1xyXG4gICAgICB3aWR0aDozMHB4O1xyXG4gICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgIHotaW5kZXg6MjtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7XHJcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBmb250LXNpemU6MHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1wb3B1cC1jbG9zZS1jb2xvcik7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDBweDtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgIGNvbnRlbnQ6IEBjbG9zZS1uZXctc21hbGw7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgIH1cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBvcHVwLWNsb3NlLWNvbG9yKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpIDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpIDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHotaW5kZXg6IDQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50aW1lci1yZXNldCB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IEByZWxvYWQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucmV2by1wbGF5LWluZm8ge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgICAgLnJldm8taW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJvdHRvbTogMXB4IHNvbGlkIEBncmV5O1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIC5yZXZvLXBsYXksXHJcbiAgICAucmV2by1zdG9wIHtcclxuICAgICAgd2lkdGg6IDUwcHg7XHJcbiAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICBjb2xvcjogQGZmZjtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBtYXJnaW46IDAgMjBweCAwIDA7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogQGljb24tcGxheTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgbWFyZ2luOiBjYWxjKCh2YXIoLS1pY29uLXdpZHRoKS8yKSAtIHZhcigtLWljb24td2lkdGgpKSAwIDAgY2FsYygodmFyKC0taWNvbi13aWR0aCkvMikgLSB2YXIoLS1pY29uLXdpZHRoKSk7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5yZXZvLXN0b3Age1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogLTk5OTk5OTlweDtcclxuICAgICAgbGVmdDogLTk5OTk5OTlweDtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IEBpY29uLXN0b3A7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5yZXZvLXZhbGlkIHtcclxuICAgICAgLnJldm8tcGxheSxcclxuICAgICAgLnJldm8tc3RvcHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2NvbG9yX2FjdGl2ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucmV2by1sZWZ0IHtcclxuICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICAucmV2by1jb250ZW50LWluIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCAyMHB4O1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAucmV2by1sZWZ0IHtcclxuICAgICAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgICAgfVxyXG5cclxuICAgICAgLnJldm8tcmlnaHQge1xyXG4gICAgICAgIHdpZHRoOiAxMjBweDtcclxuICAgICAgICBtaW4td2lkdGg6IDEyMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnJldm8tdGltZXItY291bnQge1xyXG4gICAgICBmb250LXNpemU6IEBmczIwO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG4gICAgLnJldm8tdG9kYXkge1xyXG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMTRweDtcclxuICAgIH1cclxuXHJcbiAgICAucmV2by1mb3JtIHtcclxuICAgICAgcGFkZGluZzogMjBweDtcclxuXHJcbiAgICAgICYuaGlkZGVuIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAtOTk5OTk5cHg7XHJcbiAgICAgICAgbGVmdDogLTk5OTk5OXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBzZWxlY3QsXHJcbiAgICAuc2VsZWN0MiB7XHJcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmhvbGRlci1zZWwge1xyXG4gICAgICBtYXJnaW46IDEwcHggMCAwO1xyXG5cclxuICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGV4dGFyZWEge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDBweDtcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dFt0eXBlPVwidXJsXCJdLFxyXG4gICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxyXG4gICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxyXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXHJcbiAgICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxyXG4gICAgaW5wdXRbdHlwZT1cImRhdGVcIl0sXHJcbiAgICB0ZXh0YXJlYTpub3QoLnNlbGVjdDItc2VhcmNoX19maWVsZCkge1xyXG4gICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xyXG4gICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGZzMTg7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBtaW4td2lkdGg6IDE5MHB4O1xyXG4gICAgICBvdXRsaW5lOiAwIG5vbmU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgIGZsZXg6IDE7XHJcbiAgICAgIGJhY2tncm91bmQ6IEBmZmY7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAtbW96LWJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgdGV4dGFyZWE6bm90KC5zZWxlY3QyLXNlYXJjaF9fZmllbGQpIHtcclxuICAgICAgbWluLWhlaWdodDogNjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuaG9sZGVyLXRhc2staWQge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMTRweDtcclxuXHJcbiAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGZvcm0sXHJcbiAgICBmb3JtIGZpZWxkc2V0e1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAtbW96LWFwcGVhcmFuY2U6bm9uZTtcclxuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7XHJcbiAgICAgIC1vLWFwcGVhcmFuY2U6bm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNzZWxlY3QyLXJldm9pc3N1ZXMtcmVzdWx0cyB7XHJcbiAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1kaXNhYmxlZCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IC05OTk5OXB4O1xyXG4gICAgbGVmdDogLTk5OTk5cHg7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBTVEFSVCBUSU1FIExPR0dFUiAqL1xyXG5cclxuLnN0YXJ0LXRpbWUtbG9nZ2VyIHtcclxuICAjdG9wLW1lbnUge1xyXG4gICAgLnJldm8tdGltZS1ib3gge1xyXG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLXN0YXJ0LXRpbWUtYmctdGltZSk7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN0YXJ0LXRpbWUtYmctdGltZSk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1zdGFydC10aW1lLXRleHQtY29sb3IpO1xyXG5cclxuICAgICAgLnJldm8tdGltZSxcclxuICAgICAgLnJldm8taWNvbiB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN0YXJ0LXRpbWUtdGV4dC1jb2xvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucmV2by1wbGF5IHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IC05OTk5OTk5cHg7XHJcbiAgICAgIGxlZnQ6IC05OTk5OTk5cHg7XHJcbiAgICB9XHJcbiAgICAucmV2by1zdG9wIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnJldm8tbW9kYWwtbG9nZ2VyIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3RhcnQtdGltZS1iZy10aW1lKTtcclxuXHJcbiAgICAgIC5yZXZvLXRvcCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN0YXJ0LXRpbWUtdGV4dC1jb2xvcik7XHJcbiAgICAgIH1cclxuICAgICAgLnJldm8tcGxheS1pbmZvIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3RhcnQtdGltZS10ZXh0LWNvbG9yKTtcclxuICAgICAgfVxyXG4gICAgICAucmV2by12YWxpZCB7XHJcbiAgICAgICAgLnJldm8tcGxheSxcclxuICAgICAgICAucmV2by1zdG9wIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLXN0YXJ0LXRpbWUtdGV4dC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jaG9sZGVyLW1vZC10aW1lIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAtOTk5OTk5OTlweDtcclxuICBsZWZ0OiAtOTk5OTk5OTk5cHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgei1pbmRleDogMTAwMDA7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAmLm9wZW4ge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICB9XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDonJztcclxuICBcdGRpc3BsYXk6YmxvY2s7XHJcbiAgXHRjbGVhcjpib3RoO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgIG9wYWNpdHk6IDAuOTU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gIH1cclxuXHJcbiAgLnVpLWRpYWxvZyB7XHJcbiAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgfVxyXG5cclxuICAudWktZGlhbG9nLWNvbnRlbnQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIH1cclxuXHJcbiAgLnVpLWRpYWxvZy10aXRsZWJhciB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgLnJldm8taG9sZGVyLWxpc3Qge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBtYXJnaW46IDVweCAwIDA7XHJcblxyXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGV4dC1yZWQge1xyXG4gICAgY29sb3I6IEByZWQ7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICB9XHJcblxyXG4gIC5yZXZvLXRpdGxlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICB9XHJcbiAgLnJldm8tdGl0bGUyIHtcclxuICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuICBkaXYudWktZGlhbG9nIC5idXR0b25zIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgI3RvcC1tZW51IHtcclxuICAgIC5yZWRtaW5lLWV2b2x1dGlvbi10b3AtbWVudSB7XHJcbiAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgIH1cclxuICAgIC5yZXZvLXRpbWUtYm94IHtcclxuICAgICAgd2lkdGg6IDEwMHB4O1xyXG5cclxuICAgICAgLnJldm8taWNvbi5hcnJvdy10b3Age1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAjdG9wLW1lbnUgLnJldm8tbW9kYWwtbG9nZ2VyIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICB0b3A6IDYwcHggIWltcG9ydGFudDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIC5yZXZvLXBsYXktaW5mbyB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAucmV2by10b3Age1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcbiAgICB9XHJcbiAgICAucmV2by1jb250ZW50LWluIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgLnJldm8tbGVmdCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnJldm8tcmlnaHQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICN0b3AtbWVudSB7XHJcbiAgICAucmVkbWluZS1ldm9sdXRpb24tdG9wLW1lbnUge1xyXG4gICAgICB3aWR0aDogMjhweDtcclxuICAgICAgbWFyZ2luOiAwIDVweCAwIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnJldm8tdGltZS1ib3gge1xyXG4gICAgICB3aWR0aDogMjhweDtcclxuICAgICAgaGVpZ2h0OiAyOHB4O1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAuaWNvbi10aW1lciB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgIH1cclxuICAgICAgLnJldm8tdGltZSxcclxuICAgICAgLmFycm93LXRvcCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI3Jldm8tdGltZS1lbnRyeSB7XHJcbiAgb3BhY2l0eTogMDtcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB2aXNpYmlsaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgdmlzaWJpbGl0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCB2aXNpYmlsaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAmLm9wZW4ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgUkVETUlORSBFVk9MVVRJT04gVElNRSBMT0dHRVIgKi9cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG4vKiAyMS4wNC4yMDIyICovXHJcbi8qIFNUQVJUIFJFU0laQUJMRSBDT0xVTU4gKi9cclxuXHJcbi5yYy1oYW5kbGUtY29udGFpbmVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5yYy1oYW5kbGUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogN3B4O1xyXG4gIGN1cnNvcjogZXctcmVzaXplO1xyXG4gIG1hcmdpbi1sZWZ0OiAtM3B4O1xyXG4gIHotaW5kZXg6IDI7XHJcbn1cclxuXHJcbnRhYmxlLnJjLXRhYmxlLXJlc2l6aW5nIHtcclxuICBjdXJzb3I6IGV3LXJlc2l6ZTtcclxuXHJcbiAgdGhlYWQsIHRoZWFkID4gdGgsIHRoZWFkID4gdGggPiBhIHtcclxuICAgIGN1cnNvcjogZXctcmVzaXplO1xyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIFJFU0laQUJMRSBDT0xVTU4gKi9cclxuIl19 */

/*START VARIABLES FOR THEME*/
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ICON FONTS */
/* END ICON FONTS */
/* 20.03.2022 */
/* START FONT VARIABLES */
/* END FONT VARIABLES */
/* VARS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ALL VARIABLES FOR WORK LESS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START BORDER RADIUS VARIABLES */
/* END BORDER RADIUS VARIABLES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START FONT SISE + LINE HIGHT */
/* START 1024*/
/*  START 768*/
/*  START 500*/
/* END FONT SISE + LINE HIGHT */
/* --------------------- https://redmine-evolution.com/ -- */
/* START JCF */
/* END JCF */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ANIMATE TIME*/
/* hover */
/* Main big bloks animated */
/* --------------------- https://redmine-evolution.com/ -- */
/* START OPACITY */
/* END OPACITY*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START ICONS VAR */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ICON FONTS */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/*  ----  */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* END ICON FONTS */
/*END VARIABLES FOR THEME*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START COLOR VARIABLES */
/* END COLOR VARIABLES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START NOTICE */
/*D9E8FF*/
/* END NOTICE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MOBILE MENU */
/* END MOBILE MENU */
/* --------------------- https://redmine-evolution.com/ -- */
/* START BOX-SHADOWS */
/* END BOX-SHADOWS */
/* START tables */
/* END tables*/
/* START pagination */
/* END pagination*/
/* START TOP MENU */
/* HOVER */
/* END TOP MENU */
/* START MAIN MENU */
/* MOBILE */
/* END MAIN MENU */
/* new  */
/* START TOP MENU */
/* HOVER */
/* END TOP MENU */
/* START MAIN MENU */
/* MOBILE */
/* END MAIN MENU */
/* CONTENT COLOR SETTINGS  */
/* --------------------- https://redmine-evolution.com/ -- */
:root {
  /* START GENERAL COLOR */
  --color-fff: #fff;
  --color-dark: #10131e;
  --color-blue: #654EFF;
  --color-darck-blue: #8A78D0;
  --color-blue-light: #cce5ff;
  --color-red: #FF5757;
  --color-red-errof: #BE4646;
  --color-red-superlight: #FFD1D1;
  --color-green: #66C8AB;
  --color-green-dark: #5caa93;
  --color-green-super-light: #CFFFF1;
  --color-purple: #E284FE;
  --color-purple-dark: #C072D8;
  --color-yellow: #FFCF69;
  --color-yellow-light: #FFF1D3;
  --color-error: #FF5757;
  --color-orange: #FE9A51;
  --color-grey: #cccccc;
  --super_grey_light: #ebebec;
  --suder-dark-grey: #BBBFCD;
  --main-bg-box: #ECEDF0;
  --menu-grey: #6a6e82;
  --icon-grey: #676879;
  --icon-grey-dark: #323338;
  --menu-bg: #2E314F;
  --color-main-color: #9D89EE;
  --color-main-color-activety: #8E7DD6;
  --bg-box-activety: #cce5ff;
  --color-main-color-text: #ffffff;
  --grey: #cccccc;
  --color-dark-grey: #A5A5A5;
  --icon-bg: #cce5ff;
  /*--main-background: url("../images/login-bg01.jpg") repeat;*/
  --main-background: var(--color-fff);
  --border-color: var(--border-color-content);
  --text-color-main: var(--color-dark);
  --bg-in-content: var(--color-blue-light);
  --bg-body: var(--bg-fff);
  --bg-mobile: #fff;
  --bg-box: #ECEDF0;
  --bg-other: #ECEDF0;
  --bg-other-in: #ffffff;
  --bg-fff: #ffffff;
  --light-bg: #ece1fc;
  --select-bg-redmineup: #5f5bfa;
  --all-hover-bg: var(--color-blue-light);
  --all-hover-bg-color: var(--color-dark);
  --scroll-bg: #ECEDF0;
  --scroll-handle: #BBBFCD;
  --jcf-drop-active: var(--text-color-main);
  /* END GENERAL COLOR */
  /* START TABS */
  --tab-color-text: var(--border-color-content);
  --tab-color-text-seleced: var(--color-main-color);
  /* END TABS */
  /* START NOTICE */
  --notice-error-bg: var(--color-red-superlight);
  --notice-error-main: var(--color-red);
  --notice-error-main-text: var(--color-red);
  --notice-successfu-main: var(--color-green);
  --notice-successfu-main-text: var(--color-fff);
  --notice-successfu-bg: var(--color-green-super-light);
  --notice-successfu-bg-text: var(--color-green-dark);
  --notice-worning-main: var(--color-yellow);
  --notice-worning-bg: var(--color-yellow-light);
  --notice-worning-color: var(--color-dark);
  --red_border_error: var(--color-red);
  --red_error_text: var(--color-fff);
  /* END NOTICE */
  /* START BORDER RADIUS */
  --border-radius: 8px;
  --border-radius-full: 100%;
  --border-radius-small: 3px;
  --border-radius-midle: 5px;
  --icon-border-radius: 8px;
  /* START BORDER RADIUS */
  /* START ANIMATE TIME*/
  --time-hover: 0.2s;
  --time-main: 0.5s;
  --time-hover-null: 0s;
  /* END ANIMATE TIME*/
  /* START ICONS */
  --icon-width: 30px;
  --icon-font-size: 30px;
  --icon-smaller-width: 26px;
  --icon-smaller-font-size: 26px;
  --icon-width-small: 20px;
  --icon-font-size-small: 20px;
  --icon-font: "WFS-RM-font";
  --icon-color: var(--icon-grey);
  --icon-color-hover: #444444;
  --icon_color_active: #444444;
  --icon_bg: #bfd6fd;
  --icon_bg_hover: #bfd6fd;
  --icon_bg_active: #bfd6fd;
  --icon-color-disabled: var(--icon-grey);
  --icon_bg-disabled: var(--color-grey);
  --icon-color-bg: var(--icon-grey);
  --icon-color-hover-bg: var(--icon-grey-dark);
  --icon_color_active-bg: var(--icon-grey-dark);
  --icon_bg-bg: var(--color-blue-light);
  --icon_bg_hover-bg: var(--color-blue-light);
  --icon_bg_active-bg: var(--color-blue-light);
  --icon-color-list: var(--icon-grey);
  --icon-color-hover-list: var(--bg-fff);
  --icon_color_active-list: var(--bg-fff);
  --icon_bg-list: var(--color-main-color);
  --icon_bg_hover-list: var(--color-main-color);
  --icon_bg_active-list: var(--color-main-color);
  --icon-color-: var(--icon-grey);
  --icon-content-color: var(--color-orange);
  --icon-content-color-hover: #fff;
  --icon-content_bg: var(--color-orange);
  --icon-content_bg_hover: var(--color-orange);
  --icon-content_bg_active: var(--color-orange);
  --icon-star: var(--color-orange);
  --button-main-color: var(--color-fff);
  --button-main-bg: var(--color-purple);
  --button-main-color-hover: var(--color-fff);
  --button-main-bg-hover: var(--color-purple-dark);
  --button-main-color-disabled: var(--color-dark);
  --button-main-bg-disabled: var(--color-grey);
  --button-color: #654EFF;
  --button-bg: #ebe7fc;
  --button-color-hover: #654EFF;
  --button-bg-hover: #d8d0f8;
  --button-color-disabled: var(--color-dark);
  --button-bg-disabled: var(--color-grey);
  --button-color-disabled: #fff;
  --button-bg-disabled: var(--color-dark-grey);
  --button-grey-color: var(--color-dark);
  --button-grey-bg: var(--super_grey_light);
  --button-grey-color-hover: var(--color-dark);
  --button-grey-bg-hover: var(--color-grey);
  --button-font-weight: 600;
  --button-border-radius: 8px;
  --bg-disabled: var(--color-dark-grey);
  --color-disabled: var(--color-fff);
  --button-main-color-bg: #fff;
  --button-main-bg-bg: var(--color-purple-dark);
  --button-main-color-hover-bg: #fff;
  --button-main-bg-hover-bg: var(--color-purple-dark);
  --button-main-color-disabled-bg: var(--color-dark);
  --button-main-bg-disabled-bg: var(--color-grey);
  --button-color-bg: var(--color-dark);
  --button-bg-bg: var(--color-blue-light);
  --button-color-hover-bg: #fff;
  --button-bg-hover-bg: var(--color-blue);
  /* END ICONS */
  --table-bg-hover: #afd6fd;
  --popup-overlay: rgba(41, 47, 76, 0.7);
  --popup-overlay-fancy: var(--menu-bg);
  --main-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  --small-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.1);
  --box-shadow-null: 0 10px 10px rgba(0, 0, 0, 0);
  --table-shadow: rgba(0, 0, 0, 0.1) 0px 3px 5px;
  --big-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
  --big-shadow-hover: 0 10px 10px rgba(101, 154, 244, 0.5);
  --popup-close-color: var(--color-red);
  --popup-close-bg: var(--color-red);
  --popup-close-color-hover: var(--color-fff);
  --popup-close-bg-hover: var(--color-red);
  --popup-close-color-2: var(--color-red);
  --popup-close-bg-2: var(--color-fff);
  --popup-close-color-hover-2: var(--color-fff);
  --popup-close-bg-hover-2: var(--color-red);
  /* START PRIORITY COLOR */
  --color-warning: var(--color-orange);
  --priority-1: var(--color-blue);
  --priority-2: var(--color-green);
  --priority-3: var(--color-yellow);
  --priority-4: var(--color-purple);
  --priority-5: var(--color-error);
  --priority-color: var(--color-fff);
  /* END PRIORITY COLOR */
  /* START TRACKER COLOR */
  --tracker-1: var(--color-red);
  --tracker-2: var(--color-green);
  --tracker-3: var(--color-blue);
  /* END TRACKER COLOR */
  /* START DROPDOWN */
  --drop-text-color: var(--color-dark);
  --drop-text-color-hover: var(--color-dark);
  --drop-icon-color: var(--color-dark);
  --drop-icon-color-hover: var(--color-dark);
  --drop-border-color: var(--color-grey);
  --drop-bg: var(--color-blue-light);
  --drop-bg-hover: var(--color-blue-light);
  --drop-shadow: var(--box-shadow-null);
  /* START DROPDOWN */
  /* START ISSUES */
  --icon-save-color: var(--color-green);
  --icon-save-color-hover: var(--color-fff);
  --icon-save-bg: var(--color-green-super-light);
  --icon-save-bg-hover: var(--color-green);
  --icon-close-color: var(--color-error);
  --icon-close-color-hover: var(--color-fff);
  --icon-close-bg: var(--color-red-superlight);
  --icon-close-bg-hover: var(--color-error);
  --icon-dell-bg: var(--color-red);
  --icon-dell-bg-hover: var(--color-error);
  --icon-dell-color: var(--color-fff);
  --icon-dell-color-hover: var(--color-fff);
  --color-link: var(--color-main-color);
  --border-color-content: #BBBFCD;
  /* END ISSUES */
  /* START PAGINATION */
  --pagination-color: var(--icon-color);
  --pagination-color-hover: var(--icon-color-hover);
  --pagination-color-avtive: var(--icon_color_active);
  --pagination-bg: var(--color-fff);
  --pagination-bg-hover: var(--icon_bg_hover);
  --pagination-bg-active: var(--icon_bg_active);
  --pagination-font-weight: 700;
  /* END PAGINATION */
  /* START FLYOUT MENU */
  --flyout_menu_bg: var(--color-main-color);
  --flyout_menu_color: var(--color-fff);
  --flyout_menu_border: var(--color-fff);
  --flyout_menu_button_bg: var(--color-fff);
  --flyout_menu_button_color: var(--color-main-color);
  --flyout_menu_bg_selected: var(--color-red);
  --flyout_menu_color_selected: var(--color-fff);
  --flyout_menu_title_bg: #0067c3;
  --flyout_menu_title_color: var(--color-fff);
  --flyout_menu_admin_menu_bg: #6b8eff;
  --flyout_menu_admin_menu_color: var(--color-fff);
  --flyout_menu_general-menu_bg: #817eff;
  --flyout_menu_general-menu_color: var(--color-fff);
  --flyout_menu_profile-menu_bg: #5DCA86;
  --flyout_menu_profile-menu_color: var(--color-fff);
  --flyout_menu_watchers-menu_bg: var(--color-green);
  --flyout_menu_watchers-menu_color: var(--color-fff);
  --flyout-text-color: var(--color-dark);
  /* END FLYOUT MENU */
  /* START TOOLTIP */
  --tooltip-bg: var(--color-main-color);
  --tooltip-bg-hover: var(--color-main-color);
  --tooltip-color: var(--color-fff);
  --tooltip-color-hover: var(--color-fff);
  /* END TOOLTIP */
  /* START SCROLLBAR */
  --scrollbar: var(--color-grey);
  --scrollbar_handle: var(--color-main-color);
  /* END SCROLLBAR */
}
/* START FOOTER */
#footer {
  --bg: var(--color-fff);
  --text-color-main: var(--color-grey);
  --border-color: var(--color-grey);
}
/* END FOOTER */
/* START SIDEBAR */
#sidebar {
  --bg: var(--main-bg-box);
  --main_color: var(--color-main-color);
  --text-color-main: var(--color-dark);
  --border-color: #BBBFCD;
  --icon-color: var(--icon-grey);
  --icon-color-hover: var(--icon-grey-dark);
  --icon_color_active: var(--icon-grey-dark);
  --icon_bg: var(--color-blue-light);
  --icon_bg_hover: var(--color-blue-light);
  --icon_bg_active: var(--color-blue-light);
  --button-main-color: var(--bg-fff);
  --button-main-bg: var(--color-purple);
  --button-main-color-hover: var(--bg-fff);
  --button-main-bg-hover: var(--color-purple-dark);
  --button-color: var(--bg-fff);
  --button-bg: var(--color-purple);
  --button-color-hover: var(--bg-fff);
  --button-bg-hover: var(--color-purple-dark);
  --scroll-bg: #ECEDF0;
  --scroll-handle: #BBBFCD;
}
#main {
  --sidebar-main_color: var(--color-main-color);
  --sidebar-main_color_text: var(--bg-fff);
  --sidebar-main_color_hover: #292f4c;
  --sidebar-main_color_text_hover: var(--bg-fff);
  --sidebar-open-button-bg: #fff;
  --sidebar-open-button-border: var(--border-color);
  --sidebar-open-button-color: var(--color-dark);
  --sidebar-open-button-bg-hover: #9D89EE;
  --sidebar-open-button-border-hover: #9D89EE;
  --sidebar-open-button-color-hover: #fff;
}
/* END SIDEBAR */
#admin-menu,
#main-menu,
.mod-obj {
  --bg: #20233D;
  --border-color: #20233D;
  --border-color-logo: #484C78;
  --link-color: #C7B8FF;
  --link-color-hover: #E182FF;
  --link-color-active: #C7B8FF;
  --scrollbar: #20233D;
  --scrollbar_handle: #C7B8FF;
  --icon-color: #C7B8FF;
  --icon-color-hover: #E182FF;
  --icon_color_active: #C7B8FF;
  --icon_bg: var(--menu-bg);
  --icon_bg_hover: var(--color-dark);
  --icon_bg_active: var(--menu-grey);
  --main-menu-font-weight: 700;
  --menu-children-font-weight: 500;
  --flyout-menu-font-weight: 600;
  --submit-font-weight: 600;
}
#admin-index {
  --admin-color-text: var(--color-dark);
  --admin-color-after: var(--menu-bg);
  --admin-color-after-hover: var(--menu-bg);
  --admin-color-text-hover: var(--color-dark);
}
#top-menu {
  --bg: var(--main-bg-box);
  --icon-color: var(--icon-grey);
  --icon-color-hover: var(--icon-grey-dark);
  --icon_color_active: var(--icon-grey-dark);
  --border-color: var(--color-grey);
  --icon_bg: var(--color-blue-light);
  --icon_bg_hover: var(--color-blue-light);
  --icon_bg_active: var(--color-blue-light);
  --top-notification: var(--tracker-1);
  --top-notification-color: var(--color-fff);
  --link-color: var(--color-dark);
  --link-color-hover: var(--color-blue);
  --link-bg: var(--color-fff);
  --link-bg-hover: var(--color-blue-light);
  --text-color: var(--color-dark);
  --start-time-bg-time: var(--menu-bg);
  --start-time-text-color: var(--color-fff);
}
.revo-modal-badge {
  --bg: var(--bg-box);
  --bg-title: var(--color-fff);
  --text-color: var(--color-dark);
  --link-color: var(--color-dark);
  --link-color-hover: var(--color-dark);
  --link-bg: var(--color-fff);
  --link-bg-hover: var(--all-hover-bg);
  --border-color: var(--color-dark);
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START REDMINE-EVOLUTION ATTACHMENTS */
.redmine-evolution-attachments {
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
  background: var(--bg-box);
  width: calc(100% + 60px);
  margin-left: -30px;
  margin-right: -30px;
  margin-bottom: 30px;
  margin-top: 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 5px 30px;
}
.redmine-evolution-attachments .holder-gal ul {
  padding: 0;
  margin: 0 -5px;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  width: calc(100% + 10px);
}
.redmine-evolution-attachments .holder-gal ul li {
  width: 12.5%;
  min-width: 220px;
}
.redmine-evolution-attachments .holder-gal ul li .in {
  border: 1px solid var(--border-color);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  background: var(--bg-fff);
  margin: 5px;
  -webkit-transition: border-color var(--time-hover) ease-in-out;
  -moz-transition: border-color var(--time-hover) ease-in-out;
  -ms-transition: border-color var(--time-hover) ease-in-out;
  -o-transition: border-color var(--time-hover) ease-in-out;
  transition: border-color var(--time-hover) ease-in-out;
}
.redmine-evolution-attachments .holder-gal ul li .in:hover {
  border-color: var(--color-main-color);
}
.redmine-evolution-attachments .holder-gal ul li .in:hover .holder-img a:after {
  opacity: 0.2;
}
.redmine-evolution-attachments .holder-gal ul li .in:hover .holder-img .bg-images {
  opacity: 1;
}
.redmine-evolution-attachments .holder-img {
  display: block;
}
.redmine-evolution-attachments .holder-img a {
  display: flex;
  width: 100%;
  height: 120px;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 2;
  overflow: hidden;
  -webkit-border-radius: var(--border-radiusr) var(--border-radiusr) 0 0;
  -moz-border-radius: var(--border-radiusr) var(--border-radiusr) 0 0;
  border-radius: var(--border-radiusr) var(--border-radiusr) 0 0;
}
.redmine-evolution-attachments .holder-img a img {
  display: block;
  max-width: 100%;
  max-height: 100%;
}
.redmine-evolution-attachments .holder-img a:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--color-main-color);
  opacity: 0;
  z-index: 1;
  -webkit-transition: opacity var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out;
}
.redmine-evolution-attachments .holder-img a:hover .bg-images {
  background: var(--color-main-color);
}
.redmine-evolution-attachments .holder-img a:hover .bg-images:after {
  color: var(--color-main-color-text);
}
.redmine-evolution-attachments .holder-img .bg-images {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -30px 0 0 -30px;
  width: 60px;
  height: 60px;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
  background: var(--color-main-color-text);
  z-index: 3;
  opacity: 0;
  -webkit-transition: opacity var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.redmine-evolution-attachments .holder-img .bg-images:after {
  color: var(--color-main-color);
  content: "\E181";
  display: block;
  clear: both;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 40px;
  line-height: 60px;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.redmine-evolution-attachments .holder-img .attachments-pdf {
  display: block;
  width: 100%;
  height: 100%;
  background: url("../images/bg-pdf.svg") no-repeat 50% 50%;
  background-size: contain;
}
.redmine-evolution-attachments .holder-img .attachments-doc,
.redmine-evolution-attachments .holder-img .attachments-docx {
  display: block;
  width: 100%;
  height: 100%;
  background: url("../images/bg-docx.svg") no-repeat 50% 50%;
  background-size: contain;
}
.redmine-evolution-attachments .holder-img .attachments-xlsx {
  display: block;
  width: 100%;
  height: 100%;
  background: url("../images/bg-xlsx.svg") no-repeat 50% 50%;
  background-size: contain;
}
.redmine-evolution-attachments .block-info {
  border-top: 1px solid var(--border-color);
  padding: 10px;
}
.redmine-evolution-attachments .in-info {
  display: flex;
  width: 100%;
  flex-wrap: nowrap;
}
.redmine-evolution-attachments .in-info .info {
  flex: 1 0 auto;
  padding: 0 5px 0 0;
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 5px !important;
  width: calc(100% - 26px);
  overflow: hidden;
}
.redmine-evolution-attachments .in-info .info:last-child {
  margin: 0;
}
.redmine-evolution-attachments .in-info .info .size {
  min-width: 100%;
  flex: 1 0 auto;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
}
.redmine-evolution-attachments .in-info .holder-button {
  width: var(--icon-smaller-width);
}
.redmine-evolution-attachments .start-mob {
  position: absolute;
  top: -99999px;
  left: -99999px;
  display: none;
  width: 10px;
  height: 10px;
}
.fancybox-caption__body .in-info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
.fancybox-caption__body .in-info .info {
  align-items: center;
  display: flex;
  min-height: var(--icon-smaller-width);
}
.fancybox-caption__body .in-info .icon-attachment {
  padding: 0;
}
.fancybox-caption__body .in-info .size {
  margin: 0 0 0 10px;
}
.fancybox-caption__body .in-info .holder-button {
  margin: 0 0 0 20px;
}
.fancybox-caption__body .icon-attachment:after {
  display: none;
}
.fancybox-caption__body .icon-download,
.fancybox-caption__body .icon-del {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color);
  vertical-align: middle;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.fancybox-caption__body .icon-download:after,
.fancybox-caption__body .icon-del:after {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.fancybox-caption__body .icon-download:before,
.fancybox-caption__body .icon-del:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.fancybox-caption__body .icon-download:hover,
.fancybox-caption__body .icon-del:hover {
  color: var(--icon-color-hover);
}
.fancybox-caption__body .icon-download:hover:before,
.fancybox-caption__body .icon-del:hover:before {
  background: var(--icon_bg_hover) f;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.fancybox-caption__body .icon-del:after {
  content: "\E104";
}
.fancybox-caption__body .fancybox-in {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
.fancybox-caption__body .fancybox-in .holder-button {
  margin: 0 0 0 20px;
}
@media screen and (max-width: 1900px) {
  .redmine-evolution-attachments .holder-gal ul li {
    width: 16.66%;
  }
}
@media screen and (max-width: 1500px) {
  .redmine-evolution-attachments .holder-gal ul li {
    width: 25%;
  }
}
@media screen and (max-width: 1200px) {
  .redmine-evolution-attachments .holder-gal ul li {
    width: 33.33%;
  }
}
@media screen and (max-width: 768px) {
  .redmine-evolution-attachments .holder-gal ul li {
    width: 50%;
  }
}
@media screen and (max-width: 650px) {
  .redmine-evolution-attachments .all-tabs-controll {
    margin-bottom: 10px;
  }
  .redmine-evolution-attachments .holder-gal ul li {
    width: 260px;
  }
  .redmine-evolution-attachments .holder-gal ul li .in {
    min-width: 250px;
    width: 250px;
  }
  .redmine-evolution-attachments .start-mob {
    display: block;
  }
}
/* END REDMINE-EVOLUTION ATTACHMENTS */
body.compensate-for-scrollbar {
  overflow: hidden;
}
.fancybox-active {
  height: auto;
}
.fancybox-is-hidden {
  left: -9999px;
  margin: 0;
  position: absolute !important;
  top: -9999px;
  visibility: hidden;
}
.fancybox-container {
  -webkit-backface-visibility: hidden;
  height: 100%;
  left: 0;
  outline: none;
  position: fixed;
  -webkit-tap-highlight-color: transparent;
  top: 0;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  transform: translateZ(0);
  width: 100%;
  z-index: 99992;
}
.fancybox-container * {
  box-sizing: border-box;
}
.fancybox-bg,
.fancybox-inner,
.fancybox-outer,
.fancybox-stage {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.fancybox-outer {
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
}
.fancybox-bg {
  background: var(--popup-overlay-fancy);
  opacity: 0;
  transition-duration: inherit;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
}
.fancybox-is-open .fancybox-bg {
  opacity: 0.9;
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}
.fancybox-caption,
.fancybox-infobar,
.fancybox-navigation .fancybox-button,
.fancybox-toolbar {
  direction: ltr;
  opacity: 0;
  position: absolute;
  transition: opacity 0.25s ease, visibility 0s ease 0.25s;
  visibility: hidden;
  z-index: 99997;
}
.fancybox-show-caption .fancybox-caption,
.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-nav .fancybox-navigation .fancybox-button,
.fancybox-show-toolbar .fancybox-toolbar {
  opacity: 1;
  transition: opacity 0.25s ease 0s, visibility 0s ease 0s;
  visibility: visible;
}
.fancybox-infobar {
  color: #ccc;
  font-size: 13px;
  -webkit-font-smoothing: subpixel-antialiased;
  height: 44px;
  left: 0;
  line-height: 44px;
  min-width: 44px;
  mix-blend-mode: difference;
  padding: 0 10px;
  pointer-events: none;
  top: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.fancybox-toolbar {
  right: 0;
  top: 0;
}
.fancybox-stage {
  direction: ltr;
  overflow: visible;
  transform: translateZ(0);
  z-index: 99994;
}
.fancybox-is-open .fancybox-stage {
  overflow: hidden;
}
.fancybox-slide {
  -webkit-backface-visibility: hidden;
  display: none;
  height: 100%;
  left: 0;
  outline: none;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: absolute;
  text-align: center;
  top: 0;
  transition-property: transform, opacity;
  white-space: normal;
  width: 100%;
  z-index: 99994;
}
.fancybox-slide:before {
  content: "";
  display: inline-block;
  font-size: 0;
  height: 100%;
  vertical-align: middle;
  width: 0;
}
.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--current,
.fancybox-slide--next,
.fancybox-slide--previous {
  display: block;
}
.fancybox-slide--image {
  overflow: hidden;
  padding: 44px 0;
}
.fancybox-slide--image:before {
  display: none;
}
.fancybox-slide--html {
  padding: 6px;
}
.fancybox-content {
  background: var(--bg-fff);
  display: inline-block;
  margin: 0;
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: relative;
  text-align: left;
  vertical-align: middle;
}
.fancybox-slide--image .fancybox-content {
  animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  -webkit-backface-visibility: hidden;
  background: transparent;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  left: 0;
  max-width: none;
  overflow: visible;
  padding: 0;
  position: absolute;
  top: 0;
  transform-origin: top left;
  transition-property: transform, opacity;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  z-index: 99995;
}
.fancybox-can-zoomOut .fancybox-content {
  cursor: zoom-out;
}
.fancybox-can-zoomIn .fancybox-content {
  cursor: zoom-in;
}
.fancybox-can-pan .fancybox-content,
.fancybox-can-swipe .fancybox-content {
  cursor: grab;
}
.fancybox-is-grabbing .fancybox-content {
  cursor: grabbing;
}
.fancybox-container [data-selectable=true] {
  cursor: text;
}
.fancybox-image,
.fancybox-spaceball {
  background: transparent;
  border: 0;
  height: 100%;
  left: 0;
  margin: 0;
  max-height: none;
  max-width: none;
  padding: 0;
  position: absolute;
  top: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 100%;
}
.fancybox-spaceball {
  z-index: 1;
}
.fancybox-slide--iframe .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--pdf .fancybox-content,
.fancybox-slide--video .fancybox-content {
  height: 100%;
  overflow: visible;
  padding: 0;
  width: 100%;
}
.fancybox-slide--video .fancybox-content {
  background: #000;
}
.fancybox-slide--map .fancybox-content {
  background: #e5e3df;
}
.fancybox-slide--iframe .fancybox-content {
  background: #fff;
}
.fancybox-iframe,
.fancybox-video {
  background: transparent;
  border: 0;
  display: block;
  height: 100%;
  margin: 0;
  overflow: hidden;
  padding: 0;
  width: 100%;
}
.fancybox-iframe {
  left: 0;
  position: absolute;
  top: 0;
}
.fancybox-error {
  background: #fff;
  cursor: default;
  max-width: 400px;
  padding: 40px;
  width: 100%;
}
.fancybox-error p {
  color: #444;
  font-size: 16px;
  line-height: 20px;
  margin: 0;
  padding: 0;
}
.fancybox-button {
  background: rgba(30, 30, 30, 0.6);
  border: 0;
  border-radius: 0;
  box-shadow: none;
  cursor: pointer;
  display: inline-block;
  height: 44px;
  margin: 0;
  padding: 10px;
  position: relative;
  transition: color 0.2s;
  vertical-align: top;
  visibility: inherit;
  width: 44px;
}
.fancybox-button,
.fancybox-button:link,
.fancybox-button:visited {
  color: #ccc;
}
.fancybox-button:hover {
  color: #fff;
}
.fancybox-button:focus {
  outline: none;
}
.fancybox-button.fancybox-focus {
  outline: 1px dotted;
}
.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
  color: #888;
  cursor: default;
  outline: none;
}
.fancybox-button div {
  height: 100%;
}
.fancybox-button svg {
  display: block;
  height: 100%;
  overflow: visible;
  position: relative;
  width: 100%;
}
.fancybox-button svg path {
  fill: currentColor;
  stroke-width: 0;
}
.fancybox-button--fsenter svg:nth-child(2),
.fancybox-button--fsexit svg:first-child,
.fancybox-button--pause svg:first-child,
.fancybox-button--play svg:nth-child(2) {
  display: none;
}
.fancybox-progress {
  background: #ff5268;
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform: scaleX(0);
  transform-origin: 0;
  transition-property: transform;
  transition-timing-function: linear;
  z-index: 99998;
}
.fancybox-close-small {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: #ccc;
  cursor: pointer;
  opacity: 0.8;
  padding: 8px;
  position: absolute;
  right: -12px;
  top: -44px;
  z-index: 401;
}
.fancybox-close-small:hover {
  color: #fff;
  opacity: 1;
}
.fancybox-slide--html .fancybox-close-small {
  color: currentColor;
  padding: 10px;
  right: 0;
  top: 0;
}
.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
  overflow: hidden;
}
.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
  display: none;
}
.fancybox-navigation .fancybox-button {
  background-clip: content-box;
  height: 100px;
  opacity: 0;
  position: absolute;
  top: calc(50% - 50px);
  width: 70px;
}
.fancybox-navigation .fancybox-button div {
  padding: 7px;
}
.fancybox-navigation .fancybox-button--arrow_left {
  left: 0;
  left: env(safe-area-inset-left);
  padding: 31px 26px 31px 6px;
}
.fancybox-navigation .fancybox-button--arrow_right {
  padding: 31px 6px 31px 26px;
  right: 0;
  right: env(safe-area-inset-right);
}
.fancybox-caption {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.85) 0, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.15) 65%, rgba(0, 0, 0, 0.075) 75.5%, rgba(0, 0, 0, 0.037) 82.85%, rgba(0, 0, 0, 0.019) 88%, transparent);
  bottom: 0;
  color: #eee;
  font-size: 14px;
  font-weight: 400;
  left: 0;
  line-height: 1.5;
  padding: 75px 44px 25px;
  pointer-events: none;
  right: 0;
  text-align: center;
  z-index: 99996;
}
@supports (padding:max(0px)) {
  .fancybox-caption {
    padding: 75px 44px 25px 44px;
  }
}
.fancybox-caption--separate {
  margin-top: -50px;
}
.fancybox-caption__body {
  max-height: 50vh;
  overflow: auto;
  pointer-events: all;
}
.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited {
  color: #ccc;
  text-decoration: none;
}
.fancybox-caption a:hover {
  color: #fff;
  text-decoration: underline;
}
.fancybox-loading {
  animation: a 1s linear infinite;
  background: transparent;
  border: 4px solid #888;
  border-bottom-color: #fff;
  border-radius: 50%;
  height: 50px;
  left: 50%;
  margin: -25px 0 0 -25px;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  width: 50px;
  z-index: 99999;
}
@keyframes a {
  to {
    transform: rotate(1turn);
  }
}
.fancybox-animated {
  transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
}
.fancybox-fx-slide.fancybox-slide--previous {
  opacity: 0;
  transform: translate3d(-100%, 0, 0);
}
.fancybox-fx-slide.fancybox-slide--next {
  opacity: 0;
  transform: translate3d(100%, 0, 0);
}
.fancybox-fx-slide.fancybox-slide--current {
  opacity: 1;
  transform: translateZ(0);
}
.fancybox-fx-fade.fancybox-slide--next,
.fancybox-fx-fade.fancybox-slide--previous {
  opacity: 0;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.fancybox-fx-fade.fancybox-slide--current {
  opacity: 1;
}
.fancybox-fx-zoom-in-out.fancybox-slide--previous {
  opacity: 0;
  transform: scale3d(1.5, 1.5, 1.5);
}
.fancybox-fx-zoom-in-out.fancybox-slide--next {
  opacity: 0;
  transform: scale3d(0.5, 0.5, 0.5);
}
.fancybox-fx-zoom-in-out.fancybox-slide--current {
  opacity: 1;
  transform: scaleX(1);
}
.fancybox-fx-rotate.fancybox-slide--previous {
  opacity: 0;
  transform: rotate(-1turn);
}
.fancybox-fx-rotate.fancybox-slide--next {
  opacity: 0;
  transform: rotate(1turn);
}
.fancybox-fx-rotate.fancybox-slide--current {
  opacity: 1;
  transform: rotate(0deg);
}
.fancybox-fx-circular.fancybox-slide--previous {
  opacity: 0;
  transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
}
.fancybox-fx-circular.fancybox-slide--next {
  opacity: 0;
  transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
}
.fancybox-fx-circular.fancybox-slide--current {
  opacity: 1;
  transform: scaleX(1) translateZ(0);
}
.fancybox-fx-tube.fancybox-slide--previous {
  transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
}
.fancybox-fx-tube.fancybox-slide--next {
  transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
}
.fancybox-fx-tube.fancybox-slide--current {
  transform: translateZ(0) scale(1);
}
@media (max-height: 576px) {
  .fancybox-slide {
    padding-left: 6px;
    padding-right: 6px;
  }
  .fancybox-slide--image {
    padding: 6px 0;
  }
  .fancybox-close-small {
    right: -6px;
  }
  .fancybox-slide--image .fancybox-close-small {
    background: #4e4e4e;
    color: #f2f4f6;
    height: 36px;
    opacity: 1;
    padding: 6px;
    right: 0;
    top: 0;
    width: 36px;
  }
  .fancybox-caption {
    padding-left: 12px;
    padding-right: 12px;
  }
  @supports (padding:max(0px)) {
    .fancybox-caption {
      padding-left: 12px;
      padding-right: 12px;
    }
  }
}
.fancybox-share {
  background: #f4f4f4;
  border-radius: 3px;
  max-width: 90%;
  padding: 30px;
  text-align: center;
}
.fancybox-share h1 {
  color: #222;
  font-size: 35px;
  font-weight: 700;
  margin: 0 0 20px;
}
.fancybox-share p {
  margin: 0;
  padding: 0;
}
.fancybox-share__button {
  border: 0;
  border-radius: 3px;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  line-height: 40px;
  margin: 0 5px 10px;
  min-width: 130px;
  padding: 0 15px;
  text-decoration: none;
  transition: all 0.2s;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap;
}
.fancybox-share__button:link,
.fancybox-share__button:visited {
  color: #fff;
}
.fancybox-share__button:hover {
  text-decoration: none;
}
.fancybox-share__button--fb {
  background: #3b5998;
}
.fancybox-share__button--fb:hover {
  background: #344e86;
}
.fancybox-share__button--pt {
  background: #bd081d;
}
.fancybox-share__button--pt:hover {
  background: #aa0719;
}
.fancybox-share__button--tw {
  background: #1da1f2;
}
.fancybox-share__button--tw:hover {
  background: #0d95e8;
}
.fancybox-share__button svg {
  height: 25px;
  margin-right: 7px;
  position: relative;
  top: -1px;
  vertical-align: middle;
  width: 25px;
}
.fancybox-share__button svg path {
  fill: #fff;
}
.fancybox-share__input {
  background: transparent;
  border: 0;
  border-bottom: 1px solid #d7d7d7;
  border-radius: 0;
  color: #5d5b5b;
  font-size: 14px;
  margin: 10px 0 0;
  outline: none;
  padding: 10px 15px;
  width: 100%;
}
.fancybox-thumbs {
  background: #ddd;
  bottom: 0;
  display: none;
  margin: 0;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  padding: 2px 2px 4px;
  position: absolute;
  right: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  top: 0;
  width: 212px;
  z-index: 99995;
}
.fancybox-thumbs-x {
  overflow-x: auto;
  overflow-y: hidden;
}
.fancybox-show-thumbs .fancybox-thumbs {
  display: block;
}
.fancybox-show-thumbs .fancybox-inner {
  right: 212px;
}
.fancybox-thumbs__list {
  font-size: 0;
  height: 100%;
  list-style: none;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  position: absolute;
  position: relative;
  white-space: nowrap;
  width: 100%;
}
.fancybox-thumbs-x .fancybox-thumbs__list {
  overflow: hidden;
}
.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
  width: 7px;
}
.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
  background: #fff;
  border-radius: 10px;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}
.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 10px;
}
.fancybox-thumbs__list a {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-color: rgba(0, 0, 0, 0.1);
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  cursor: pointer;
  float: left;
  height: 75px;
  margin: 2px;
  max-height: calc(100% - 8px);
  max-width: calc(50% - 4px);
  outline: none;
  overflow: hidden;
  padding: 0;
  position: relative;
  -webkit-tap-highlight-color: transparent;
  width: 100px;
}
.fancybox-thumbs__list a:before {
  border: 6px solid #ff5268;
  bottom: 0;
  content: "";
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 99991;
}
.fancybox-thumbs__list a:focus:before {
  opacity: 0.5;
}
.fancybox-thumbs__list a.fancybox-thumbs-active:before {
  opacity: 1;
}
@media (max-width: 576px) {
  .fancybox-thumbs {
    width: 110px;
  }
  .fancybox-show-thumbs .fancybox-inner {
    right: 110px;
  }
  .fancybox-thumbs__list a {
    max-width: calc(100% - 10px);
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl92YXJzX2NvbG91ci5sZXNzIiwiX3ZhcnMubGVzcyIsIl9yZWRtaW5lMDQtZXZvbHV0aW9uLWF0dGFjaG1lbnRzLmxlc3MiLCJfdmFycy1pY29uLmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWlUQTs7RUFHRSxpQkFBQTtFQUNBLHFCQUFBO0VBQ0EscUJBQUE7RUFDQSwyQkFBQTtFQUNBLDJCQUFBO0VBRUUsb0JBQUE7RUFDRiwwQkFBQTtFQUNBLCtCQUFBO0VBQ0Esc0JBQUE7RUFDQSwyQkFBQTtFQUNBLGtDQUFBO0VBQ0EsdUJBQUE7RUFDQSw0QkFBQTtFQUNBLHVCQUFBO0VBQ0EsNkJBQUE7RUFDQSxzQkFBQTtFQUNBLHVCQUFBO0VBQ0EscUJBQUE7RUFDQSwyQkFBQTtFQUNBLDBCQUFBO0VBQ0Esc0JBQUE7RUFDQSxvQkFBQTtFQUNBLG9CQUFBO0VBQ0EseUJBQUE7RUFDRSxrQkFBQTtFQUNGLDJCQUFBO0VBQ0Esb0NBQUE7RUFDQSwwQkFBQTtFQUNBLGdDQUFBO0VBQ0EsZUFBQTtFQUNBLDBCQUFBO0VBQ0Esa0JBQUE7O0VBRUEsbUJBQW1CLGdCQUFuQjtFQUVBLGdCQUFnQiwyQkFBaEI7RUFDQSxtQkFBbUIsaUJBQW5CO0VBQ0EsaUJBQWlCLHVCQUFqQjtFQUNBLFdBQVcsYUFBWDtFQUNBLGlCQUFBO0VBQ0EsaUJBQUE7RUFDQSxtQkFBQTtFQUNBLHNCQUFB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QztFQUN0Qix5QkFBQTtFQUNBLFNBQUE7RUFDQSxTQUFTLEVBQVQ7RUFDQSxPQUFBO0VBQ0EsVUFBQTtFQUNBLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLE1BQUE7RUFDQSxxQkFBb0Isb0NBQXBCO0VBQ0EsY0FBQTs7QUFHRixzQkFBdUIsRUFBQyxNQUFNO0VBQzVCLFlBQUE7O0FBR0Ysc0JBQXVCLEVBQUMsdUJBQXVCO0VBQzdDLFVBQUE7O0FBR0YsUUFBMEI7RUFDeEI7SUFDRSxZQUFBOztFQUdGLHFCQUFzQjtJQUNwQixZQUFBOztFQUdGLHNCQUF1QjtJQUNyQixXQUFXLGlCQUFYIiwiZmlsZSI6InN0eWxlLXJtNC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBDT0xPUiBWQVJJQUJMRVMgKi9cclxuQGZmZjogI2ZmZmZmZjtcclxuQGRhcms6ICMyZjJmMmY7XHJcbkBzdWRlcmRhcmtncmV5OiAjNzc3Nzc3O1xyXG5AZ3JleTogI2NjY2NjYztcclxuLy9AYmx1ZTogIzQzOGFmZjtcclxuQGJsdWU6ICM3NjAwYmE7XHJcbkBibHVlNTA6ICNhMWM0ZmY7XHJcbkBibHVlUmdiYTogNjcsMTM4LDI1NTtcclxuLy9AbGlnaHRCbHVlOiAjZWNmM2ZmO1xyXG5AbGlnaHRCbHVlOiAjZjcwMGY0O1xyXG5AYm9keTogI2Y4ZjRmZTtcclxuLy9AYm9keTogI2Y0ZjdmYztcclxuQHJlZF9ib3JkZXJfZXJyb3I6ICNmZjY2NjY7XHJcbkByZWRfZXJyb2Y6ICNlNDdkN2Q7XHJcbkBncmV5X2xpZ2h0OiAjZDBkMGQwO1xyXG5Ac3VwZXJfZ3JleV9saWdodDogI2ViZWJlYztcclxuQHByaW9yaXR5LTE6ICM0MzhhZmY7XHJcbkBwcmlvcml0eS0yOiAjNmFjMjU5O1xyXG5AcHJpb3JpdHktMzogI2Y1YzIyNTtcclxuQHByaW9yaXR5LTQ6ICNmNzAwZjQ7XHJcbkBwcmlvcml0eS01OiAjZjAwO1xyXG5AdHJhY2tlci0xOiAjZmQ3Mjg1O1xyXG5AdHJhY2tlci0yOiAjNmFjMjU5O1xyXG5AdHJhY2tlci0zOiAjNTQ5M2ZmO1xyXG5AaG92ZXJCZzogI2RkZWNmYjtcclxuQGZiZmNmZTogI2ZiZmNmZTtcclxuQGdyZWVuLWRhcms6ICM2YWMyNTk7XHJcbkByZWQ6ICNmZDcyODU7XHJcbkBkYXJrZ3JleTogI0E1QTVBNTtcclxuQGJnbWVudTogIzgxOEU5NDtcclxuLy9AdG9vbHRpcC1iZzogIzQzOGFmZjtcclxuQHRvb2x0aXAtYmc6ICNmMDA7XHJcbkBzZWxlY3RUYWJsZTogI2FmZDZmZDtcclxuXHJcbkBub3RpY2Utc3VjY2Vzc2Z1bDogIzZhYzI1OTtcclxuQHJlZDogI2ZkNzI4NTtcclxuXHJcbkBlcnJvcjogI2YwMDtcclxuQGljb253YXJuaW5nOiAjZmY4NDAwO1xyXG5cclxuXHJcbkBtYWluQnV0dG9uQmc6IEBibHVlO1xyXG5AbWFpbkJ1dHRvbkNvbG9yOiBAZmZmO1xyXG5AbWFpbkJ1dHRvbkJnSG92ZXI6IEBib2R5O1xyXG5AbWFpbkJ1dHRvbkNvbG9ySG92ZXI6IEBibHVlO1xyXG5cclxuQG1haW5CdXR0b25CZy1ib3g6IEBibHVlO1xyXG5AbWFpbkJ1dHRvbkNvbG9yLWJveDogQGZmZjtcclxuQG1haW5CdXR0b25CZ0hvdmVyLWJveDogQGZmZjtcclxuQG1haW5CdXR0b25Db2xvckhvdmVyLWJveDogQGJsdWU7XHJcblxyXG5AYnV0dG9uQmc6IEBib2R5O1xyXG5AYnV0dG9uQ2xvbG9yOiBAYmx1ZTtcclxuQGJ1dHRvbkJnSG92ZXI6IEBibHVlO1xyXG5AYnV0dG9uQ2xvbG9ySG92ZXI6IEBmZmY7XHJcblxyXG5AYnV0dG9uV2hpdGU6IEBmZmY7XHJcbkBidXR0b25XaGl0ZUNsb2xvcjogQGJsdWU7XHJcbkBidXR0b25XaGl0ZUJnSG92ZXI6IEBibHVlO1xyXG5AYnV0dG9uV2hpdGVDbG9sb3JIb3ZlcjogQGZmZjtcclxuXHJcbkBidXR0b25CZ0Rpc2FibGVkOiBAZGFya2dyZXk7XHJcbkBidXR0b25DbG9sb3JEaXNhYmxlZDogQGZmZjtcclxuQGJ1dHRvbkJnSG92ZXJEaXNhYmxlZDogQGRhcmtncmV5O1xyXG5AYnV0dG9uQ2xvbG9ySG92ZXJEaXNhYmxlZDogQGZmZjtcclxuXHJcbkBkcm9wcExpbmtNYWluOiBAYm9keTtcclxuQGRyb3BwTGlua01haW5Db2xvcjogQGRhcms7XHJcbkBkcm9wcExpbmtNYWluQXJyb3c6IEBiZ21lbnU7XHJcbkBkcm9wcExpbmtNYWluQXJyb3dCZzogQGZmZjtcclxuQGRyb3BwTGlua01haW5BcnJvd0hvdmVyOiBAYmx1ZTtcclxuXHJcbkBpY29uLWJveC1jb2xvcjogQGJnbWVudTtcclxuQGljb24tYm94LWJhY2tncm91bmQ6IEBmZmY7XHJcbkBpY29uLWJveC1jb2xvci1ob3ZlcjogQGJsdWU7XHJcblxyXG5AaWNvbi1zZWFyY2gtY29sb3I6IEBiZ21lbnU7XHJcbkBpY29uLXNlYXJjaC1iYWNrZ3JvdW5kOiBAZmZmO1xyXG5AaWNvbi1zZWFyY2gtY29sb3ItaG92ZXI6IEBmZmY7XHJcbkBpY29uLXNlYXJjaC1iYWNrZ3JvdW5kLWhvdmVyOiBAYmx1ZTtcclxuXHJcbi8qIEVORCBDT0xPUiBWQVJJQUJMRVMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE5PVElDRSAqL1xyXG5cclxuQGJnLW5vdGljZS1zdWNjZXNzZnVsOiAjZTFmM2RlO1xyXG5cclxuQHJlZC1ub3RpY2UtZXJyb3I6ICNmZDcyODU7XHJcbkBiZy1ub3RpY2UtZXJyb3I6ICNmZmUzZTc7XHJcblxyXG4vL0BibHVlLWxpZ2h0LWJnOiAjZTBlY2ZmO1xyXG5AYmx1ZS1saWdodC1iZzogI2NmYWVlMjtcclxuXHJcbi8qRDlFOEZGKi9cclxuXHJcbkB5ZWxsb3c6ICNmNWMyMjU7XHJcbkBsaWdodC15ZWxsb3c6ICNmZGY1Y2Y7XHJcblxyXG4vKiBFTkQgTk9USUNFICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBNT0JJTEUgTUVOVSAqL1xyXG5AZmx5b3V0LW1lbnUtYmc6ICM0MzhhZmY7XHJcbkBtZW51LXRpdGxlLWJnOiAjMDA2N2MzO1xyXG5AbWVudS10aXRsZS1jb2xvcjogI2ZmZmY7XHJcbkBqcy1nZW5lcmFsLW1lbnUtYmc6ICM4MTdlZmY7XHJcbkBzZWxlY3QtYmctcmVkbWluZXVwOiAjNWY1YmZhO1xyXG5AanMtZ2VuZXJhbC1tZW51LWNvbG9yOiAjZmZmO1xyXG5AanMtcHJvZmlsZS1tZW51LWJnOiAjMTBhNTc4O1xyXG5AanMtcHJvZmlsZS1tZW51LWNvbG9yOiAjZmZmO1xyXG5AbWVudS1hZG1pbi1tZW51LWJnOiAjNmI4ZWZmO1xyXG5AbWVudS1hZG1pbi1tZW51LWNvbG9yOiAjZmZmO1xyXG5AbW9iaWxlLW1lbnUtY2hpbGRyZW4tYmc6ICM2OGJlZWY7XHJcbkBtb2JpbGUtbWVudS1jaGlsZHJlbi1jb2xvcjogI2ZmZmY7XHJcbkBtb2JpbGUtY3VzdG9tZXJfcHJvZmlsZS1iZzogI2Y0ZTlmMjtcclxuQG1vYmlsZS1jdXN0b21lcl9wcm9maWxlLWNvbG9yOiBAZGFyaztcclxuQGN1c3RvbWVyX3ByZXZpb3VzX2lzc3Vlcy1iZzogIzZiOGVmZjtcclxuQGN1c3RvbWVyX3ByZXZpb3VzX2lzc3Vlcy1jb2xvcjogI2ZmZmZmZjtcclxuQG1vYmlsZS1pc3N1ZS1jb250YWN0cy1iZzogIzAxZGM3ZDtcclxuQG1vYmlsZS1pc3N1ZS1jb250YWN0cy1jb2xvcjogI2ZmZmY7XHJcbkBtb2JpbGUtd2F0Y2hlcnMtYmc6ICMxZWM1OTI7XHJcbkBtb2JpbGUtd2F0Y2hlcnMtY29sb3I6ICNmZmY7XHJcblxyXG4vKiBFTkQgTU9CSUxFIE1FTlUgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEJPWC1TSEFET1dTICovXHJcblxyXG5AYmlnc2hhZG93OiAwIDEwcHggMTBweCByZ2JhKDAsMCwwLDAuMSk7XHJcbkBiaWdzaGFkb3dOdWxsOiAwIDEwcHggMTBweCByZ2JhKDAsMCwwLDApO1xyXG5AYmlnc2hhZG93aG92ZXI6IDAgMTBweCAxMHB4IHJnYmEoNjcsMTM4LDI1NSwwLjUpO1xyXG5AbW9kYWxzaGFkb3c6IDAgMCAyMHB4IHJnYmEoMCwwLDAsMC4yKTtcclxuQHNoYWRvd3NtYWxsOiAzcHggM3B4IDZweCByZ2JhKDAsMCwwLDAuMik7XHJcblxyXG4vKiBFTkQgQk9YLVNIQURPV1MgKi9cclxuXHJcbi8qIFNUQVJUIHRhYmxlcyAqL1xyXG5AdGFibGVzX2NvbG9yOiAjMzczNzM3O1xyXG4vKiBFTkQgdGFibGVzKi9cclxuXHJcblxyXG4vKiBTVEFSVCBwYWdpbmF0aW9uICovXHJcbkBwYWdpbmF0aW9uX2NvbG9yOiAjODE4RTk0O1xyXG4vKiBFTkQgcGFnaW5hdGlvbiovXHJcblxyXG5cclxuLy9mY2Y2ZmEgKyBhZTAwZTBcclxuXHJcblxyXG4vKiBTVEFSVCBUT1AgTUVOVSAqL1xyXG5cclxuQHRvcF9tZW51X2JnOiBAZmZmO1xyXG5AdG9wX21lbnVfaWNvbl9jb2xvcjogQGRhcmtncmV5O1xyXG5AdG9wX21lbnVfYm9yZGVyOiBAZ3JleTtcclxuXHJcblxyXG4vKiBIT1ZFUiAqL1xyXG5AdG9wX21lbnVfaWNvbl9jb2xvcl9ob3ZlcjogQGZmZjtcclxuQHRvcF9tZW51X2ljb25fYmdfaG92ZXI6IEBibHVlO1xyXG5cclxuXHJcbkB0b3BfbWVudV9kcm9wZG93bl9iZzogQGZmZjtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2NvbG9yOiBAZGFyaztcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2FmdGVyOiBAbGlnaHRCbHVlO1xyXG5AdG9wX21lbnVfZHJvcGRvd25faWNvbjogQGRhcmtncmV5O1xyXG5AdG9wX21lbnVfZHJvcGRvd25faWNvbl9ob3ZlcjogQGJsdWU7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9ib3JkZXI6IEBncmV5O1xyXG5AdG9wX21lbnVfZHJvcGRvd25fY29sb3JfaG92ZXI6IEBibHVlO1xyXG5cclxuLyogRU5EIFRPUCBNRU5VICovXHJcblxyXG4vKiBTVEFSVCBNQUlOIE1FTlUgKi9cclxuQG1haW5fbWVudV9iZzogQGZmZjtcclxuQG1haW5fbWVudV9jb2xvcjogQGRhcms7XHJcbkBtYWluX21lbnVfYm9yZGVyOiBAZ3JleTtcclxuQG1haW5fbWVudV9jb2xvcl9pY29uOiBAYmdtZW51O1xyXG5AbWFpbl9tZW51X2NvbG9yX2ljb25faG92ZXI6IEBibHVlO1xyXG5AbWFpbl9tZW51X2JnX2hvdmVyOiBAZmZmO1xyXG5AbWFpbl9tZW51X2NvbG9yX2hvdmVyOiBAYmx1ZTtcclxuQG1haW5fbWVudV9kcm9wX2JnX2hvdmVyOiBAaG92ZXJCZztcclxuQG1haW5fbWVudV9zY3JvbGxiYXI6IEBzdXBlcl9ncmV5X2xpZ2h0O1xyXG5AbWFpbl9tZW51X3Njcm9sbGJhcl9oYW5kbGU6IEBibHVlO1xyXG5cclxuLyogTU9CSUxFICovXHJcbkBmbHlvdXRfbWVudV9iZzogQGJsdWU7XHJcbkBmbHlvdXRfbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X2JvcmRlcjogQGZmZjtcclxuQGZseW91dF9tZW51X2J1dHRvbl9iZzogQGZmZjtcclxuQGZseW91dF9tZW51X2J1dHRvbl9jb2xvcjogQGJsdWU7XHJcbkBmbHlvdXRfbWVudV9iZ19zZWxlY3RlZDogQHJlZDtcclxuQGZseW91dF9tZW51X2NvbG9yX3NlbGVjdGVkOiBAZmZmO1xyXG5AZmx5b3V0X21lbnVfdGl0bGVfYmc6IEBtZW51LXRpdGxlLWJnO1xyXG5AZmx5b3V0X21lbnVfdGl0bGVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9hZG1pbl9tZW51X2JnOiBAbWVudS1hZG1pbi1tZW51LWJnO1xyXG5AZmx5b3V0X21lbnVfYWRtaW5fbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X2dlbmVyYWwtbWVudV9iZzogQGpzLWdlbmVyYWwtbWVudS1iZztcclxuQGZseW91dF9tZW51X2dlbmVyYWwtbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X3Byb2ZpbGUtbWVudV9iZzogQGpzLXByb2ZpbGUtbWVudS1iZztcclxuQGZseW91dF9tZW51X3Byb2ZpbGUtbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X3dhdGNoZXJzLW1lbnVfYmc6IEBtb2JpbGUtd2F0Y2hlcnMtYmc7XHJcbkBmbHlvdXRfbWVudV93YXRjaGVycy1tZW51X2NvbG9yOiBAZmZmO1xyXG5cclxuLyogRU5EIE1BSU4gTUVOVSAqL1xyXG5cclxuXHJcblxyXG5cclxuXHJcbi8qIG5ldyAgKi9cclxuXHJcbkBtYWluX2JnOiAjMjkyZjRjO1xyXG5AbWFpbl9iZ19jb2xvcjogI2ZmZjtcclxuQG1haW5fYmdfZGFyazogIzEwMTMxZTtcclxuQGdyZXlfbWVudTogIzZhNmU4MjtcclxuQGNvbnRlbnRfYmc6ICNmNWY2Zjg7XHJcbkBjb250ZW50X2ljb25fY29sb3I6ICM2NzY4Nzk7XHJcbkBjb250ZW50X2ljb25fYmc6ICNjY2U1ZmY7XHJcblxyXG4vKiBTVEFSVCBUT1AgTUVOVSAqL1xyXG5cclxuQHRvcF9tZW51X2JnOiAjZjVmNmY4O1xyXG5AdG9wX21lbnVfYm9yZGVyOiAjZTZlOWVmO1xyXG5cclxuXHJcbi8qIEhPVkVSICovXHJcbkB0b3BfbWVudV9pY29uX2NvbG9yOiAjNjc2ODc5O1xyXG5AdG9wX21lbnVfaWNvbl9jb2xvcl9ob3ZlcjogIzMyMzMzODtcclxuQHRvcF9tZW51X2ljb25fY29sb3JfYWN0aXZlOiAjMzIzMzM4O1xyXG5AdG9wX21lbnVfaWNvbl9iZzogI2U1ZjRmZjtcclxuQHRvcF9tZW51X2ljb25fYmdfaG92ZXI6ICNlNWY0ZmY7XHJcbkB0b3BfbWVudV9pY29uX2JnX2FjdGl2ZTogI2U1ZjRmZjtcclxuXHJcblxyXG5AdG9wX21lbnVfZHJvcGRvd25fYmc6IEBmZmY7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9jb2xvcjogQGRhcms7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9hZnRlcjogQGxpZ2h0Qmx1ZTtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2ljb246IEBkYXJrZ3JleTtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2ljb25faG92ZXI6IEBibHVlO1xyXG5AdG9wX21lbnVfZHJvcGRvd25fYm9yZGVyOiBAZ3JleTtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2NvbG9yX2hvdmVyOiBAYmx1ZTtcclxuXHJcbi8qIEVORCBUT1AgTUVOVSAqL1xyXG5cclxuLyogU1RBUlQgTUFJTiBNRU5VICovXHJcblxyXG5AbWFpbl9tZW51X2JnOiBAbWFpbl9iZztcclxuQG1haW5fbWVudV9jb2xvcjogQG1haW5fYmdfY29sb3I7XHJcbkBtYWluX21lbnVfYm9yZGVyOiBAbWFpbl9iZztcclxuQG1haW5fbWVudV9jb2xvcl9pY29uOiBAbWFpbl9iZ19jb2xvcjtcclxuQG1haW5fbWVudV9jb2xvcl9pY29uX2hvdmVyOiBAbWFpbl9iZ19jb2xvcjtcclxuQG1haW5fbWVudV9iZ19ob3ZlcjogQG1haW5fYmdfZGFyaztcclxuQG1haW5fbWVudV9jb2xvcl9ob3ZlcjogQG1haW5fYmdfY29sb3I7XHJcbkBtYWluX21lbnVfYmdfc2VsZWN0ZWQ6IEBncmV5X21lbnU7XHJcbkBtYWluX21lbnVfY29sb3Jfc2VsZWN0ZWQ6IEBtYWluX2JnX2NvbG9yO1xyXG5AbWFpbl9tZW51X2Ryb3BfYmdfaG92ZXI6IEBtYWluX2JnX2Rhcms7XHJcblxyXG5cclxuLyogTU9CSUxFICovXHJcbkBmbHlvdXRfbWVudV9iZzogQGJsdWU7XHJcbkBmbHlvdXRfbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X2JvcmRlcjogQGZmZjtcclxuQGZseW91dF9tZW51X2J1dHRvbl9iZzogQGZmZjtcclxuQGZseW91dF9tZW51X2J1dHRvbl9jb2xvcjogQGJsdWU7XHJcbkBmbHlvdXRfbWVudV9iZ19zZWxlY3RlZDogQHJlZDtcclxuQGZseW91dF9tZW51X2NvbG9yX3NlbGVjdGVkOiBAZmZmO1xyXG5AZmx5b3V0X21lbnVfdGl0bGVfYmc6IEBtZW51LXRpdGxlLWJnO1xyXG5AZmx5b3V0X21lbnVfdGl0bGVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9hZG1pbl9tZW51X2JnOiBAbWVudS1hZG1pbi1tZW51LWJnO1xyXG5AZmx5b3V0X21lbnVfYWRtaW5fbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X2dlbmVyYWwtbWVudV9iZzogQGpzLWdlbmVyYWwtbWVudS1iZztcclxuQGZseW91dF9tZW51X2dlbmVyYWwtbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X3Byb2ZpbGUtbWVudV9iZzogQGpzLXByb2ZpbGUtbWVudS1iZztcclxuQGZseW91dF9tZW51X3Byb2ZpbGUtbWVudV9jb2xvcjogQGZmZjtcclxuQGZseW91dF9tZW51X3dhdGNoZXJzLW1lbnVfYmc6IEBtb2JpbGUtd2F0Y2hlcnMtYmc7XHJcbkBmbHlvdXRfbWVudV93YXRjaGVycy1tZW51X2NvbG9yOiBAZmZmO1xyXG5cclxuLyogRU5EIE1BSU4gTUVOVSAqL1xyXG5cclxuXHJcbkBkYXJrX2JsdWU6ICMyOTJmNGM7XHJcbkBmZmY6ICNmZmY7XHJcbkBkYXJrOiAjMTAxMzFlO1xyXG5AZ3JleV9tZW51OiAjNmE2ZTgyO1xyXG5AY29udGVudF9iZzogI2Y1ZjZmODtcclxuQGNvbnRlbnRfaWNvbl9jb2xvcjogIzY3Njg3OTtcclxuQGNvbnRlbnRfaWNvbl9iZzogI2NjZTVmZjtcclxuXHJcbi8qIENPTlRFTlQgQ09MT1IgU0VUVElOR1MgICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG5AYmx1ZTogIzc2MDBiYTtcclxuQGJsdWU1MDogI2ExYzRmZjtcclxuQGJsdWVSZ2JhOiA2NywxMzgsMjU1O1xyXG4vL0BsaWdodEJsdWU6ICNlY2YzZmY7XHJcbkBsaWdodEJsdWU6ICNmNzAwZjQ7XHJcbkBib2R5OiAjZjhmNGZlO1xyXG5cclxuOnJvb3Qge1xyXG4gIC8qIFNUQVJUIEdFTkVSQUwgQ09MT1IgKi9cclxuXHJcbiAgLS1jb2xvci1mZmY6ICNmZmY7XHJcbiAgLS1jb2xvci1kYXJrOiAjMTAxMzFlO1xyXG4gIC0tY29sb3ItYmx1ZTogIzY1NEVGRjtcclxuICAtLWNvbG9yLWRhcmNrLWJsdWU6ICM4QTc4RDA7XHJcbiAgLS1jb2xvci1ibHVlLWxpZ2h0OiAjY2NlNWZmO1xyXG4gIC8vINGF0L7QstC10YAg0L/RgNC+0YHRgtC+0Lkg0LrQvdC+0L/QutC4IC0gI2U2ZTllZiAvINCx0L7RgNC00LXRgCAtICNjNWM3ZDBcclxuICAgIC0tY29sb3ItcmVkOiAjRkY1NzU3O1xyXG4gIC0tY29sb3ItcmVkLWVycm9mOiAjQkU0NjQ2O1xyXG4gIC0tY29sb3ItcmVkLXN1cGVybGlnaHQ6ICNGRkQxRDE7XHJcbiAgLS1jb2xvci1ncmVlbjogIzY2QzhBQjtcclxuICAtLWNvbG9yLWdyZWVuLWRhcms6ICM1Y2FhOTM7XHJcbiAgLS1jb2xvci1ncmVlbi1zdXBlci1saWdodDogI0NGRkZGMTtcclxuICAtLWNvbG9yLXB1cnBsZTogI0UyODRGRTtcclxuICAtLWNvbG9yLXB1cnBsZS1kYXJrOiAjQzA3MkQ4O1xyXG4gIC0tY29sb3IteWVsbG93OiAjRkZDRjY5O1xyXG4gIC0tY29sb3IteWVsbG93LWxpZ2h0OiAjRkZGMUQzO1xyXG4gIC0tY29sb3ItZXJyb3I6ICNGRjU3NTc7XHJcbiAgLS1jb2xvci1vcmFuZ2U6ICNGRTlBNTE7XHJcbiAgLS1jb2xvci1ncmV5OiAjY2NjY2NjO1xyXG4gIC0tc3VwZXJfZ3JleV9saWdodDogI2ViZWJlYztcclxuICAtLXN1ZGVyLWRhcmstZ3JleTogI0JCQkZDRDtcclxuICAtLW1haW4tYmctYm94OiAjRUNFREYwO1xyXG4gIC0tbWVudS1ncmV5OiAjNmE2ZTgyO1xyXG4gIC0taWNvbi1ncmV5OiAjNjc2ODc5O1xyXG4gIC0taWNvbi1ncmV5LWRhcms6ICMzMjMzMzg7XHJcbiAgICAtLW1lbnUtYmc6ICMyRTMxNEY7XHJcbiAgLS1jb2xvci1tYWluLWNvbG9yOiAjOUQ4OUVFO1xyXG4gIC0tY29sb3ItbWFpbi1jb2xvci1hY3RpdmV0eTogIzhFN0RENjtcclxuICAtLWJnLWJveC1hY3RpdmV0eTogI2NjZTVmZjtcclxuICAtLWNvbG9yLW1haW4tY29sb3ItdGV4dDogI2ZmZmZmZjtcclxuICAtLWdyZXk6ICNjY2NjY2M7XHJcbiAgLS1jb2xvci1kYXJrLWdyZXk6ICNBNUE1QTU7XHJcbiAgLS1pY29uLWJnOiAjY2NlNWZmO1xyXG4gIC8qLS1tYWluLWJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9sb2dpbi1iZzAxLmpwZ1wiKSByZXBlYXQ7Ki9cclxuICAtLW1haW4tYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuXHJcbiAgLS1ib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAtLXRleHQtY29sb3ItbWFpbjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1iZy1pbi1jb250ZW50OiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWJnLWJvZHk6IHZhcigtLWJnLWZmZik7XHJcbiAgLS1iZy1tb2JpbGU6ICNmZmY7XHJcbiAgLS1iZy1ib3g6ICNFQ0VERjA7XHJcbiAgLS1iZy1vdGhlcjogI0VDRURGMDtcclxuICAtLWJnLW90aGVyLWluOiAjZmZmZmZmO1xyXG4gIC0tYmctZmZmOiAjZmZmZmZmO1xyXG4gIC0tbGlnaHQtYmc6ICNlY2UxZmM7XHJcbiAgLS1zZWxlY3QtYmctcmVkbWluZXVwOiAjNWY1YmZhO1xyXG4gIC0tYWxsLWhvdmVyLWJnOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWFsbC1ob3Zlci1iZy1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcblxyXG4gIC0tc2Nyb2xsLWJnOiAjRUNFREYwO1xyXG4gIC0tc2Nyb2xsLWhhbmRsZTogI0JCQkZDRDtcclxuICAtLWpjZi1kcm9wLWFjdGl2ZTogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuXHJcbiAgLyogRU5EIEdFTkVSQUwgQ09MT1IgKi9cclxuXHJcbiAgLyogU1RBUlQgVEFCUyAqL1xyXG5cclxuICAtLXRhYi1jb2xvci10ZXh0OiB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgLS10YWItY29sb3ItdGV4dC1zZWxlY2VkOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuXHJcbiAgLyogRU5EIFRBQlMgKi9cclxuXHJcbiAgLyogU1RBUlQgTk9USUNFICovXHJcblxyXG4gIC0tbm90aWNlLWVycm9yLWJnOiB2YXIoLS1jb2xvci1yZWQtc3VwZXJsaWdodCk7XHJcbiAgLS1ub3RpY2UtZXJyb3ItbWFpbjogdmFyKC0tY29sb3ItcmVkKTtcclxuICAtLW5vdGljZS1lcnJvci1tYWluLXRleHQ6IHZhcigtLWNvbG9yLXJlZCk7XHJcbiAgLS1ub3RpY2Utc3VjY2Vzc2Z1LW1haW46IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuICAtLW5vdGljZS1zdWNjZXNzZnUtbWFpbi10ZXh0OiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tbm90aWNlLXN1Y2Nlc3NmdS1iZzogdmFyKC0tY29sb3ItZ3JlZW4tc3VwZXItbGlnaHQpO1xyXG4gIC0tbm90aWNlLXN1Y2Nlc3NmdS1iZy10ZXh0OiB2YXIoLS1jb2xvci1ncmVlbi1kYXJrKTtcclxuICAtLW5vdGljZS13b3JuaW5nLW1haW46IHZhcigtLWNvbG9yLXllbGxvdyk7XHJcbiAgLS1ub3RpY2Utd29ybmluZy1iZzogdmFyKC0tY29sb3IteWVsbG93LWxpZ2h0KTtcclxuICAtLW5vdGljZS13b3JuaW5nLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuXHJcbiAgLS1yZWRfYm9yZGVyX2Vycm9yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG4gIC0tcmVkX2Vycm9yX3RleHQ6IHZhcigtLWNvbG9yLWZmZik7XHJcblxyXG4gIC8qIEVORCBOT1RJQ0UgKi9cclxuXHJcblxyXG4gIC8qIFNUQVJUIEJPUkRFUiBSQURJVVMgKi9cclxuICAtLWJvcmRlci1yYWRpdXM6IDhweDtcclxuICAtLWJvcmRlci1yYWRpdXMtZnVsbDogMTAwJTtcclxuICAtLWJvcmRlci1yYWRpdXMtc21hbGw6IDNweDtcclxuICAtLWJvcmRlci1yYWRpdXMtbWlkbGU6IDVweDtcclxuICAtLWljb24tYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gIC8qIFNUQVJUIEJPUkRFUiBSQURJVVMgKi9cclxuXHJcbiAgLyogU1RBUlQgQU5JTUFURSBUSU1FKi9cclxuICAtLXRpbWUtaG92ZXI6IC4ycztcclxuICAtLXRpbWUtbWFpbjogLjVzO1xyXG4gIC0tdGltZS1ob3Zlci1udWxsOiAuMHM7XHJcbiAgLyogRU5EIEFOSU1BVEUgVElNRSovXHJcblxyXG4gIC8qIFNUQVJUIElDT05TICovXHJcbiAgLS1pY29uLXdpZHRoOiAzMHB4O1xyXG4gIC0taWNvbi1mb250LXNpemU6IDMwcHg7XHJcbiAgLS1pY29uLXNtYWxsZXItd2lkdGg6IDI2cHg7XHJcbiAgLS1pY29uLXNtYWxsZXItZm9udC1zaXplOiAyNnB4O1xyXG4gIC0taWNvbi13aWR0aC1zbWFsbDogMjBweDtcclxuICAtLWljb24tZm9udC1zaXplLXNtYWxsOiAyMHB4O1xyXG4gIC0taWNvbi1mb250OiBAZm9udEljb247XHJcblxyXG4gIC0taWNvbi1jb2xvcjogdmFyKC0taWNvbi1ncmV5KTtcclxuICAtLWljb24tY29sb3ItaG92ZXI6ICM0NDQ0NDQ7XHJcbiAgLS1pY29uX2NvbG9yX2FjdGl2ZTogIzQ0NDQ0NDtcclxuICAtLWljb25fYmc6ICNiZmQ2ZmQ7XHJcbiAgLS1pY29uX2JnX2hvdmVyOiAjYmZkNmZkO1xyXG4gIC0taWNvbl9iZ19hY3RpdmU6ICNiZmQ2ZmQ7XHJcblxyXG4gIC0taWNvbi1jb2xvci1kaXNhYmxlZDogdmFyKC0taWNvbi1ncmV5KTtcclxuICAtLWljb25fYmctZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG5cclxuICAtLWljb24tY29sb3ItYmc6IHZhcigtLWljb24tZ3JleSk7XHJcbiAgLS1pY29uLWNvbG9yLWhvdmVyLWJnOiB2YXIoLS1pY29uLWdyZXktZGFyayk7XHJcbiAgLS1pY29uX2NvbG9yX2FjdGl2ZS1iZzogdmFyKC0taWNvbi1ncmV5LWRhcmspO1xyXG4gIC0taWNvbl9iZy1iZzogIHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG4gIC0taWNvbl9iZ19ob3Zlci1iZzogIHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG4gIC0taWNvbl9iZ19hY3RpdmUtYmc6ICB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuXHJcblxyXG4gIC0taWNvbi1jb2xvci1saXN0OiB2YXIoLS1pY29uLWdyZXkpO1xyXG4gIC0taWNvbi1jb2xvci1ob3Zlci1saXN0OiB2YXIoLS1iZy1mZmYpO1xyXG4gIC0taWNvbl9jb2xvcl9hY3RpdmUtbGlzdDogdmFyKC0tYmctZmZmKTtcclxuICAtLWljb25fYmctbGlzdDogIHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0taWNvbl9iZ19ob3Zlci1saXN0OiAgdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgLS1pY29uX2JnX2FjdGl2ZS1saXN0OiAgdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcblxyXG4gIC0taWNvbi1jb2xvci06IHZhcigtLWljb24tZ3JleSk7XHJcblxyXG4gIC0taWNvbi1jb250ZW50LWNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG4gIC0taWNvbi1jb250ZW50LWNvbG9yLWhvdmVyOiAjZmZmO1xyXG4gIC0taWNvbi1jb250ZW50X2JnOiAgdmFyKC0tY29sb3Itb3JhbmdlKTtcclxuICAtLWljb24tY29udGVudF9iZ19ob3ZlcjogIHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcbiAgLS1pY29uLWNvbnRlbnRfYmdfYWN0aXZlOiAgdmFyKC0tY29sb3Itb3JhbmdlKTtcclxuXHJcbiAgLS1pY29uLXN0YXI6IHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblxyXG4gIC0tYnV0dG9uLW1haW4tY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1idXR0b24tbWFpbi1iZzogdmFyKC0tY29sb3ItcHVycGxlKTtcclxuICAtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tYnV0dG9uLW1haW4tYmctaG92ZXI6IHZhcigtLWNvbG9yLXB1cnBsZS1kYXJrKTtcclxuXHJcbiAgLS1idXR0b24tbWFpbi1jb2xvci1kaXNhYmxlZDogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1idXR0b24tbWFpbi1iZy1kaXNhYmxlZDogdmFyKC0tY29sb3ItZ3JleSk7XHJcblxyXG4gIC0tYnV0dG9uLWNvbG9yOiAjNjU0RUZGO1xyXG4gIC0tYnV0dG9uLWJnOiAjZWJlN2ZjO1xyXG4gIC0tYnV0dG9uLWNvbG9yLWhvdmVyOiAjNjU0RUZGO1xyXG4gIC0tYnV0dG9uLWJnLWhvdmVyOiAjZDhkMGY4O1xyXG5cclxuICAtLWJ1dHRvbi1jb2xvci1kaXNhYmxlZDogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1idXR0b24tYmctZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG5cclxuICAtLWJ1dHRvbi1jb2xvci1kaXNhYmxlZDogI2ZmZjtcclxuICAtLWJ1dHRvbi1iZy1kaXNhYmxlZDogdmFyKC0tY29sb3ItZGFyay1ncmV5KTtcclxuXHJcbiAgLS1idXR0b24tZ3JleS1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1idXR0b24tZ3JleS1iZzogdmFyKC0tc3VwZXJfZ3JleV9saWdodCk7XHJcbiAgLS1idXR0b24tZ3JleS1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1idXR0b24tZ3JleS1iZy1ob3ZlcjogdmFyKC0tY29sb3ItZ3JleSk7XHJcblxyXG4gIC0tYnV0dG9uLWZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgLS1idXR0b24tYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gIC0tYmctZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWRhcmstZ3JleSk7XHJcbiAgLS1jb2xvci1kaXNhYmxlZDogdmFyKC0tY29sb3ItZmZmKTtcclxuXHJcbiAgLS1idXR0b24tbWFpbi1jb2xvci1iZzogI2ZmZjtcclxuICAtLWJ1dHRvbi1tYWluLWJnLWJnOiB2YXIoLS1jb2xvci1wdXJwbGUtZGFyayk7XHJcbiAgLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlci1iZzogI2ZmZjtcclxuICAtLWJ1dHRvbi1tYWluLWJnLWhvdmVyLWJnOiB2YXIoLS1jb2xvci1wdXJwbGUtZGFyayk7XHJcblxyXG4gIC0tYnV0dG9uLW1haW4tY29sb3ItZGlzYWJsZWQtYmc6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYnV0dG9uLW1haW4tYmctZGlzYWJsZWQtYmc6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG5cclxuICAtLWJ1dHRvbi1jb2xvci1iZzogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1idXR0b24tYmctYmc6IHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG4gIC0tYnV0dG9uLWNvbG9yLWhvdmVyLWJnOiAjZmZmO1xyXG4gIC0tYnV0dG9uLWJnLWhvdmVyLWJnOiB2YXIoLS1jb2xvci1ibHVlKTtcclxuICAvKiBFTkQgSUNPTlMgKi9cclxuXHJcbiAgLS10YWJsZS1iZy1ob3ZlcjogQHNlbGVjdFRhYmxlO1xyXG5cclxuICAtLXBvcHVwLW92ZXJsYXk6IHJnYmEoNDEsIDQ3LCA3NiwgMC43KTtcclxuICAtLXBvcHVwLW92ZXJsYXktZmFuY3k6IHZhcigtLW1lbnUtYmcpO1xyXG4gIC0tbWFpbi1ib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsMCwwLDAuMSk7XHJcbiAgLS1zbWFsbC1ib3gtc2hhZG93OiAzcHggM3B4IDZweCByZ2JhKDAsMCwwLDAuMSk7XHJcbiAgLS1ib3gtc2hhZG93LW51bGw6IDAgMTBweCAxMHB4IHJnYmEoMCwwLDAsMCk7XHJcbiAgLS10YWJsZS1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4xKSAwcHggM3B4IDVweDtcclxuICAtLWJpZy1zaGFkb3c6IDAgMTBweCAxMHB4IHJnYmEoMCwwLDAsMC4xKTtcclxuICAtLWJpZy1zaGFkb3ctaG92ZXI6IDAgMTBweCAxMHB4IHJnYmEoMTAxLDE1NCwyNDQsMC41KTtcclxuXHJcbiAgLS1wb3B1cC1jbG9zZS1jb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcclxuICAtLXBvcHVwLWNsb3NlLWJnOiB2YXIoLS1jb2xvci1yZWQpO1xyXG4gIC0tcG9wdXAtY2xvc2UtY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1wb3B1cC1jbG9zZS1iZy1ob3ZlcjogdmFyKC0tY29sb3ItcmVkKTtcclxuXHJcbiAgLS1wb3B1cC1jbG9zZS1jb2xvci0yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG4gIC0tcG9wdXAtY2xvc2UtYmctMjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLXBvcHVwLWNsb3NlLWNvbG9yLWhvdmVyLTI6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1wb3B1cC1jbG9zZS1iZy1ob3Zlci0yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG5cclxuXHJcbiAgLyogU1RBUlQgUFJJT1JJVFkgQ09MT1IgKi9cclxuICAtLWNvbG9yLXdhcm5pbmc6IHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcbiAgLS1wcmlvcml0eS0xOiB2YXIoLS1jb2xvci1ibHVlKTtcclxuICAtLXByaW9yaXR5LTI6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuICAtLXByaW9yaXR5LTM6IHZhcigtLWNvbG9yLXllbGxvdyk7XHJcbiAgLS1wcmlvcml0eS00OiB2YXIoLS1jb2xvci1wdXJwbGUpO1xyXG4gIC0tcHJpb3JpdHktNTogdmFyKC0tY29sb3ItZXJyb3IpO1xyXG4gIC0tcHJpb3JpdHktY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLyogRU5EIFBSSU9SSVRZIENPTE9SICovXHJcblxyXG4gIC8qIFNUQVJUIFRSQUNLRVIgQ09MT1IgKi9cclxuICAtLXRyYWNrZXItMTogdmFyKC0tY29sb3ItcmVkKTtcclxuICAtLXRyYWNrZXItMjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG4gIC0tdHJhY2tlci0zOiB2YXIoLS1jb2xvci1ibHVlKTtcclxuICAvKiBFTkQgVFJBQ0tFUiBDT0xPUiAqL1xyXG5cclxuICAvKiBTVEFSVCBEUk9QRE9XTiAqL1xyXG4gIC0tZHJvcC10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLWRyb3AtdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1kcm9wLWljb24tY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tZHJvcC1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLWRyb3AtYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcclxuICAtLWRyb3AtYmc6IHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG4gIC0tZHJvcC1iZy1ob3ZlcjogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcbiAgLS1kcm9wLXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAvKiBTVEFSVCBEUk9QRE9XTiAqL1xyXG5cclxuICAvKiBTVEFSVCBJU1NVRVMgKi9cclxuXHJcbiAgLS1pY29uLXNhdmUtY29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuICAtLWljb24tc2F2ZS1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWljb24tc2F2ZS1iZzogdmFyKC0tY29sb3ItZ3JlZW4tc3VwZXItbGlnaHQpO1xyXG4gIC0taWNvbi1zYXZlLWJnLWhvdmVyOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblxyXG4gIC0taWNvbi1jbG9zZS1jb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xyXG4gIC0taWNvbi1jbG9zZS1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWljb24tY2xvc2UtYmc6IHZhcigtLWNvbG9yLXJlZC1zdXBlcmxpZ2h0KTtcclxuICAtLWljb24tY2xvc2UtYmctaG92ZXI6IHZhcigtLWNvbG9yLWVycm9yKTtcclxuXHJcbiAgLS1pY29uLWRlbGwtYmc6IHZhcigtLWNvbG9yLXJlZCk7XHJcbiAgLS1pY29uLWRlbGwtYmctaG92ZXI6IHZhcigtLWNvbG9yLWVycm9yKTtcclxuICAtLWljb24tZGVsbC1jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWljb24tZGVsbC1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZmZmKTtcclxuXHJcbiAgLS1jb2xvci1saW5rOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAtLWJvcmRlci1jb2xvci1jb250ZW50OiAjQkJCRkNEO1xyXG4gIC8qIEVORCBJU1NVRVMgKi9cclxuXHJcbiAgLyogU1RBUlQgUEFHSU5BVElPTiAqL1xyXG5cclxuICAtLXBhZ2luYXRpb24tY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gIC0tcGFnaW5hdGlvbi1jb2xvci1ob3ZlcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7XHJcbiAgLS1wYWdpbmF0aW9uLWNvbG9yLWF2dGl2ZTogdmFyKC0taWNvbl9jb2xvcl9hY3RpdmUpO1xyXG4gIC0tcGFnaW5hdGlvbi1iZzogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLXBhZ2luYXRpb24tYmctaG92ZXI6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gIC0tcGFnaW5hdGlvbi1iZy1hY3RpdmU6IHZhcigtLWljb25fYmdfYWN0aXZlKTtcclxuICAtLXBhZ2luYXRpb24tZm9udC13ZWlnaHQ6IDcwMDtcclxuXHJcbiAgLyogRU5EIFBBR0lOQVRJT04gKi9cclxuXHJcblxyXG4gIC8qIFNUQVJUIEZMWU9VVCBNRU5VICovXHJcbiAgLS1mbHlvdXRfbWVudV9iZzogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgLS1mbHlvdXRfbWVudV9jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X2JvcmRlcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X2J1dHRvbl9iZzogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X2J1dHRvbl9jb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgLS1mbHlvdXRfbWVudV9iZ19zZWxlY3RlZDogdmFyKC0tY29sb3ItcmVkKTtcclxuICAtLWZseW91dF9tZW51X2NvbG9yX3NlbGVjdGVkOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tZmx5b3V0X21lbnVfdGl0bGVfYmc6ICMwMDY3YzM7XHJcbiAgLS1mbHlvdXRfbWVudV90aXRsZV9jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X2FkbWluX21lbnVfYmc6ICM2YjhlZmY7XHJcbiAgLS1mbHlvdXRfbWVudV9hZG1pbl9tZW51X2NvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tZmx5b3V0X21lbnVfZ2VuZXJhbC1tZW51X2JnOiAjODE3ZWZmO1xyXG4gIC0tZmx5b3V0X21lbnVfZ2VuZXJhbC1tZW51X2NvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tZmx5b3V0X21lbnVfcHJvZmlsZS1tZW51X2JnOiAjNURDQTg2O1xyXG4gIC0tZmx5b3V0X21lbnVfcHJvZmlsZS1tZW51X2NvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tZmx5b3V0X21lbnVfd2F0Y2hlcnMtbWVudV9iZzogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG4gIC0tZmx5b3V0X21lbnVfd2F0Y2hlcnMtbWVudV9jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dC10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAvKiBFTkQgRkxZT1VUIE1FTlUgKi9cclxuXHJcbiAgLyogU1RBUlQgVE9PTFRJUCAqL1xyXG5cclxuICAtLXRvb2x0aXAtYmc6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0tdG9vbHRpcC1iZy1ob3ZlcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgLS10b29sdGlwLWNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tdG9vbHRpcC1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZmZmKTtcclxuXHJcbiAgLyogRU5EIFRPT0xUSVAgKi9cclxuXHJcbiAgLyogU1RBUlQgU0NST0xMQkFSICovXHJcblxyXG4gIC0tc2Nyb2xsYmFyOiB2YXIoLS1jb2xvci1ncmV5KTtcclxuICAtLXNjcm9sbGJhcl9oYW5kbGU6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG5cclxuICAvKiBFTkQgU0NST0xMQkFSICovXHJcbn1cclxuXHJcbi8qIFNUQVJUIEZPT1RFUiAqL1xyXG5cclxuI2Zvb3RlciB7XHJcbiAgLS1iZzogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLXRleHQtY29sb3ItbWFpbjogdmFyKC0tY29sb3ItZ3JleSk7XHJcbiAgLS1ib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG59XHJcblxyXG4vKiBFTkQgRk9PVEVSICovXHJcblxyXG4vKiBTVEFSVCBTSURFQkFSICovXHJcblxyXG4jc2lkZWJhciB7XHJcbiAgLS1iZzogdmFyKC0tbWFpbi1iZy1ib3gpO1xyXG4gIC0tbWFpbl9jb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgLS10ZXh0LWNvbG9yLW1haW46IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYm9yZGVyLWNvbG9yOiAjQkJCRkNEO1xyXG5cclxuICAtLWljb24tY29sb3I6IHZhcigtLWljb24tZ3JleSk7XHJcbiAgLS1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1pY29uLWdyZXktZGFyayk7XHJcbiAgLS1pY29uX2NvbG9yX2FjdGl2ZTogdmFyKC0taWNvbi1ncmV5LWRhcmspO1xyXG4gIC0taWNvbl9iZzogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcbiAgLS1pY29uX2JnX2hvdmVyOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWljb25fYmdfYWN0aXZlOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuXHJcbiAgLS1idXR0b24tbWFpbi1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICAtLWJ1dHRvbi1tYWluLWJnOiB2YXIoLS1jb2xvci1wdXJwbGUpO1xyXG4gIC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXI6IHZhcigtLWJnLWZmZik7XHJcbiAgLS1idXR0b24tbWFpbi1iZy1ob3ZlcjogdmFyKC0tY29sb3ItcHVycGxlLWRhcmspO1xyXG5cclxuICAtLWJ1dHRvbi1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICAtLWJ1dHRvbi1iZzogdmFyKC0tY29sb3ItcHVycGxlKTtcclxuICAtLWJ1dHRvbi1jb2xvci1ob3ZlcjogdmFyKC0tYmctZmZmKTtcclxuICAtLWJ1dHRvbi1iZy1ob3ZlcjogdmFyKC0tY29sb3ItcHVycGxlLWRhcmspO1xyXG5cclxuICAtLXNjcm9sbC1iZzogI0VDRURGMDtcclxuICAtLXNjcm9sbC1oYW5kbGU6ICNCQkJGQ0Q7XHJcbn1cclxuXHJcbiNtYWluIHtcclxuICAtLXNpZGViYXItbWFpbl9jb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgLS1zaWRlYmFyLW1haW5fY29sb3JfdGV4dDogdmFyKC0tYmctZmZmKTtcclxuICAtLXNpZGViYXItbWFpbl9jb2xvcl9ob3ZlcjogIzI5MmY0YztcclxuICAtLXNpZGViYXItbWFpbl9jb2xvcl90ZXh0X2hvdmVyOiB2YXIoLS1iZy1mZmYpO1xyXG5cclxuICAtLXNpZGViYXItb3Blbi1idXR0b24tYmc6ICNmZmY7XHJcbiAgLS1zaWRlYmFyLW9wZW4tYnV0dG9uLWJvcmRlcjogdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAtLXNpZGViYXItb3Blbi1idXR0b24tY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tc2lkZWJhci1vcGVuLWJ1dHRvbi1iZy1ob3ZlcjogIzlEODlFRTtcclxuICAtLXNpZGViYXItb3Blbi1idXR0b24tYm9yZGVyLWhvdmVyOiAjOUQ4OUVFO1xyXG4gIC0tc2lkZWJhci1vcGVuLWJ1dHRvbi1jb2xvci1ob3ZlcjogI2ZmZjtcclxufVxyXG5cclxuLyogRU5EIFNJREVCQVIgKi9cclxuXHJcbiNhZG1pbi1tZW51LFxyXG4jbWFpbi1tZW51LFxyXG4ubW9kLW9iaiB7XHJcbiAgLS1iZzogIzIwMjMzRDtcclxuICAtLWJvcmRlci1jb2xvcjogIzIwMjMzRDtcclxuICAtLWJvcmRlci1jb2xvci1sb2dvOiAjNDg0Qzc4O1xyXG4gIC0tbGluay1jb2xvcjogI0M3QjhGRjtcclxuICAtLWxpbmstY29sb3ItaG92ZXI6ICNFMTgyRkY7XHJcbiAgLS1saW5rLWNvbG9yLWFjdGl2ZTogI0M3QjhGRjtcclxuICAtLXNjcm9sbGJhcjogIzIwMjMzRDtcclxuICAtLXNjcm9sbGJhcl9oYW5kbGU6ICNDN0I4RkY7XHJcbiAgLS1pY29uLWNvbG9yOiAjQzdCOEZGO1xyXG4gIC0taWNvbi1jb2xvci1ob3ZlcjogI0UxODJGRjtcclxuICAtLWljb25fY29sb3JfYWN0aXZlOiAjQzdCOEZGO1xyXG5cclxuICAtLWljb25fYmc6IHZhcigtLW1lbnUtYmcpO1xyXG4gIC0taWNvbl9iZ19ob3ZlcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1pY29uX2JnX2FjdGl2ZTogdmFyKC0tbWVudS1ncmV5KTtcclxuICAtLW1haW4tbWVudS1mb250LXdlaWdodDogNzAwO1xyXG4gIC0tbWVudS1jaGlsZHJlbi1mb250LXdlaWdodDogNTAwO1xyXG4gIC0tZmx5b3V0LW1lbnUtZm9udC13ZWlnaHQ6IDYwMDtcclxuICAtLXN1Ym1pdC1mb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4jYWRtaW4taW5kZXgge1xyXG4gIC0tYWRtaW4tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1hZG1pbi1jb2xvci1hZnRlcjogdmFyKC0tbWVudS1iZyk7XHJcbiAgLS1hZG1pbi1jb2xvci1hZnRlci1ob3ZlcjogdmFyKC0tbWVudS1iZyk7XHJcbiAgLS1hZG1pbi1jb2xvci10ZXh0LWhvdmVyOiB2YXIoLS1jb2xvci1kYXJrKTtcclxufVxyXG5cclxuI3RvcC1tZW51IHtcclxuICAtLWJnOiB2YXIoLS1tYWluLWJnLWJveCk7XHJcbiAgLS1pY29uLWNvbG9yOiB2YXIoLS1pY29uLWdyZXkpO1xyXG4gIC0taWNvbi1jb2xvci1ob3ZlcjogdmFyKC0taWNvbi1ncmV5LWRhcmspO1xyXG4gIC0taWNvbl9jb2xvcl9hY3RpdmU6IHZhcigtLWljb24tZ3JleS1kYXJrKTtcclxuICAtLWJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XHJcbiAgLS1pY29uX2JnOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWljb25fYmdfaG92ZXI6IHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG4gIC0taWNvbl9iZ19hY3RpdmU6IHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG5cclxuICAtLXRvcC1ub3RpZmljYXRpb246IHZhcigtLXRyYWNrZXItMSk7XHJcbiAgLS10b3Atbm90aWZpY2F0aW9uLWNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tbGluay1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1saW5rLWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1ibHVlKTtcclxuICAtLWxpbmstYmc6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1saW5rLWJnLWhvdmVyOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLXRleHQtY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tc3RhcnQtdGltZS1iZy10aW1lOiB2YXIoLS1tZW51LWJnKTtcclxuICAtLXN0YXJ0LXRpbWUtdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxufVxyXG5cclxuLnJldm8tbW9kYWwtYmFkZ2Uge1xyXG4gIC0tYmc6IHZhcigtLWJnLWJveCk7XHJcbiAgLS1saW5rLWJnOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tYmctdGl0bGU6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLWxpbmstY29sb3I6dmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1saW5rLWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLWxpbmstYmc6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1saW5rLWJnLWhvdmVyOiB2YXIoLS1hbGwtaG92ZXItYmcpO1xyXG4gIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxufVxyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcbkBpbXBvcnQgXCJfdmFycy1pY29uXCI7XHJcbi8qIDIwLjAzLjIwMjIgKi9cclxuLyogU1RBUlQgRk9OVCBWQVJJQUJMRVMgKi9cclxuQGdmZjogc2Fucy1zZXJpZjtcclxuQGdmczogMXJlbTtcclxuQGdsaDogMS40O1xyXG5AZ2xoMjogMS40O1xyXG5AZm9udEljb246IFwiV0ZTLVJNLWZvbnRcIjtcclxuLyogRU5EIEZPTlQgVkFSSUFCTEVTICovXHJcblxyXG4vKiBWQVJTICovXHJcbi5ib3JkZXItcmFkaXVzIChAcmFkaXVzKSB7XHJcbiAgYm9yZGVyLXJhZGl1czogQHJhZGl1cztcclxuICAtbW96LWJvcmRlci1yYWRpdXM6IEByYWRpdXM7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBBTEwgVkFSSUFCTEVTIEZPUiBXT1JLIExFU1MgKi9cclxuLmJvcmFkIChAcmFkaXVzKSB7XHJcbiAgYm9yZGVyLXJhZGl1czogQHJhZGl1cztcclxuICAtbW96LWJvcmRlci1yYWRpdXM6IEByYWRpdXM7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xyXG59XHJcbi5ib3JkZXJiKCl7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcbi5hbmltKEB3aGF0LCBAdGltZSl7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBAd2hhdCBAdGltZSBlYXNlLWluLW91dDtcclxuICAtbW96LXRyYW5zaXRpb246IEB3aGF0IEB0aW1lIGVhc2UtaW4tb3V0O1xyXG4gIHRyYW5zaXRpb246IEB3aGF0IEB0aW1lIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBCT1JERVIgUkFESVVTIFZBUklBQkxFUyAqL1xyXG5AcmFkOiA4cHg7XHJcbkByYWRNaWRkbGU6IDVweDtcclxuQHJhZHNtYWxsOiAzcHg7XHJcbkByYWRGdWxsOiAxMDAlO1xyXG4vKiBFTkQgQk9SREVSIFJBRElVUyBWQVJJQUJMRVMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEZPTlQgU0lTRSArIExJTkUgSElHSFQgKi9cclxuQGZzMjA6IDEuNDI4NTcxNDI4NTcxNDI5cmVtO1xyXG5AZnMxODogMS4yODU3MTQyODU3MTQyODZyZW07XHJcbkBmczE2OiAxLjE0MjhyZW07XHJcbkBmczEyOiAwLjg1NzE0Mjg1NzE0Mjg1N3JlbTtcclxuQGZzMTE6IDAuNzg1N3JlbTtcclxuQGZzMTA6IDAuNzE0MnJlbTtcclxuLyogU1RBUlQgMTAyNCovXHJcbkAxMDI0X2gxOiAxLjVyZW07XHJcbkAxMDI0X2gyOiAxLjQyODVyZW07XHJcbkAxMDI0X2gzOiAxLjVyZW07XHJcbkAxMDI0X2g0OiAxLjVyZW07XHJcbkAxMDI0X2g1OiAxLjVyZW07XHJcbkAxMDI0X2g2OiAxLjVyZW07XHJcbi8qICBTVEFSVCA3NjgqL1xyXG5ANzg2X2gxOiAxLjVyZW07XHJcbkA3ODZfaDI6IDEuMTI4NXJlbTtcclxuQDc4Nl9oMzogMS41cmVtO1xyXG5ANzg2X2g0OiAxLjVyZW07XHJcbkA3ODZfaDU6IDEuNXJlbTtcclxuQDc4Nl9oNjogMS41cmVtO1xyXG4vKiAgU1RBUlQgNTAwKi9cclxuQDUwMF9oMTogMS4ycmVtO1xyXG5ANTAwX2gyOiAxLjE0MjhyZW07XHJcbkA1MDBfaDM6IDEuMnJlbTtcclxuQDUwMF9oNDogMS4ycmVtO1xyXG5ANTAwX2g1OiAxLjJyZW07XHJcbkA1MDBfaDY6IDEuMnJlbTtcclxuLyogRU5EIEZPTlQgU0lTRSArIExJTkUgSElHSFQgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEpDRiAqL1xyXG5Ad2JhcjogM3B4O1xyXG5cclxuQGhVcERvd246IDA7XHJcbi8qIEVORCBKQ0YgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEFOSU1BVEUgVElNRSovXHJcbkB0aW1laG92ZXI6IC4yczsgLyogaG92ZXIgKi9cclxuQHRpbWVtYWluOiAuNXM7IC8qIE1haW4gYmlnIGJsb2tzIGFuaW1hdGVkICovXHJcbkB0aW1lTnVsbDogLjBzO1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgT1BBQ0lUWSAqL1xyXG5cclxuQG9wYWNpdHk6IDAuMjtcclxuXHJcbi8qIEVORCBPUEFDSVRZKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIElDT05TIFZBUiAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgSUNPTiBGT05UUyAqL1xyXG5cclxuQGFjdGl2aXR5LWxpc3Q6IEBpY29uLXRoaW4tYWN0aXZpdHktbGlzdDsgLyogT0sgKi9cclxuQGFjdGl2aXR5OiBAaWNvbi10aGluLWFjdGl2aXR5OyAvKiBPSyAqL1xyXG5AYWRkLXBheW1lbnQ6IEBpY29uLXRoaW4tYWRkLXBheW1lbnQ7IC8qIE9LICovXHJcbkBhZG1pbmlzdHJhdGlvbjogQGljb24tdGhpbi1hZG1pbmlzdHJhdGlvbjsgLyogT0sgKi9cclxuQGFnaWxlOiBAaWNvbi10aGluLWFnaWxlOyAvKiBPSyAqL1xyXG5AYXJjaGl2ZTogQGljb24tdGhpbi1hcmNoaXZlOyAvKiBPSyAqL1xyXG5AYXJyb3ctYm90dG9tOiBAaWNvbi10aGluLWFycm93LWJvdHRvbTsgLyogT0sgKi9cclxuQGFycm93LWRvdWJsZS1kb3duOiBAaWNvbi10aGluLWFycm93LWRvdWJsZS1kb3duOyAvKiBPSyAqL1xyXG5AYXJyb3ctZG91YmxlLXVwOiBAaWNvbi10aGluLWFycm93LWRvdWJsZS11cDsgLyogT0sgKi9cclxuQGFycm93LWRvd246IEBpY29uLXRoaW4tYXJyb3ctZG93bjsgLyogT0sgKi9cclxuQGFycm93LWxlZnQ6IEBpY29uLXRoaW4tYXJyb3ctbGVmdDsgLyogT0sgKi9cclxuQGFycm93LXJpZ2h0OiBAaWNvbi10aGluLWFycm93LXJpZ2h0OyAvKiBPSyAqL1xyXG5AYXJyb3ctdG9wOiBAaWNvbi10aGluLWFycm93LXRvcDsgLyogT0sgKi9cclxuQGFycm93LXdpZGUtcmlnaHQ6IEBpY29uLXRoaW4tYXJyb3ctd2lkZS1yaWdodDsgLyogT0sgKi9cclxuQGF0b206IEBpY29uLXRoaW4tYXRvbTsgLyogT0sgKi9cclxuQGJhc2tldDogQGljb24tdGhpbi1iYXNrZXQ7IC8qIE9LICovXHJcbkBib2FyZHM6IEBpY29uLXRoaW4tYm9hcmRzOyAvKiBPSyAqL1xyXG5AYm9va21hcms6IEBpY29uLXRoaW4tYm9va21hcms7IC8qIE9LICovXHJcbkBjYWxlbmRhcjogQGljb24tdGhpbi1jYWxlbmRhcjsgLyogT0sgKi9cclxuQGNhcnQ6IEBpY29uLXRoaW4tY2FydDsgLyogT0sgKi9cclxuQGNoYW5nZS11c2VyOiBAaWNvbi10aGluLWNoYW5nZS11c2VyOyAvKiBPSyAqL1xyXG5AY2hlY2tlZDogQGljb24tdGhpbi1jaGVja2VkOyAvKiBPSyAqL1xyXG5AY2xpcDogQGljb24tdGhpbi1jbGlwOyAvKiBPSyAqL1xyXG5AY2xvc2UtbmV3LXNtYWxsOiBAaWNvbi10aGluLWNsb3NlLW5ldy1zbWFsbDsgLyogT0sgKi9cclxuQGNsb3NlLW5ldzogQGljb24tdGhpbi1jbG9zZS1uZXc7IC8qIE9LICovXHJcbkBjb21tZW50OiBAaWNvbi10aGluLWNvbW1lbnQ7IC8qIE9LICovXHJcbkBjb21wYW55OiBAaWNvbi10aGluLWNvbXBhbnk7IC8qIE9LICovXHJcbkBjb250YWN0czogQGljb24tdGhpbi1jb250YWN0czsgLyogT0sgKi9cclxuQGNvcHk6IEBpY29uLXRoaW4tY29weTsgLyogT0sgKi9cclxuQGNzdjogQGljb24tdGhpbi1jc3Y7IC8qIE9LICovXHJcbkBjdXN0b20tZmllbGRzOiBAaWNvbi10aGluLWN1c3RvbS1maWVsZHM7IC8qIE9LICovXHJcbkBkZWFsczogQGljb24tdGhpbi1kZWFsczsgLyogT0sgKi9cclxuQGRlbDogQGljb24tdGhpbi1kZWw7IC8qIE9LICovXHJcbkBkZXNjcmlwdGlvbjogQGljb24tdGhpbi1kZXNjcmlwdGlvbjsgLyogT0sgKi9cclxuQGRpYW1vbmQ6IEBpY29uLXRoaW4tZGlhbW9uZDsvKiBPSyAqL1xyXG5AZG9jdW1lbnRzOiBAaWNvbi10aGluLWRvY3VtZW50czsgLyogT0sgKi9cclxuQGRvY3gtZmlsZTogQGljb24tdGhpbi1kb2N4OyAvKiBPSyAqL1xyXG5AZG9sbGFyOiBAaWNvbi10aGluLWRvbGxhcjsvKiBPSyAqL1xyXG5AZG93bmxvYWQ6IEBpY29uLXRoaW4tZG93bmxvYWQ7IC8qIE9LICovXHJcbkBlZGl0OiBAaWNvbi10aGluLWVkaXQ7IC8qIE9LICovXHJcbkBlbWFpbDogQGljb24tdGhpbi1lbWFpbDsgLyogT0sgKi9cclxuQGVudW1lcmF0aW9uczogQGljb24tdGhpbi1lbnVtZXJhdGlvbnM7IC8qIE9LICovXHJcbkBleHBlbnNlczogQGljb24tdGhpbi1leHBlbnNlczsgLyogT0sgKi9cclxuQGV4dGVybmFsOiBAaWNvbi10aGluLWV4dGVybmFsOyAvKiBPSyAqL1xyXG5AZXh0cmEtbWVudTogQGljb24tdGhpbi1leHRyYS1tZW51OyAvKiBPSyAqL1xyXG5AZmF2OkBpY29uLXRoaW4tZmF2OyAvKiBPSyAqL1xyXG5AZmF2b3JpdDogQGljb24tdGhpbi1mYXZvcml0OyAvKiBPSyAqL1xyXG5AZmlsZXM6IEBpY29uLXRoaW4tZmlsZXM7IC8qIE9LICovXHJcbkBmaWx0ZXI6IEBpY29uLXRoaW4tZmlsdGVyOyAvKiBPSyAqL1xyXG5AZmluYW5jZTogQGljb24tdGhpbi1maW5hbmNlOyAvKiBPSyAqL1xyXG5AZnVsbHNjcmVlbjogQGljb24tdGhpbi1mdWxsc2NyZWVuOyAvKiBPSyAqL1xyXG5AZ2FudHQ6IEBpY29uLXRoaW4tZ2FudHQ7LyogT0sgKi9cclxuQGdyb3VwOiBAaWNvbi10aGluLWdyb3VwOy8qIE9LICovXHJcbkBoZWxwOiBAaWNvbi10aGluLWhlbHA7IC8qIE9LICovXHJcbkBob21lOiBAaWNvbi10aGluLWhvbWU7IC8qIE9LICovXHJcbkBpY29uLWFjY291bnQtcHJvamVjdHM6IEBpY29uLXRoaW4tYWNjb3VudC1wcm9qZWN0czsgLyogT0sgKi9cclxuQGljb24tYWN0aW9uLWxheW91dHM6IEBpY29uLXRoaW4tYWN0aW9uLWxheW91dHM7IC8qIE9LICovXHJcbkBpY29uLWFkZGl0aW9uYWxzOiBAaWNvbi10aGluLWFkZGl0aW9uYWxzOyAvKiBPSyAqL1xyXG5AaWNvbi1hcmNoaXZlOiBAaWNvbi10aGluLWFyY2hpdmU7LyogT0sgKi9cclxuQGljb24tYXR0YWNobWVudDogQGljb24tdGhpbi1hdHRhY2htZW50OyAvKiBPSyAqL1xyXG5AaWNvbi1iYWNrOiBAaWNvbi10aGluLWJhY2s7IC8qIE9LICovXHJcbkBpY29uLWJhY2tsb2c6IEBpY29uLXRoaW4tYmFja2xvZzsgLyogT0sgKi9cclxuQGljb24tYmF0dGVyeTogQGljb24tdGhpbi1iYXR0ZXJ5OyAvKiBPSyAqL1xyXG5AaWNvbi1jOiBAaWNvbi10aGluLWNwbHVzOyAvKiBPSyAqL1xyXG5AaWNvbi1jbG9zZS1zZWFyY2g6IEBpY29uLXRoaW4tY2xvc2Utc2VhcmNoOyAvKiBPSyAqL1xyXG5AaWNvbi1jb21tZW50czogQGljb24tdGhpbi1jb21tZW50czsgLyogT0sgKi9cclxuQGljb24tY3JtOiBAaWNvbi10aGluLWNybTsgLyogT0sgKi9cclxuQGljb24tY3NoYXJwOiBAaWNvbi10aGluLWNzaGFycDsgLyogT0sgKi9cclxuQGljb24tY3NzOiBAaWNvbi10aGluLWNzczsgLyogT0sgKi9cclxuQGljb24tZGlmZjogQGljb24tdGhpbi1kaWZmOyAvKiBPSyAqL1xyXG5AaWNvbi1kbXNmOiBAaWNvbi10aGluLWRtc2Y7IC8qIE9LICovXHJcbkBpY29uLWRvY3VtZW50OiBAaWNvbi10aGluLWRvY3VtZW50OyAvKiBPSyAqL1xyXG5AaWNvbi1kb2N4LTI6IEBpY29uLXRoaW4tZG9jeDsgLyogT0sgKi9cclxuQGljb24tZG9jeDogQGljb24tdGhpbi1kb2N4OyAvKiBPSyAqL1xyXG5AaWNvbi1kb3duLTE6IEBpY29uLXRoaW4tZG93bi0xOyAvKiBPSyAqL1xyXG5AaWNvbi1kb3duLTI6IEBpY29uLXRoaW4tZG93bi0yOyAvKiBPSyAqL1xyXG5AaWNvbi1kcml2ZTogQGljb24tdGhpbi1kcml2ZTsgLyogT0sgKi9cclxuQGljb24tRVJQOiBAaWNvbi10aGluLUVSUDsgLyogT0sgKi9cclxuQGljb24tRVZNOiBAaWNvbi10aGluLUVWTTsgLyogT0sgKi9cclxuQGljb24tZmF2LW9mZjogQGljb24tdGhpbi1mYXYtb2ZmOyAvKiBPSyAqL1xyXG5AaWNvbi1mb2xkZXI6IEBpY29uLXRoaW4tZm9sZGVyOyAvKiBPSyAqL1xyXG5AaWNvbi1naWY6IEBpY29uLXRoaW4tZ2lmOyAvKiBPSyAqL1xyXG5AaWNvbi1naXQtbmV3OiBAaWNvbi10aGluLWdpdC1uZXc7XHJcbkBpY29uLWdpdDogQGljb24tdGhpbi1naXQ7IC8qIE9LICovXHJcbkBpY29uLWhlYXJ0OiBAaWNvbi10aGluLWhlYXJ0OyAvKiBPSyAqL1xyXG5AaWNvbi1oaXN0b3J5OiBAaWNvbi10aGluLWhpc3Rvcnk7IC8qIE9LICovXHJcbkBpY29uLWhvdXJnbGFzczogQGljb24tdGhpbi1ob3VyZ2xhc3M7IC8qIE9LICovXHJcbkBpY29uLWh0bWw6IEBpY29uLXRoaW4taHRtbDsgLyogT0sgKi9cclxuQGljb24taW1wb3J0OiBAaWNvbi10aGluLWltcG9ydDsgLyogT0sgKi9cclxuQGljb24taW52ZW50b3J5OiBAaWNvbi10aGluLWludmVudG9yeTsgLyogT0sgKi9cclxuQGljb24tamF2YTogQGljb24tdGhpbi1qYXZhOyAvKiBPSyAqL1xyXG5AaWNvbi1qcGc6IEBpY29uLXRoaW4tanBnOyAvKiBPSyAqL1xyXG5AaWNvbi1qczogQGljb24tdGhpbi1qczsgLyogT0sgKi9cclxuQGljb24ta2FuYmFuOiBAaWNvbi10aGluLWthbmJhbjtcclxuQGljb24ta2V5OiBAaWNvbi10aGluLWtleTsgLyogT0sgKi9cclxuQGljb24ta2V5MjogQGljb24tdGhpbi1rZXkyOyAvKiBPSyAqL1xyXG5AaWNvbi1rbm93bGVkZ2ViYXNlOiBAaWNvbi10aGluLWtub3dsZWRnZWJhc2U7IC8qIE9LICovXHJcbkBpY29uLWxpa2U6IEBpY29uLXRoaW4tbGlrZTsgLyogT0sgKi9cclxuQGljb24tbG9nczogQGljb24tdGhpbi1sb2dzOyAvKiBPSyAqL1xyXG5AaWNvbi1tZW51czogQGljb24tdGhpbi1tZW51czsgLyogT0sgKi9cclxuQGljb24tbWVyZ2U6IEBpY29uLXRoaW4tbWVyZ2U7IC8qIE9LICovXHJcbkBpY29uLW1vbml0b3JpbmctY29udHJvbGxpbmc6IEBpY29uLXRoaW4tbW9uaXRvcmluZy1jb250cm9sbGluZzsgLyogT0sgKi9cclxuQGljb24tbW92ZTogQGljb24tdGhpbi1tb3ZlOyAvKiBPSyAqL1xyXG5AaWNvbi1uby1pbnZvaWNlczogQGljb24tdGhpbi1uby1pbnZvaWNlczsgLyogT0sgKi9cclxuQGljb24tbm9ybWFsLWlzc3VlczogQGljb24tdGhpbi1ub3JtYWwtaXNzdWVzOyAvKiBPSyAqL1xyXG5AaWNvbi1ub3RpZmljYXRpb25zOiBAaWNvbi10aGluLW5vdGlmaWNhdGlvbnM7IC8qIE9LICovXHJcbkBpY29uLW9kdDogQGljb24tdGhpbi1vZHQ7IC8qIE9LICovXHJcbkBpY29uLW9wZW4tc2VhcmNoOiBAaWNvbi10aGluLW9wZW4tc2VhcmNoOyAvKiBPSyAqL1xyXG5AaWNvbi1wYWdlczogQGljb24tdGhpbi1wYWdlczsgLyogT0sgKi9cclxuQGljb24tcGFzc3dkOiBAaWNvbi10aGluLXBhc3N3ZDsgLyogT0sgKi9cclxuQGljb24tcGF1c2U6IEBpY29uLXRoaW4tcGF1c2U7IC8qIE9LICovXHJcbkBpY29uLXBlcmlvZGljLXRhc2tzOiBAaWNvbi10aGluLXBlcmlvZGljLXRhc2tzOyAvKiBPSyAqL1xyXG5AaWNvbi1waHA6IEBpY29uLXRoaW4tcGhwOyAvKiBPSyAqL1xyXG5AaWNvbi1wbGF5OiBAaWNvbi10aGluLXBsYXk7IC8qIE9LICovXHJcbkBpY29uLXBuZzogQGljb24tdGhpbi1wbmc7IC8qICAtLS0tICAqL1xyXG5AaWNvbi1wcmV2aWV3LXNhbGFyeTogQGljb24tdGhpbi1wcmV2aWV3LXNhbGFyeTsgLyogT0sgKi9cclxuQGljb24tcHJpbnQ6IEBpY29uLXRoaW4tcHJpbnQ7IC8qIE9LICovXHJcbkBpY29uLXJlcG9ydHM6IEBpY29uLXRoaW4tcmVwb3J0czsgLyogT0sgKi9cclxuQGljb24tcmlza3M6IEBpY29uLXRoaW4tcmlza3M7IC8qIE9LICovXHJcbkBpY29uLXJvbGVzOiBAaWNvbi10aGluLXJvbGVzOyAvKiBPSyAqL1xyXG5AaWNvbi1ydWJ5OiBAaWNvbi10aGluLXJ1Ynk7IC8qIE9LICovXHJcbkBpY29uLXNjcm9sbDogQGljb24tdGhpbi1zY3JvbGw7IC8qIE9LICovXHJcbkBpY29uLXNjcnVtOiBAaWNvbi10aGluLXNjcnVtOyAvKiBPSyAqL1xyXG5AaWNvbi1zbWFsbC1pc3N1ZXM6IEBpY29uLXRoaW4tc21hbGwtaXNzdWVzOyAvKiBPSyAqL1xyXG5AaWNvbi1zbmlwcGV0czogQGljb24tdGhpbi1zbmlwcGV0czsgLyogT0sgKi9cclxuQGljb24tc3ByaW50LWJvYXJkOiBAaWNvbi10aGluLXNwcmludC1ib2FyZDsgLyogT0sgKi9cclxuQGljb24tc3ByaW50LWJ1cm5kb3duOiBAaWNvbi10aGluLXNwcmludC1idXJuZG93bjsgLyogT0sgKi9cclxuQGljb24tc3RhdGlzdGljczogQGljb24tdGhpbi1zdGF0aXN0aWNzOyAvKiBPSyAqL1xyXG5AaWNvbi1zdG9wOiBAaWNvbi10aGluLXN0b3A7IC8qIE9LICovXHJcbkBpY29uLXN1cnZleTogQGljb24tdGhpbi1zdXJ2ZXk7IC8qIE9LICovXHJcbkBpY29uLXRlbXBsYXRlczogQGljb24tdGhpbi10ZW1wbGF0ZXM7IC8qIE9LICovXHJcbkBpY29uLXRleHQ6IEBjbGFzc2ljLXRleHQ7XHJcbkBpY29uLXRpY2tldHM6IEBpY29uLXRoaW4tdGlja2V0czsgLyogT0sgKi9cclxuQGljb24tdGltZXI6IEBjbGFzc2ljLXRpbWVyO1xyXG5AaWNvbi11bi1saWtlOiBAaWNvbi10aGluLXVuLWxpa2U7IC8qIE9LICovXHJcbkBpY29uLXVwLTE6IEBpY29uLXRoaW4tdXAtMTsgLyogT0sgKi9cclxuQGljb24tdXAtMjogQGljb24tdGhpbi11cC0yOyAvKiBPSyAqL1xyXG5AaWNvbi11cGxvYWQ6IEBpY29uLXRoaW4tdXBsb2FkOyAvKiBPSyAqL1xyXG5AaWNvbi12YXJpYWJsZXM6IEBpY29uLXRoaW4tdmFyaWFibGVzOyAvKiBPSyAqL1xyXG5AaWNvbi13YnM6IEBpY29uLXRoaW4td2JzOyAvKiBPSyAqL1xyXG5AaWNvbi13cmVjazogQGljb24tdGhpbi13cmVjazsgLyogT0sgKi9cclxuQGljb24teG1sOiBAaWNvbi10aGluLXhtbDsgLyogT0sgKi9cclxuQGljb24teW91dHViZTogQGljb24tdGhpbi15b3V0dWJlOyAvKiBPSyAqL1xyXG5AaWNvbi16aXA6IEBpY29uLXRoaW4temlwOyAvKiBPSyAqL1xyXG5AaW52b2ljZXM6IEBpY29uLXRoaW4taW52b2ljZXM7IC8qIE9LICovXHJcbkBpc3N1ZXM6IEBpY29uLXRoaW4taXNzdWVzOyAvKiBPSyAqL1xyXG5AbGRhcC1hdXRoZW50aWNhdGlvbjogQGljb24tdGhpbi1sZGFwLWF1dGhlbnRpY2F0aW9uOyAvKiBPSyAqL1xyXG5AbGluay1icmVhazogQGljb24tdGhpbi1saW5rLWJyZWFrOyAvKiBPSyAqL1xyXG5AbG9jazogQGljb24tdGhpbi1sb2NrOyAvKiBPSyAqL1xyXG5AbG9naW46IEBpY29uLXRoaW4tbG9naW47IC8qIE9LICovXHJcbkBsb2dvdXQ6IEBpY29uLXRoaW4tbG9nb3V0OyAvKiBPSyAqL1xyXG5AbWFpbGNoaW1wOiBAY2xhc3NpYy1tYWlsY2hpbXA7XHJcbkBtZWV0aW5nOiBAaWNvbi10aGluLW1lZXRpbmc7IC8qIE9LICovXHJcbkBtb25leTogQGljb24tdGhpbi1tb25leTsgLyogT0sgKi9cclxuQG15LWFjY291bnQ6IEBpY29uLXRoaW4tbXktYWNjb3VudDsgLyogT0sgKi9cclxuQG15LXBhZ2U6IEBpY29uLXRoaW4tbXktcGFnZTsgLyogT0sgKi9cclxuQG5ldy1vYmplY3Q6IEBpY29uLXRoaW4tbmV3LW9iamVjdDsgLyogT0sgKi9cclxuQG5ld3M6IEBpY29uLXRoaW4tbmV3czsgLyogT0sgKi9cclxuQG5leHQ6IEBpY29uLXRoaW4tbmV4dDsgLyogT0sgKi9cclxuQG5vdGU6IEBpY29uLXRoaW4tbm90ZTsgLyogT0sgKi9cclxuQG9wZW4tZm9sZGVyOiBAaWNvbi10aGluLW9wZW4tZm9sZGVyOyAvKiBPSyAqL1xyXG5Ab3Blbi1zaWRlYmFyLWhvcjogQGljb24tdGhpbi1vcGVuLXNpZGViYXItaG9yOyAvKiBPSyAqL1xyXG5Ab3Blbi1zaWRlYmFyOiBAaWNvbi10aGluLW9wZW4tc2lkZWJhcjsgLyogT0sgKi9cclxuQG9yZGVyczogQGljb24tdGhpbi1vcmRlcnM7IC8qIE9LICovXHJcbkBvdmVydmlldzogQGljb24tdGhpbi1vdmVydmlldzsgLyogT0sgKi9cclxuQHBkZjogQGljb24tdGhpbi1wZGY7IC8qIE9LICovXHJcbkBwZW9wbGU6IEBpY29uLXRoaW4tcGVvcGxlOyAvKiBPSyAqL1xyXG5AcGhvbmU6IEBpY29uLXRoaW4tcGhvbmU7IC8qIE9LICovXHJcbkBwaG90bzogQGljb24tdGhpbi1waG90bzsgLyogT0sgKi9cclxuQHBsYW5uaW5nOiBAaWNvbi10aGluLXBsYW5uaW5nOyAvKiBPSyAqL1xyXG5AcGx1Z2luczogQGljb24tdGhpbi1wbHVnaW5zOyAvKiBPSyAqL1xyXG5AcG5nOiBAaWNvbi10aGluLXBuZzsgLyogT0sgKi9cclxuQHByZXY6IEBpY29uLXRoaW4tcHJldjsgLyogT0sgKi9cclxuQHByb2R1Y3RzOiBAaWNvbi10aGluLXByb2R1Y3RzOyAvKiBPSyAqL1xyXG5AcHJvamVjdHM6IEBpY29uLXRoaW4tcHJvamVjdHM7IC8qIE9LICovXHJcbkBxdWVzdGlvbnM6IEBpY29uLXRoaW4tcXVlc3Rpb25zOyAvKiBPSyAqL1xyXG5AcXVpY2stc2VhcmNoOiBAaWNvbi10aGluLXF1aWNrLXNlYXJjaDtcclxuQHJlZ2lzdGVyOiBAaWNvbi10aGluLXJlZ2lzdGVyOyAvKiBPSyAqL1xyXG5AcmVsb2FkLTI6IEBpY29uLXRoaW4tcmVsb2FkLTI7IC8qIE9LICovXHJcbkByZWxvYWQ6IEBpY29uLXRoaW4tcmVsb2FkOyAvKiBPSyAqL1xyXG5AcmVwb3J0OiBAaWNvbi10aGluLXJlcG9ydDsgLyogT0sgKi9cclxuQHJlcG9zaXRvcnk6IEBpY29uLXRoaW4tcmVwb3NpdG9yeTsgLyogT0sgKi9cclxuQHJlc291cmNlczogQGljb24tdGhpbi1yZXNvdXJjZXM7IC8qIE9LICovXHJcbkByb2FkbWFwOiBAaWNvbi10aGluLXJvYWRtYXA7IC8qIE9LICovXHJcbkByb3NldHRlOiBAaWNvbi10aGluLXJvc2V0dGU7IC8qIE9LICovXHJcbkBzYXZlLW5ldzogQGljb24tdGhpbi1zYXZlLW5ldzsgLyogT0sgKi9cclxuQHNhdmU6IEBpY29uLXRoaW4tc2F2ZTsgLyogT0sgKi9cclxuQHNlYXJjaC1kb3duLWFycm93OiBAaWNvbi10aGluLXNlYXJjaC1kb3duLWFycm93OyAvKiBPSyAqL1xyXG5Ac2VhcmNoOiBAaWNvbi10aGluLXNlYXJjaDsgLyogT0sgKi9cclxuQHNldHRpbmdzOiBAaWNvbi10aGluLXNldHRpbmdzOyAvKiBPSyAqL1xyXG5Ac29ydC1oYW5kbGU6IEBpY29uLXRoaW4tc29ydC1oYW5kbGU7IC8qIE9LICovXHJcbkBzdGF0czogQGljb24tdGhpbi1zdGF0czsgLyogT0sgKi9cclxuQHN1bW1hcnk6IEBpY29uLXRoaW4tc3VtbWFyeTsgLyogT0sgKi9cclxuQHRhZ3M6IEBpY29uLXRoaW4tdGFnczsgLyogT0sgKi9cclxuQHRpbWUtZW50cmllczogQGljb24tdGhpbi10aW1lLWVudHJpZXM7IC8qIE9LICovXHJcbkB0eHQ6IEBpY29uLXRoaW4tdHh0OyAvKiBPSyAqL1xyXG5AdW5sb2NrOiBAaWNvbi10aGluLXVubG9jazsgLyogT0sgKi9cclxuQHVzZXI6IEBpY29uLXRoaW4tdXNlcjsgLyogT0sgKi9cclxuQHZjZjogQGljb24tdGhpbi12Y2Y7IC8qIE9LICovXHJcbkB2b3RlczogQGljb24tdGhpbi12b3RlczsgLyogT0sgKi9cclxuQHdhcm5pbmc6IEBpY29uLXRoaW4td2FybmluZzsgLyogT0sgKi9cclxuQHdpa2k6IEBpY29uLXRoaW4td2lraTsgLyogT0sgKi9cclxuQHdvcmtmbG93OiBAaWNvbi10aGluLXdvcmtmbG93OyAvKiBPSyAqL1xyXG5AeGxzOiBAaWNvbi10aGluLXhsczsgLyogT0sgKi9cclxuQHpvb20taW46IEBpY29uLXRoaW4tem9vbS1pbjsgLyogT0sgKi9cclxuQHpvb20tb3V0OiBAaWNvbi10aGluLXpvb20tb3V0OyAvKiBPSyAqL1xyXG5AaWNvbi1nbG9zc2FyeTogQGljb24tdGhpbi1nbG9zc2FyeTtcclxuQGljb24tY3JlZGVudGlhbHM6IEBpY29uLXRoaW4tY3JlZGVudGlhbHM7XHJcbkBpY29uLXNwcmludC1rYW5iYW46IEBpY29uLXRoaW4tc3ByaW50LWthbmJhbjtcclxuQGljb24tYXZhdGFyOiBAaWNvbi10aGluLWF2YXRhcjtcclxuXHJcblxyXG4vKiBFTkQgSUNPTiBGT05UUyAqL1xyXG5cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgUkVETUlORS1FVk9MVVRJT04gQVRUQUNITUVOVFMgKi9cclxuXHJcbi5yZWRtaW5lLWV2b2x1dGlvbi1hdHRhY2htZW50cyB7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICB3aWR0aDogY2FsYyh+JzEwMCUgKyA2MHB4Jyk7XHJcbiAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xyXG4gIG1hcmdpbi1yaWdodDogLTMwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBwYWRkaW5nOiA1cHggMzBweDtcclxuXHJcbiAgLmhvbGRlci1nYWwgdWwge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMCAtNXB4O1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAxMHB4Jyk7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICB3aWR0aDogMTIuNSU7XHJcbiAgICAgIG1pbi13aWR0aDogMjIwcHg7XHJcblxyXG4gICAgICAuaW4ge1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgbWFyZ2luOiA1cHg7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgLmhvbGRlci1pbWcge1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMjtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5iZy1pbWFnZXMge1xyXG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ob2xkZXItaW1nIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgIGEge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMjBweDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzcikgdmFyKC0tYm9yZGVyLXJhZGl1c3IpIDAgMDtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzcikgdmFyKC0tYm9yZGVyLXJhZGl1c3IpIDAgMDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1c3IpIHZhcigtLWJvcmRlci1yYWRpdXNyKSAwIDA7XHJcblxyXG5cclxuICAgICAgaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIC5iZy1pbWFnZXMge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5iZy1pbWFnZXMge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIG1hcmdpbjogLTMwcHggMCAwIC0zMHB4O1xyXG4gICAgICB3aWR0aDogNjBweDtcclxuICAgICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgei1pbmRleDogMztcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgIGNvbnRlbnQ6IEBzZWFyY2g7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYXR0YWNobWVudHMtcGRmIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9iZy1wZGYuc3ZnXCIpIG5vLXJlcGVhdCA1MCUgNTAlO1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICB9XHJcblxyXG4gICAgLmF0dGFjaG1lbnRzLWRvYyxcclxuICAgIC5hdHRhY2htZW50cy1kb2N4IHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9iZy1kb2N4LnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgfVxyXG5cclxuICAgIC5hdHRhY2htZW50cy14bHN4IHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9iZy14bHN4LnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJsb2NrLWluZm8ge1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG4gIH1cclxuXHJcbiAgLmluLWluZm8ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZmxleC13cmFwOiBub3dyYXA7XHJcblxyXG4gICAgLmluZm8ge1xyXG4gICAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgICAgcGFkZGluZzogMCA1cHggMCAwO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIG1hcmdpbjogMCAwIDVweCAhaW1wb3J0YW50O1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzEwMCUgLSAyNnB4Jyk7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnNpemUge1xyXG4gICAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgICAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxMjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ob2xkZXItYnV0dG9uIHtcclxuICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc3RhcnQtbW9iIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogLTk5OTk5cHg7XHJcbiAgICBsZWZ0OiAtOTk5OTlweDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB3aWR0aDogMTBweDtcclxuICAgIGhlaWdodDogMTBweDtcclxuICB9XHJcbn1cclxuXHJcbi5mYW5jeWJveC1jYXB0aW9uX19ib2R5IHtcclxuXHJcbiAgLmluLWluZm8ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAuaW5mbyB7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tYXR0YWNobWVudCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnNpemUge1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmhvbGRlci1idXR0b24ge1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaWNvbi1hdHRhY2htZW50IHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmljb24tZG93bmxvYWQsXHJcbiAgLmljb24tZGVsIHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBmb250LXNpemU6IDBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAwcHg7XHJcbiAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwcHg7XHJcbiAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwcHg7XHJcbiAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3ZlcilmO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaWNvbi1kZWwge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IEBkZWw7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZmFuY3lib3gtY2FwdGlvbl9fYm9keSB7XHJcbiAgLmZhbmN5Ym94LWluIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgLmhvbGRlci1idXR0b24ge1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxOTAwcHgpIHtcclxuICAucmVkbWluZS1ldm9sdXRpb24tYXR0YWNobWVudHMge1xyXG4gICAgLmhvbGRlci1nYWwgdWwge1xyXG4gICAgICBsaSB7XHJcbiAgICAgICAgd2lkdGg6IDE2LjY2JTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTUwMHB4KSB7XHJcbiAgLnJlZG1pbmUtZXZvbHV0aW9uLWF0dGFjaG1lbnRzIHtcclxuICAgIC5ob2xkZXItZ2FsIHVsIHtcclxuICAgICAgbGkge1xyXG4gICAgICAgIHdpZHRoOiAyNSU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gIC5yZWRtaW5lLWV2b2x1dGlvbi1hdHRhY2htZW50cyB7XHJcbiAgICAuaG9sZGVyLWdhbCB1bCB7XHJcbiAgICAgIGxpIHtcclxuICAgICAgICB3aWR0aDogMzMuMzMlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gIC5yZWRtaW5lLWV2b2x1dGlvbi1hdHRhY2htZW50cyB7XHJcbiAgICAuaG9sZGVyLWdhbCB1bCB7XHJcbiAgICAgIGxpIHtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gIC5yZWRtaW5lLWV2b2x1dGlvbi1hdHRhY2htZW50cyB7XHJcbiAgICAuYWxsLXRhYnMtY29udHJvbGwge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5ob2xkZXItZ2FsIHVsIHtcclxuICAgICAgbGkge1xyXG4gICAgICAgIHdpZHRoOiAyNjBweDtcclxuXHJcbiAgICAgICAgLmluIHtcclxuICAgICAgICAgIG1pbi13aWR0aDogMjUwcHg7XHJcbiAgICAgICAgICB3aWR0aDogMjUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN0YXJ0LW1vYiB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIFJFRE1JTkUtRVZPTFVUSU9OIEFUVEFDSE1FTlRTICovXHJcblxyXG5ib2R5LmNvbXBlbnNhdGUtZm9yLXNjcm9sbGJhciB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlblxyXG59XHJcblxyXG4uZmFuY3lib3gtYWN0aXZlIHtcclxuICBoZWlnaHQ6IGF1dG9cclxufVxyXG5cclxuLmZhbmN5Ym94LWlzLWhpZGRlbiB7XHJcbiAgbGVmdDogLTk5OTlweDtcclxuICBtYXJnaW46IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XHJcbiAgdG9wOiAtOTk5OXB4O1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlblxyXG59XHJcblxyXG4uZmFuY3lib3gtY29udGFpbmVyIHtcclxuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgbGVmdDogMDtcclxuICBvdXRsaW5lOiBub25lO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIHRvcDogMDtcclxuICAtbXMtdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XHJcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHotaW5kZXg6IDk5OTkyXHJcbn1cclxuXHJcbi5mYW5jeWJveC1jb250YWluZXIgKiB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveFxyXG59XHJcblxyXG4uZmFuY3lib3gtYmcsIC5mYW5jeWJveC1pbm5lciwgLmZhbmN5Ym94LW91dGVyLCAuZmFuY3lib3gtc3RhZ2Uge1xyXG4gIGJvdHRvbTogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMDtcclxuICB0b3A6IDBcclxufVxyXG5cclxuLmZhbmN5Ym94LW91dGVyIHtcclxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbiAgb3ZlcmZsb3cteTogYXV0b1xyXG59XHJcblxyXG4uZmFuY3lib3gtYmcge1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLXBvcHVwLW92ZXJsYXktZmFuY3kpO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogaW5oZXJpdDtcclxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xyXG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjQ3LCAwLCAuNzQsIC43MSlcclxufVxyXG5cclxuLmZhbmN5Ym94LWlzLW9wZW4gLmZhbmN5Ym94LWJnIHtcclxuICBvcGFjaXR5OiAuOTtcclxuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yMiwgLjYxLCAuMzYsIDEpXHJcbn1cclxuXHJcbi5mYW5jeWJveC1jYXB0aW9uLCAuZmFuY3lib3gtaW5mb2JhciwgLmZhbmN5Ym94LW5hdmlnYXRpb24gLmZhbmN5Ym94LWJ1dHRvbiwgLmZhbmN5Ym94LXRvb2xiYXIge1xyXG4gIGRpcmVjdGlvbjogbHRyO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBlYXNlLCB2aXNpYmlsaXR5IDBzIGVhc2UgLjI1cztcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgei1pbmRleDogOTk5OTdcclxufVxyXG5cclxuLmZhbmN5Ym94LXNob3ctY2FwdGlvbiAuZmFuY3lib3gtY2FwdGlvbiwgLmZhbmN5Ym94LXNob3ctaW5mb2JhciAuZmFuY3lib3gtaW5mb2JhciwgLmZhbmN5Ym94LXNob3ctbmF2IC5mYW5jeWJveC1uYXZpZ2F0aW9uIC5mYW5jeWJveC1idXR0b24sIC5mYW5jeWJveC1zaG93LXRvb2xiYXIgLmZhbmN5Ym94LXRvb2xiYXIge1xyXG4gIG9wYWNpdHk6IDE7XHJcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2UgMHMsIHZpc2liaWxpdHkgMHMgZWFzZSAwcztcclxuICB2aXNpYmlsaXR5OiB2aXNpYmxlXHJcbn1cclxuXHJcbi5mYW5jeWJveC1pbmZvYmFyIHtcclxuICBjb2xvcjogI2NjYztcclxuICBmb250LXNpemU6IDEzcHg7XHJcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7XHJcbiAgaGVpZ2h0OiA0NHB4O1xyXG4gIGxlZnQ6IDA7XHJcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XHJcbiAgbWluLXdpZHRoOiA0NHB4O1xyXG4gIG1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlO1xyXG4gIHBhZGRpbmc6IDAgMTBweDtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICB0b3A6IDA7XHJcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xyXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgdXNlci1zZWxlY3Q6IG5vbmVcclxufVxyXG5cclxuLmZhbmN5Ym94LXRvb2xiYXIge1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMFxyXG59XHJcblxyXG4uZmFuY3lib3gtc3RhZ2Uge1xyXG4gIGRpcmVjdGlvbjogbHRyO1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxuICB6LWluZGV4OiA5OTk5NFxyXG59XHJcblxyXG4uZmFuY3lib3gtaXMtb3BlbiAuZmFuY3lib3gtc3RhZ2Uge1xyXG4gIG92ZXJmbG93OiBoaWRkZW5cclxufVxyXG5cclxuLmZhbmN5Ym94LXNsaWRlIHtcclxuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBsZWZ0OiAwO1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbiAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xyXG4gIHBhZGRpbmc6IDQ0cHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB0b3A6IDA7XHJcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgei1pbmRleDogOTk5OTRcclxufVxyXG5cclxuLmZhbmN5Ym94LXNsaWRlOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgZm9udC1zaXplOiAwO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIHdpZHRoOiAwXHJcbn1cclxuXHJcbi5mYW5jeWJveC1pcy1zbGlkaW5nIC5mYW5jeWJveC1zbGlkZSwgLmZhbmN5Ym94LXNsaWRlLS1jdXJyZW50LCAuZmFuY3lib3gtc2xpZGUtLW5leHQsIC5mYW5jeWJveC1zbGlkZS0tcHJldmlvdXMge1xyXG4gIGRpc3BsYXk6IGJsb2NrXHJcbn1cclxuXHJcbi5mYW5jeWJveC1zbGlkZS0taW1hZ2Uge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcGFkZGluZzogNDRweCAwXHJcbn1cclxuXHJcbi5mYW5jeWJveC1zbGlkZS0taW1hZ2U6YmVmb3JlIHtcclxuICBkaXNwbGF5OiBub25lXHJcbn1cclxuXHJcbi5mYW5jeWJveC1zbGlkZS0taHRtbCB7XHJcbiAgcGFkZGluZzogNnB4XHJcbn1cclxuXHJcbi5mYW5jeWJveC1jb250ZW50IHtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBtYXJnaW46IDA7XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuICBwYWRkaW5nOiA0NHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGVcclxufVxyXG5cclxuLmZhbmN5Ym94LXNsaWRlLS1pbWFnZSAuZmFuY3lib3gtY29udGVudCB7XHJcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC41LCAwLCAuMTQsIDEpO1xyXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XHJcbiAgbGVmdDogMDtcclxuICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgcGFkZGluZzogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcclxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gIHVzZXItc2VsZWN0OiBub25lO1xyXG4gIHotaW5kZXg6IDk5OTk1XHJcbn1cclxuXHJcbi5mYW5jeWJveC1jYW4tem9vbU91dCAuZmFuY3lib3gtY29udGVudCB7XHJcbiAgY3Vyc29yOiB6b29tLW91dFxyXG59XHJcblxyXG4uZmFuY3lib3gtY2FuLXpvb21JbiAuZmFuY3lib3gtY29udGVudCB7XHJcbiAgY3Vyc29yOiB6b29tLWluXHJcbn1cclxuXHJcbi5mYW5jeWJveC1jYW4tcGFuIC5mYW5jeWJveC1jb250ZW50LCAuZmFuY3lib3gtY2FuLXN3aXBlIC5mYW5jeWJveC1jb250ZW50IHtcclxuICBjdXJzb3I6IGdyYWJcclxufVxyXG5cclxuLmZhbmN5Ym94LWlzLWdyYWJiaW5nIC5mYW5jeWJveC1jb250ZW50IHtcclxuICBjdXJzb3I6IGdyYWJiaW5nXHJcbn1cclxuXHJcbi5mYW5jeWJveC1jb250YWluZXIgW2RhdGEtc2VsZWN0YWJsZT10cnVlXSB7XHJcbiAgY3Vyc29yOiB0ZXh0XHJcbn1cclxuXHJcbi5mYW5jeWJveC1pbWFnZSwgLmZhbmN5Ym94LXNwYWNlYmFsbCB7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBsZWZ0OiAwO1xyXG4gIG1hcmdpbjogMDtcclxuICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gIG1heC13aWR0aDogbm9uZTtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICB3aWR0aDogMTAwJVxyXG59XHJcblxyXG4uZmFuY3lib3gtc3BhY2ViYWxsIHtcclxuICB6LWluZGV4OiAxXHJcbn1cclxuXHJcbi5mYW5jeWJveC1zbGlkZS0taWZyYW1lIC5mYW5jeWJveC1jb250ZW50LCAuZmFuY3lib3gtc2xpZGUtLW1hcCAuZmFuY3lib3gtY29udGVudCwgLmZhbmN5Ym94LXNsaWRlLS1wZGYgLmZhbmN5Ym94LWNvbnRlbnQsIC5mYW5jeWJveC1zbGlkZS0tdmlkZW8gLmZhbmN5Ym94LWNvbnRlbnQge1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHdpZHRoOiAxMDAlXHJcbn1cclxuXHJcbi5mYW5jeWJveC1zbGlkZS0tdmlkZW8gLmZhbmN5Ym94LWNvbnRlbnQge1xyXG4gIGJhY2tncm91bmQ6ICMwMDBcclxufVxyXG5cclxuLmZhbmN5Ym94LXNsaWRlLS1tYXAgLmZhbmN5Ym94LWNvbnRlbnQge1xyXG4gIGJhY2tncm91bmQ6ICNlNWUzZGZcclxufVxyXG5cclxuLmZhbmN5Ym94LXNsaWRlLS1pZnJhbWUgLmZhbmN5Ym94LWNvbnRlbnQge1xyXG4gIGJhY2tncm91bmQ6ICNmZmZcclxufVxyXG5cclxuLmZhbmN5Ym94LWlmcmFtZSwgLmZhbmN5Ym94LXZpZGVvIHtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IDA7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIG1hcmdpbjogMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgd2lkdGg6IDEwMCVcclxufVxyXG5cclxuLmZhbmN5Ym94LWlmcmFtZSB7XHJcbiAgbGVmdDogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwXHJcbn1cclxuXHJcbi5mYW5jeWJveC1lcnJvciB7XHJcbiAgYmFja2dyb3VuZDogI2ZmZjtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgbWF4LXdpZHRoOiA0MDBweDtcclxuICBwYWRkaW5nOiA0MHB4O1xyXG4gIHdpZHRoOiAxMDAlXHJcbn1cclxuXHJcbi5mYW5jeWJveC1lcnJvciBwIHtcclxuICBjb2xvcjogIzQ0NDtcclxuICBmb250LXNpemU6IDE2cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDBcclxufVxyXG5cclxuLmZhbmN5Ym94LWJ1dHRvbiB7XHJcbiAgYmFja2dyb3VuZDogcmdiYSgzMCwgMzAsIDMwLCAuNik7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgYm94LXNoYWRvdzogbm9uZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGhlaWdodDogNDRweDtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMTBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdHJhbnNpdGlvbjogY29sb3IgLjJzO1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgdmlzaWJpbGl0eTogaW5oZXJpdDtcclxuICB3aWR0aDogNDRweFxyXG59XHJcblxyXG4uZmFuY3lib3gtYnV0dG9uLCAuZmFuY3lib3gtYnV0dG9uOmxpbmssIC5mYW5jeWJveC1idXR0b246dmlzaXRlZCB7XHJcbiAgY29sb3I6ICNjY2NcclxufVxyXG5cclxuLmZhbmN5Ym94LWJ1dHRvbjpob3ZlciB7XHJcbiAgY29sb3I6ICNmZmZcclxufVxyXG5cclxuLmZhbmN5Ym94LWJ1dHRvbjpmb2N1cyB7XHJcbiAgb3V0bGluZTogbm9uZVxyXG59XHJcblxyXG4uZmFuY3lib3gtYnV0dG9uLmZhbmN5Ym94LWZvY3VzIHtcclxuICBvdXRsaW5lOiAxcHggZG90dGVkXHJcbn1cclxuXHJcbi5mYW5jeWJveC1idXR0b25bZGlzYWJsZWRdLCAuZmFuY3lib3gtYnV0dG9uW2Rpc2FibGVkXTpob3ZlciB7XHJcbiAgY29sb3I6ICM4ODg7XHJcbiAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gIG91dGxpbmU6IG5vbmVcclxufVxyXG5cclxuLmZhbmN5Ym94LWJ1dHRvbiBkaXYge1xyXG4gIGhlaWdodDogMTAwJVxyXG59XHJcblxyXG4uZmFuY3lib3gtYnV0dG9uIHN2ZyB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB3aWR0aDogMTAwJVxyXG59XHJcblxyXG4uZmFuY3lib3gtYnV0dG9uIHN2ZyBwYXRoIHtcclxuICBmaWxsOiBjdXJyZW50Q29sb3I7XHJcbiAgc3Ryb2tlLXdpZHRoOiAwXHJcbn1cclxuXHJcbi5mYW5jeWJveC1idXR0b24tLWZzZW50ZXIgc3ZnOm50aC1jaGlsZCgyKSwgLmZhbmN5Ym94LWJ1dHRvbi0tZnNleGl0IHN2ZzpmaXJzdC1jaGlsZCwgLmZhbmN5Ym94LWJ1dHRvbi0tcGF1c2Ugc3ZnOmZpcnN0LWNoaWxkLCAuZmFuY3lib3gtYnV0dG9uLS1wbGF5IHN2ZzpudGgtY2hpbGQoMikge1xyXG4gIGRpc3BsYXk6IG5vbmVcclxufVxyXG5cclxuLmZhbmN5Ym94LXByb2dyZXNzIHtcclxuICBiYWNrZ3JvdW5kOiAjZmY1MjY4O1xyXG4gIGhlaWdodDogMnB4O1xyXG4gIGxlZnQ6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxuICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcclxuICB0cmFuc2Zvcm0tb3JpZ2luOiAwO1xyXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcclxuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xyXG4gIHotaW5kZXg6IDk5OTk4XHJcbn1cclxuXHJcbi5mYW5jeWJveC1jbG9zZS1zbWFsbCB7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgY29sb3I6ICNjY2M7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIG9wYWNpdHk6IC44O1xyXG4gIHBhZGRpbmc6IDhweDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IC0xMnB4O1xyXG4gIHRvcDogLTQ0cHg7XHJcbiAgei1pbmRleDogNDAxXHJcbn1cclxuXHJcbi5mYW5jeWJveC1jbG9zZS1zbWFsbDpob3ZlciB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgb3BhY2l0eTogMVxyXG59XHJcblxyXG4uZmFuY3lib3gtc2xpZGUtLWh0bWwgLmZhbmN5Ym94LWNsb3NlLXNtYWxsIHtcclxuICBjb2xvcjogY3VycmVudENvbG9yO1xyXG4gIHBhZGRpbmc6IDEwcHg7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwXHJcbn1cclxuXHJcbi5mYW5jeWJveC1zbGlkZS0taW1hZ2UuZmFuY3lib3gtaXMtc2NhbGluZyAuZmFuY3lib3gtY29udGVudCB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlblxyXG59XHJcblxyXG4uZmFuY3lib3gtaXMtc2NhbGluZyAuZmFuY3lib3gtY2xvc2Utc21hbGwsIC5mYW5jeWJveC1pcy16b29tYWJsZS5mYW5jeWJveC1jYW4tcGFuIC5mYW5jeWJveC1jbG9zZS1zbWFsbCB7XHJcbiAgZGlzcGxheTogbm9uZVxyXG59XHJcblxyXG4uZmFuY3lib3gtbmF2aWdhdGlvbiAuZmFuY3lib3gtYnV0dG9uIHtcclxuICBiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xyXG4gIGhlaWdodDogMTAwcHg7XHJcbiAgb3BhY2l0eTogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiBjYWxjKDUwJSAtIDUwcHgpO1xyXG4gIHdpZHRoOiA3MHB4XHJcbn1cclxuXHJcbi5mYW5jeWJveC1uYXZpZ2F0aW9uIC5mYW5jeWJveC1idXR0b24gZGl2IHtcclxuICBwYWRkaW5nOiA3cHhcclxufVxyXG5cclxuLmZhbmN5Ym94LW5hdmlnYXRpb24gLmZhbmN5Ym94LWJ1dHRvbi0tYXJyb3dfbGVmdCB7XHJcbiAgbGVmdDogMDtcclxuICBsZWZ0OiBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xyXG4gIHBhZGRpbmc6IDMxcHggMjZweCAzMXB4IDZweFxyXG59XHJcblxyXG4uZmFuY3lib3gtbmF2aWdhdGlvbiAuZmFuY3lib3gtYnV0dG9uLS1hcnJvd19yaWdodCB7XHJcbiAgcGFkZGluZzogMzFweCA2cHggMzFweCAyNnB4O1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHJpZ2h0OiBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KVxyXG59XHJcblxyXG4uZmFuY3lib3gtY2FwdGlvbiB7XHJcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgLjg1KSAwLCByZ2JhKDAsIDAsIDAsIC4zKSA1MCUsIHJnYmEoMCwgMCwgMCwgLjE1KSA2NSUsIHJnYmEoMCwgMCwgMCwgLjA3NSkgNzUuNSUsIHJnYmEoMCwgMCwgMCwgLjAzNykgODIuODUlLCByZ2JhKDAsIDAsIDAsIC4wMTkpIDg4JSwgdHJhbnNwYXJlbnQpO1xyXG4gIGJvdHRvbTogMDtcclxuICBjb2xvcjogI2VlZTtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBsZWZ0OiAwO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgcGFkZGluZzogNzVweCA0NHB4IDI1cHg7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHotaW5kZXg6IDk5OTk2XHJcbn1cclxuXHJcbkBzdXBwb3J0cyAocGFkZGluZzptYXgoMHB4KSkge1xyXG4gIC5mYW5jeWJveC1jYXB0aW9uIHtcclxuICAgIHBhZGRpbmc6IDc1cHggbWF4KDQ0cHgsIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSBtYXgoMjVweCwgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKSBtYXgoNDRweCwgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSlcclxuICB9XHJcbn1cclxuXHJcbi5mYW5jeWJveC1jYXB0aW9uLS1zZXBhcmF0ZSB7XHJcbiAgbWFyZ2luLXRvcDogLTUwcHhcclxufVxyXG5cclxuLmZhbmN5Ym94LWNhcHRpb25fX2JvZHkge1xyXG4gIG1heC1oZWlnaHQ6IDUwdmg7XHJcbiAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgcG9pbnRlci1ldmVudHM6IGFsbFxyXG59XHJcblxyXG4uZmFuY3lib3gtY2FwdGlvbiBhLCAuZmFuY3lib3gtY2FwdGlvbiBhOmxpbmssIC5mYW5jeWJveC1jYXB0aW9uIGE6dmlzaXRlZCB7XHJcbiAgY29sb3I6ICNjY2M7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lXHJcbn1cclxuXHJcbi5mYW5jeWJveC1jYXB0aW9uIGE6aG92ZXIge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lXHJcbn1cclxuXHJcbi5mYW5jeWJveC1sb2FkaW5nIHtcclxuICBhbmltYXRpb246IGEgMXMgbGluZWFyIGluZmluaXRlO1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogNHB4IHNvbGlkICM4ODg7XHJcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjtcclxuICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgaGVpZ2h0OiA1MHB4O1xyXG4gIGxlZnQ6IDUwJTtcclxuICBtYXJnaW46IC0yNXB4IDAgMCAtMjVweDtcclxuICBvcGFjaXR5OiAuNztcclxuICBwYWRkaW5nOiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICB3aWR0aDogNTBweDtcclxuICB6LWluZGV4OiA5OTk5OVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGEge1xyXG4gIHRvIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDF0dXJuKVxyXG4gIH1cclxufVxyXG5cclxuLmZhbmN5Ym94LWFuaW1hdGVkIHtcclxuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDAsIC4yNSwgMSlcclxufVxyXG5cclxuLmZhbmN5Ym94LWZ4LXNsaWRlLmZhbmN5Ym94LXNsaWRlLS1wcmV2aW91cyB7XHJcbiAgb3BhY2l0eTogMDtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKVxyXG59XHJcblxyXG4uZmFuY3lib3gtZngtc2xpZGUuZmFuY3lib3gtc2xpZGUtLW5leHQge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKVxyXG59XHJcblxyXG4uZmFuY3lib3gtZngtc2xpZGUuZmFuY3lib3gtc2xpZGUtLWN1cnJlbnQge1xyXG4gIG9wYWNpdHk6IDE7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApXHJcbn1cclxuXHJcbi5mYW5jeWJveC1meC1mYWRlLmZhbmN5Ym94LXNsaWRlLS1uZXh0LCAuZmFuY3lib3gtZngtZmFkZS5mYW5jeWJveC1zbGlkZS0tcHJldmlvdXMge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTksIDEsIC4yMiwgMSlcclxufVxyXG5cclxuLmZhbmN5Ym94LWZ4LWZhZGUuZmFuY3lib3gtc2xpZGUtLWN1cnJlbnQge1xyXG4gIG9wYWNpdHk6IDFcclxufVxyXG5cclxuLmZhbmN5Ym94LWZ4LXpvb20taW4tb3V0LmZhbmN5Ym94LXNsaWRlLS1wcmV2aW91cyB7XHJcbiAgb3BhY2l0eTogMDtcclxuICB0cmFuc2Zvcm06IHNjYWxlM2QoMS41LCAxLjUsIDEuNSlcclxufVxyXG5cclxuLmZhbmN5Ym94LWZ4LXpvb20taW4tb3V0LmZhbmN5Ym94LXNsaWRlLS1uZXh0IHtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHRyYW5zZm9ybTogc2NhbGUzZCguNSwgLjUsIC41KVxyXG59XHJcblxyXG4uZmFuY3lib3gtZngtem9vbS1pbi1vdXQuZmFuY3lib3gtc2xpZGUtLWN1cnJlbnQge1xyXG4gIG9wYWNpdHk6IDE7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMSlcclxufVxyXG5cclxuLmZhbmN5Ym94LWZ4LXJvdGF0ZS5mYW5jeWJveC1zbGlkZS0tcHJldmlvdXMge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKVxyXG59XHJcblxyXG4uZmFuY3lib3gtZngtcm90YXRlLmZhbmN5Ym94LXNsaWRlLS1uZXh0IHtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDF0dXJuKVxyXG59XHJcblxyXG4uZmFuY3lib3gtZngtcm90YXRlLmZhbmN5Ym94LXNsaWRlLS1jdXJyZW50IHtcclxuICBvcGFjaXR5OiAxO1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpXHJcbn1cclxuXHJcbi5mYW5jeWJveC1meC1jaXJjdWxhci5mYW5jeWJveC1zbGlkZS0tcHJldmlvdXMge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZTNkKDAsIDAsIDApIHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKVxyXG59XHJcblxyXG4uZmFuY3lib3gtZngtY2lyY3VsYXIuZmFuY3lib3gtc2xpZGUtLW5leHQge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZTNkKDAsIDAsIDApIHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApXHJcbn1cclxuXHJcbi5mYW5jeWJveC1meC1jaXJjdWxhci5mYW5jeWJveC1zbGlkZS0tY3VycmVudCB7XHJcbiAgb3BhY2l0eTogMTtcclxuICB0cmFuc2Zvcm06IHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApXHJcbn1cclxuXHJcbi5mYW5jeWJveC1meC10dWJlLmZhbmN5Ym94LXNsaWRlLS1wcmV2aW91cyB7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgc2NhbGUoLjEpIHNrZXcoLTEwZGVnKVxyXG59XHJcblxyXG4uZmFuY3lib3gtZngtdHViZS5mYW5jeWJveC1zbGlkZS0tbmV4dCB7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBzY2FsZSguMSkgc2tldygxMGRlZylcclxufVxyXG5cclxuLmZhbmN5Ym94LWZ4LXR1YmUuZmFuY3lib3gtc2xpZGUtLWN1cnJlbnQge1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSBzY2FsZSgxKVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC1oZWlnaHQ6IDU3NnB4KSB7XHJcbiAgLmZhbmN5Ym94LXNsaWRlIHtcclxuICAgIHBhZGRpbmctbGVmdDogNnB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogNnB4XHJcbiAgfVxyXG5cclxuICAuZmFuY3lib3gtc2xpZGUtLWltYWdlIHtcclxuICAgIHBhZGRpbmc6IDZweCAwXHJcbiAgfVxyXG5cclxuICAuZmFuY3lib3gtY2xvc2Utc21hbGwge1xyXG4gICAgcmlnaHQ6IC02cHhcclxuICB9XHJcblxyXG4gIC5mYW5jeWJveC1zbGlkZS0taW1hZ2UgLmZhbmN5Ym94LWNsb3NlLXNtYWxsIHtcclxuICAgIGJhY2tncm91bmQ6ICM0ZTRlNGU7XHJcbiAgICBjb2xvcjogI2YyZjRmNjtcclxuICAgIGhlaWdodDogMzZweDtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBwYWRkaW5nOiA2cHg7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiAzNnB4XHJcbiAgfVxyXG5cclxuICAuZmFuY3lib3gtY2FwdGlvbiB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4XHJcbiAgfVxyXG5cclxuICBAc3VwcG9ydHMgKHBhZGRpbmc6bWF4KDBweCkpIHtcclxuICAgIC5mYW5jeWJveC1jYXB0aW9uIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiBtYXgoMTJweCwgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IG1heCgxMnB4LCBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSlcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zaGFyZSB7XHJcbiAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgbWF4LXdpZHRoOiA5MCU7XHJcbiAgcGFkZGluZzogMzBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXJcclxufVxyXG5cclxuLmZhbmN5Ym94LXNoYXJlIGgxIHtcclxuICBjb2xvcjogIzIyMjtcclxuICBmb250LXNpemU6IDM1cHg7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBtYXJnaW46IDAgMCAyMHB4XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zaGFyZSBwIHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMFxyXG59XHJcblxyXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbiB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbiAgbWFyZ2luOiAwIDVweCAxMHB4O1xyXG4gIG1pbi13aWR0aDogMTMwcHg7XHJcbiAgcGFkZGluZzogMCAxNXB4O1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xyXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcFxyXG59XHJcblxyXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbjpsaW5rLCAuZmFuY3lib3gtc2hhcmVfX2J1dHRvbjp2aXNpdGVkIHtcclxuICBjb2xvcjogI2ZmZlxyXG59XHJcblxyXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbjpob3ZlciB7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lXHJcbn1cclxuXHJcbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uLS1mYiB7XHJcbiAgYmFja2dyb3VuZDogIzNiNTk5OFxyXG59XHJcblxyXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbi0tZmI6aG92ZXIge1xyXG4gIGJhY2tncm91bmQ6ICMzNDRlODZcclxufVxyXG5cclxuLmZhbmN5Ym94LXNoYXJlX19idXR0b24tLXB0IHtcclxuICBiYWNrZ3JvdW5kOiAjYmQwODFkXHJcbn1cclxuXHJcbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uLS1wdDpob3ZlciB7XHJcbiAgYmFja2dyb3VuZDogI2FhMDcxOVxyXG59XHJcblxyXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbi0tdHcge1xyXG4gIGJhY2tncm91bmQ6ICMxZGExZjJcclxufVxyXG5cclxuLmZhbmN5Ym94LXNoYXJlX19idXR0b24tLXR3OmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kOiAjMGQ5NWU4XHJcbn1cclxuXHJcbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uIHN2ZyB7XHJcbiAgaGVpZ2h0OiAyNXB4O1xyXG4gIG1hcmdpbi1yaWdodDogN3B4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0b3A6IC0xcHg7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICB3aWR0aDogMjVweFxyXG59XHJcblxyXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbiBzdmcgcGF0aCB7XHJcbiAgZmlsbDogI2ZmZlxyXG59XHJcblxyXG4uZmFuY3lib3gtc2hhcmVfX2lucHV0IHtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IDA7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkN2Q3ZDc7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxuICBjb2xvcjogIzVkNWI1YjtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgbWFyZ2luOiAxMHB4IDAgMDtcclxuICBvdXRsaW5lOiBub25lO1xyXG4gIHBhZGRpbmc6IDEwcHggMTVweDtcclxuICB3aWR0aDogMTAwJVxyXG59XHJcblxyXG4uZmFuY3lib3gtdGh1bWJzIHtcclxuICBiYWNrZ3JvdW5kOiAjZGRkO1xyXG4gIGJvdHRvbTogMDtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIG1hcmdpbjogMDtcclxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XHJcbiAgcGFkZGluZzogMnB4IDJweCA0cHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcclxuICB0b3A6IDA7XHJcbiAgd2lkdGg6IDIxMnB4O1xyXG4gIHotaW5kZXg6IDk5OTk1XHJcbn1cclxuXHJcbi5mYW5jeWJveC10aHVtYnMteCB7XHJcbiAgb3ZlcmZsb3cteDogYXV0bztcclxuICBvdmVyZmxvdy15OiBoaWRkZW5cclxufVxyXG5cclxuLmZhbmN5Ym94LXNob3ctdGh1bWJzIC5mYW5jeWJveC10aHVtYnMge1xyXG4gIGRpc3BsYXk6IGJsb2NrXHJcbn1cclxuXHJcbi5mYW5jeWJveC1zaG93LXRodW1icyAuZmFuY3lib3gtaW5uZXIge1xyXG4gIHJpZ2h0OiAyMTJweFxyXG59XHJcblxyXG4uZmFuY3lib3gtdGh1bWJzX19saXN0IHtcclxuICBmb250LXNpemU6IDA7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIHdpZHRoOiAxMDAlXHJcbn1cclxuXHJcbi5mYW5jeWJveC10aHVtYnMteCAuZmFuY3lib3gtdGh1bWJzX19saXN0IHtcclxuICBvdmVyZmxvdzogaGlkZGVuXHJcbn1cclxuXHJcbi5mYW5jeWJveC10aHVtYnMteSAuZmFuY3lib3gtdGh1bWJzX19saXN0Ojotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgd2lkdGg6IDdweFxyXG59XHJcblxyXG4uZmFuY3lib3gtdGh1bWJzLXkgLmZhbmN5Ym94LXRodW1ic19fbGlzdDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG4gIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgNnB4IHJnYmEoMCwgMCwgMCwgLjMpXHJcbn1cclxuXHJcbi5mYW5jeWJveC10aHVtYnMteSAuZmFuY3lib3gtdGh1bWJzX19saXN0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgYmFja2dyb3VuZDogIzJhMmEyYTtcclxuICBib3JkZXItcmFkaXVzOiAxMHB4XHJcbn1cclxuXHJcbi5mYW5jeWJveC10aHVtYnNfX2xpc3QgYSB7XHJcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjEpO1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIGhlaWdodDogNzVweDtcclxuICBtYXJnaW46IDJweDtcclxuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSA4cHgpO1xyXG4gIG1heC13aWR0aDogY2FsYyg1MCUgLSA0cHgpO1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIHdpZHRoOiAxMDBweFxyXG59XHJcblxyXG4uZmFuY3lib3gtdGh1bWJzX19saXN0IGE6YmVmb3JlIHtcclxuICBib3JkZXI6IDZweCBzb2xpZCAjZmY1MjY4O1xyXG4gIGJvdHRvbTogMDtcclxuICBjb250ZW50OiBcIlwiO1xyXG4gIGxlZnQ6IDA7XHJcbiAgb3BhY2l0eTogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHRyYW5zaXRpb246IGFsbCAuMnMgY3ViaWMtYmV6aWVyKC4yNSwgLjQ2LCAuNDUsIC45NCk7XHJcbiAgei1pbmRleDogOTk5OTFcclxufVxyXG5cclxuLmZhbmN5Ym94LXRodW1ic19fbGlzdCBhOmZvY3VzOmJlZm9yZSB7XHJcbiAgb3BhY2l0eTogLjVcclxufVxyXG5cclxuLmZhbmN5Ym94LXRodW1ic19fbGlzdCBhLmZhbmN5Ym94LXRodW1icy1hY3RpdmU6YmVmb3JlIHtcclxuICBvcGFjaXR5OiAxXHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gIC5mYW5jeWJveC10aHVtYnMge1xyXG4gICAgd2lkdGg6IDExMHB4XHJcbiAgfVxyXG5cclxuICAuZmFuY3lib3gtc2hvdy10aHVtYnMgLmZhbmN5Ym94LWlubmVyIHtcclxuICAgIHJpZ2h0OiAxMTBweFxyXG4gIH1cclxuXHJcbiAgLmZhbmN5Ym94LXRodW1ic19fbGlzdCBhIHtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTBweClcclxuICB9XHJcbn1cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgSUNPTiBGT05UUyAqL1xyXG5cclxuQGNsYXNzaWMtYWNjb3VudC1wcm9qZWN0czogXCJcXEUwMDFcIjtcclxuQGNsYXNzaWMtYWN0aW9uLWxheW91dHM6IFwiXFxFMDAyXCI7XHJcbkBjbGFzc2ljLWFjdGl2aXR5LWxpc3Q6IFwiXFxFMDAzXCI7XHJcbkBjbGFzc2ljLWFjdGl2aXR5OiBcIlxcRTAwNFwiO1xyXG5AY2xhc3NpYy1hZGQtcGF5bWVudDogXCJcXEUwMDVcIjtcclxuQGNsYXNzaWMtYWRkaXRpb25hbHM6IFwiXFxFMDA2XCI7XHJcbkBjbGFzc2ljLWFkbWluaXN0cmF0aW9uOiBcIlxcRTAwN1wiO1xyXG5AY2xhc3NpYy1hZ2lsZTogXCJcXEUwMDhcIjtcclxuQGNsYXNzaWMtYXJjaGl2ZS0yOiBcIlxcRTAwOVwiO1xyXG5AY2xhc3NpYy1hcmNoaXZlOiBcIlxcRTAwQVwiO1xyXG5AY2xhc3NpYy1hcnJvdy1ib3R0b206IFwiXFxFMDBCXCI7XHJcbkBjbGFzc2ljLWFycm93LWRvdWJsZS1kb3duOiBcIlxcRTAwQ1wiO1xyXG5AY2xhc3NpYy1hcnJvdy1kb3VibGUtdXA6IFwiXFxFMDBEXCI7XHJcbkBjbGFzc2ljLWFycm93LWRvd246IFwiXFxFMDBFXCI7XHJcbkBjbGFzc2ljLWFycm93LWxlZnQ6IFwiXFxFMDBGXCI7XHJcbkBjbGFzc2ljLWFycm93LXJpZ2h0OiBcIlxcRTAxMFwiO1xyXG5AY2xhc3NpYy1hcnJvdy10b3A6IFwiXFxFMDExXCI7XHJcbkBjbGFzc2ljLWFycm93LXdpZGUtcmlnaHQ6IFwiXFxFMDEyXCI7XHJcbkBjbGFzc2ljLWF0b206IFwiXFxFMDEzXCI7XHJcbkBjbGFzc2ljLWF0dGFjaG1lbnQ6IFwiXFxFMDE0XCI7XHJcbkBjbGFzc2ljLWJhY2s6IFwiXFxFMDE1XCI7XHJcbkBjbGFzc2ljLWJhY2tsb2c6IFwiXFxFMDE2XCI7XHJcbkBjbGFzc2ljLWJhc2tldDogXCJcXEUwMTdcIjtcclxuQGNsYXNzaWMtYmF0dGVyeTogXCJcXEUwMThcIjtcclxuQGNsYXNzaWMtYm9hcmRzOiBcIlxcRTAxOVwiO1xyXG5AY2xhc3NpYy1ib29rbWFyazogXCJcXEUwMUFcIjtcclxuQGNsYXNzaWMtY2FsZW5kYXI6IFwiXFxFMDFCXCI7XHJcbkBjbGFzc2ljLWNhcnQ6IFwiXFxFMDFDXCI7XHJcbkBjbGFzc2ljLWNoYW5nZS11c2VyOiBcIlxcRTAxRFwiO1xyXG5AY2xhc3NpYy1jaGVja2VkOiBcIlxcRTAxRVwiO1xyXG5AY2xhc3NpYy1jbGlwOiBcIlxcRTAxRlwiO1xyXG5AY2xhc3NpYy1jbG9zZS1uZXctc21hbGw6IFwiXFxFMDIwXCI7XHJcbkBjbGFzc2ljLWNsb3NlLW5ldzogXCJcXEUwMjFcIjtcclxuQGNsYXNzaWMtY2xvc2Utc2VhcmNoOiBcIlxcRTAyMlwiO1xyXG5AY2xhc3NpYy1jb21tZW50OiBcIlxcRTAyM1wiO1xyXG5AY2xhc3NpYy1jb21tZW50czogXCJcXEUwMjRcIjtcclxuQGNsYXNzaWMtY29tcGFueTogXCJcXEUwMjVcIjtcclxuQGNsYXNzaWMtY29udGFjdHM6IFwiXFxFMDI2XCI7XHJcbkBjbGFzc2ljLWNvcHk6IFwiXFxFMDI3XCI7XHJcbkBjbGFzc2ljLWNwbHVzOiBcIlxcRTAyOFwiO1xyXG5AY2xhc3NpYy1jcm06IFwiXFxFMDI5XCI7XHJcbkBjbGFzc2ljLWNzaGFycDogXCJcXEUwMkFcIjtcclxuQGNsYXNzaWMtY3NzOiBcIlxcRTAyQlwiO1xyXG5AY2xhc3NpYy1jc3Y6IFwiXFxFMDJDXCI7XHJcbkBjbGFzc2ljLWN1c3RvbS1maWVsZHM6IFwiXFxFMDJEXCI7XHJcbkBjbGFzc2ljLWRhdjogXCJcXEUwMkVcIjtcclxuQGNsYXNzaWMtZGVhbHM6IFwiXFxFMDJGXCI7XHJcbkBjbGFzc2ljLWRlbDogXCJcXEUwMzBcIjtcclxuQGNsYXNzaWMtZGVzY3JpcHRpb246IFwiXFxFMDMxXCI7XHJcbkBjbGFzc2ljLWRpYW1vbmQ6IFwiXFxFMDMyXCI7XHJcbkBjbGFzc2ljLWRpZmY6IFwiXFxFMDMzXCI7XHJcbkBjbGFzc2ljLWRtc2Y6IFwiXFxFMDM0XCI7XHJcbkBjbGFzc2ljLWRvY3VtZW50OiBcIlxcRTAzNVwiO1xyXG5AY2xhc3NpYy1kb2N1bWVudHM6IFwiXFxFMDM2XCI7XHJcbkBjbGFzc2ljLWRvY3gtMjogXCJcXEUwMzdcIjtcclxuQGNsYXNzaWMtZG9jeC1maWxlOiBcIlxcRTAzOFwiO1xyXG5AY2xhc3NpYy1kb2N4OiBcIlxcRTAzOVwiO1xyXG5AY2xhc3NpYy1kb2xsYXI6IFwiXFxFMDNBXCI7XHJcbkBjbGFzc2ljLWRvd24tMTogXCJcXEUwM0JcIjtcclxuQGNsYXNzaWMtZG93bi0yOiBcIlxcRTAzQ1wiO1xyXG5AY2xhc3NpYy1kb3dubG9hZDogXCJcXEUwM0RcIjtcclxuQGNsYXNzaWMtZHJpdmU6IFwiXFxFMDNFXCI7XHJcbkBjbGFzc2ljLWVkaXQ6IFwiXFxFMDNGXCI7XHJcbkBjbGFzc2ljLWVtYWlsOiBcIlxcRTA0MFwiO1xyXG5AY2xhc3NpYy1lbnVtZXJhdGlvbnM6IFwiXFxFMDQxXCI7XHJcbkBjbGFzc2ljLUVSUDogXCJcXEUwNDJcIjtcclxuQGNsYXNzaWMtRVZNOiBcIlxcRTA0M1wiO1xyXG5AY2xhc3NpYy1leHBlbnNlczogXCJcXEUwNDRcIjtcclxuQGNsYXNzaWMtZXh0ZXJuYWw6IFwiXFxFMDQ1XCI7XHJcbkBjbGFzc2ljLWV4dHJhLW1lbnU6IFwiXFxFMDQ2XCI7XHJcbkBjbGFzc2ljLWZhdi1vZmY6IFwiXFxFMDQ3XCI7XHJcbkBjbGFzc2ljLWZhdjogXCJcXEUwNDhcIjtcclxuQGNsYXNzaWMtZmF2b3JpdDogXCJcXEUwNDlcIjtcclxuQGNsYXNzaWMtZmlsZXM6IFwiXFxFMDRBXCI7XHJcbkBjbGFzc2ljLWZpbHRlcjogXCJcXEUwNEJcIjtcclxuQGNsYXNzaWMtZmluYW5jZTogXCJcXEUwNENcIjtcclxuQGNsYXNzaWMtZm9sZGVyOiBcIlxcRTA0RFwiO1xyXG5AY2xhc3NpYy1mdWxsc2NyZWVuOiBcIlxcRTA0RVwiO1xyXG5AY2xhc3NpYy1nYW50dDogXCJcXEUwNEZcIjtcclxuQGNsYXNzaWMtZ2lmOiBcIlxcRTA1MFwiO1xyXG5AY2xhc3NpYy1naXQtbmV3OiBcIlxcRTA1MVwiO1xyXG5AY2xhc3NpYy1naXQ6IFwiXFxFMDUyXCI7XHJcbkBjbGFzc2ljLWdyb3VwOiBcIlxcRTA1M1wiO1xyXG5AY2xhc3NpYy1oZWFydDogXCJcXEUwNTRcIjtcclxuQGNsYXNzaWMtaGVscDogXCJcXEUwNTVcIjtcclxuQGNsYXNzaWMtaGlzdG9yeTogXCJcXEUwNTZcIjtcclxuQGNsYXNzaWMtaG9tZTogXCJcXEUwNTdcIjtcclxuQGNsYXNzaWMtaG91cmdsYXNzOiBcIlxcRTA1OFwiO1xyXG5AY2xhc3NpYy1odG1sOiBcIlxcRTA1OVwiO1xyXG5AY2xhc3NpYy1pbXBvcnQ6IFwiXFxFMDVBXCI7XHJcbkBjbGFzc2ljLWludmVudG9yeTogXCJcXEUwNUJcIjtcclxuQGNsYXNzaWMtaW52b2ljZXM6IFwiXFxFMDVDXCI7XHJcbkBjbGFzc2ljLWlzc3VlczogXCJcXEUwNURcIjtcclxuQGNsYXNzaWMtamF2YTogXCJcXEUwNUVcIjtcclxuQGNsYXNzaWMtanBnOiBcIlxcRTA1RlwiO1xyXG5AY2xhc3NpYy1qczogXCJcXEUwNjBcIjtcclxuQGNsYXNzaWMta2FuYmFuOiBcIlxcRTA2MVwiO1xyXG5AY2xhc3NpYy1rZXk6IFwiXFxFMDYyXCI7XHJcbkBjbGFzc2ljLWtleTI6IFwiXFxFMDYzXCI7XHJcbkBjbGFzc2ljLWtub3dsZWRnZWJhc2U6IFwiXFxFMDY0XCI7XHJcbkBjbGFzc2ljLWxkYXAtYXV0aGVudGljYXRpb246IFwiXFxFMDY1XCI7XHJcbkBjbGFzc2ljLWxpa2U6IFwiXFxFMDY2XCI7XHJcbkBjbGFzc2ljLWxpbmstYnJlYWs6IFwiXFxFMDY3XCI7XHJcbkBjbGFzc2ljLWxvY2s6IFwiXFxFMDY4XCI7XHJcbkBjbGFzc2ljLWxvZ2luOiBcIlxcRTA2OVwiO1xyXG5AY2xhc3NpYy1sb2dvdXQ6IFwiXFxFMDZBXCI7XHJcbkBjbGFzc2ljLWxvZ3M6IFwiXFxFMDZCXCI7XHJcbkBjbGFzc2ljLW1haWxjaGltcDogXCJcXEUwNkNcIjtcclxuQGNsYXNzaWMtbWVldGluZzogXCJcXEUwNkRcIjtcclxuQGNsYXNzaWMtbWVudXM6IFwiXFxFMDZFXCI7XHJcbkBjbGFzc2ljLW1lcmdlOiBcIlxcRTA2RlwiO1xyXG5AY2xhc3NpYy1tb25leTogXCJcXEUwNzBcIjtcclxuQGNsYXNzaWMtbW9uaXRvcmluZy1jb250cm9sbGluZzogXCJcXEUwNzFcIjtcclxuQGNsYXNzaWMtbW92ZTogXCJcXEUwNzJcIjtcclxuQGNsYXNzaWMtbXktYWNjb3VudDogXCJcXEUwNzNcIjtcclxuQGNsYXNzaWMtbXktcGFnZTogXCJcXEUwNzRcIjtcclxuQGNsYXNzaWMtbmV3LW9iamVjdDogXCJcXEUwNzVcIjtcclxuQGNsYXNzaWMtbmV3czogXCJcXEUwNzZcIjtcclxuQGNsYXNzaWMtbmV4dDogXCJcXEUwNzdcIjtcclxuQGNsYXNzaWMtbm8taW52b2ljZXM6IFwiXFxFMDc4XCI7XHJcbkBjbGFzc2ljLW5vcm1hbC1pc3N1ZXM6IFwiXFxFMDc5XCI7XHJcbkBjbGFzc2ljLW5vdGU6IFwiXFxFMDdBXCI7XHJcbkBjbGFzc2ljLW5vdGlmaWNhdGlvbnM6IFwiXFxFMDdCXCI7XHJcbkBjbGFzc2ljLW9kdDogXCJcXEUwN0NcIjtcclxuQGNsYXNzaWMtb3Blbi1mb2xkZXI6IFwiXFxFMDdEXCI7XHJcbkBjbGFzc2ljLW9wZW4tc2VhcmNoOiBcIlxcRTA3RVwiO1xyXG5AY2xhc3NpYy1vcGVuLXNpZGViYXItaG9yOiBcIlxcRTA3RlwiO1xyXG5AY2xhc3NpYy1vcGVuLXNpZGViYXI6IFwiXFxFMDgwXCI7XHJcbkBjbGFzc2ljLW9yZGVyczogXCJcXEUwODFcIjtcclxuQGNsYXNzaWMtb3ZlcnZpZXc6IFwiXFxFMDgyXCI7XHJcbkBjbGFzc2ljLXBhZ2VzOiBcIlxcRTA4M1wiO1xyXG5AY2xhc3NpYy1wYXNzd2Q6IFwiXFxFMDg0XCI7XHJcbkBjbGFzc2ljLXBhdXNlOiBcIlxcRTA4NVwiO1xyXG5AY2xhc3NpYy1wZGY6IFwiXFxFMDg2XCI7XHJcbkBjbGFzc2ljLXBlb3BsZTogXCJcXEUwODdcIjtcclxuQGNsYXNzaWMtcGVyaW9kaWMtdGFza3M6IFwiXFxFMDg4XCI7XHJcbkBjbGFzc2ljLXBob25lOiBcIlxcRTA4OVwiO1xyXG5AY2xhc3NpYy1waG90bzogXCJcXEUwOEFcIjtcclxuQGNsYXNzaWMtcGhwOiBcIlxcRTA4QlwiO1xyXG5AY2xhc3NpYy1wbGFubmluZzogXCJcXEUwOENcIjtcclxuQGNsYXNzaWMtcGxheTogXCJcXEUwOERcIjtcclxuQGNsYXNzaWMtcGx1Z2luczogXCJcXEUwOEVcIjtcclxuQGNsYXNzaWMtcG5nLTI6IFwiXFxFMDhGXCI7XHJcbkBjbGFzc2ljLXBuZzogXCJcXEUwOTBcIjtcclxuQGNsYXNzaWMtcHJldjogXCJcXEUwOTFcIjtcclxuQGNsYXNzaWMtcHJldmlldy1zYWxhcnk6IFwiXFxFMDkyXCI7XHJcbkBjbGFzc2ljLXByaW50OiBcIlxcRTA5M1wiO1xyXG5AY2xhc3NpYy1wcm9kdWN0czogXCJcXEUwOTRcIjtcclxuQGNsYXNzaWMtcHJvamVjdHM6IFwiXFxFMDk1XCI7XHJcbkBjbGFzc2ljLXF1ZXN0aW9uczogXCJcXEUwOTZcIjtcclxuQGNsYXNzaWMtcXVpY2stc2VhcmNoOiBcIlxcRTA5N1wiO1xyXG5AY2xhc3NpYy1yZWdpc3RlcjogXCJcXEUwOThcIjtcclxuQGNsYXNzaWMtcmVsb2FkLTI6IFwiXFxFMDk5XCI7XHJcbkBjbGFzc2ljLXJlbG9hZDogXCJcXEUwOUFcIjtcclxuQGNsYXNzaWMtcmVtaW5kZXI6IFwiXFxFMDlCXCI7XHJcbkBjbGFzc2ljLXJlcG9ydDogXCJcXEUwOUNcIjtcclxuQGNsYXNzaWMtcmVwb3J0czogXCJcXEUwOURcIjtcclxuQGNsYXNzaWMtcmVwb3NpdG9yeTogXCJcXEUwOUVcIjtcclxuQGNsYXNzaWMtcmVzb3VyY2VzOiBcIlxcRTA5RlwiO1xyXG5AY2xhc3NpYy1yaXNrczogXCJcXEUwQTBcIjtcclxuQGNsYXNzaWMtcm9hZG1hcDogXCJcXEUwQTFcIjtcclxuQGNsYXNzaWMtcm9sZXM6IFwiXFxFMEEyXCI7XHJcbkBjbGFzc2ljLXJvc2V0dGU6IFwiXFxFMEEzXCI7XHJcbkBjbGFzc2ljLXJ1Ynk6IFwiXFxFMEE0XCI7XHJcbkBjbGFzc2ljLXNhdmUtbmV3OiBcIlxcRTBBNVwiO1xyXG5AY2xhc3NpYy1zYXZlOiBcIlxcRTBBNlwiO1xyXG5AY2xhc3NpYy1zY3JvbGw6IFwiXFxFMEE3XCI7XHJcbkBjbGFzc2ljLXNjcnVtOiBcIlxcRTBBOFwiO1xyXG5AY2xhc3NpYy1zZWFyY2gtZG93bi1hcnJvdzogXCJcXEUwQTlcIjtcclxuQGNsYXNzaWMtc2VhcmNoOiBcIlxcRTBBQVwiO1xyXG5AY2xhc3NpYy1zZXR0aW5nczogXCJcXEUwQUJcIjtcclxuQGNsYXNzaWMtc21hbGwtaXNzdWVzOiBcIlxcRTBBQ1wiO1xyXG5AY2xhc3NpYy1zbmlwcGV0czogXCJcXEUwQURcIjtcclxuQGNsYXNzaWMtc29ydC1oYW5kbGU6IFwiXFxFMEFFXCI7XHJcbkBjbGFzc2ljLXNwcmludC1ib2FyZDogXCJcXEUwQUZcIjtcclxuQGNsYXNzaWMtc3ByaW50LWJ1cm5kb3duOiBcIlxcRTBCMFwiO1xyXG5AY2xhc3NpYy1zdGF0aXN0aWNzOiBcIlxcRTBCMVwiO1xyXG5AY2xhc3NpYy1zdGF0czogXCJcXEUwQjJcIjtcclxuQGNsYXNzaWMtc3RvcDogXCJcXEUwQjNcIjtcclxuQGNsYXNzaWMtc3VtbWFyeTogXCJcXEUwQjRcIjtcclxuQGNsYXNzaWMtc3VydmV5OiBcIlxcRTBCNVwiO1xyXG5AY2xhc3NpYy10YWdzOiBcIlxcRTBCNlwiO1xyXG5AY2xhc3NpYy10ZW1wbGF0ZXM6IFwiXFxFMEI3XCI7XHJcbkBjbGFzc2ljLXRleHQ6IFwiXFxFMEI4XCI7XHJcbkBjbGFzc2ljLXRpY2tldHM6IFwiXFxFMEI5XCI7XHJcbkBjbGFzc2ljLXRpbWUtZW50cmllczogXCJcXEUwQkFcIjtcclxuQGNsYXNzaWMtdGltZXI6IFwiXFxFMEJCXCI7XHJcbkBjbGFzc2ljLXR4dDogXCJcXEUwQkNcIjtcclxuQGNsYXNzaWMtdW4tbGlrZTogXCJcXEUwQkRcIjtcclxuQGNsYXNzaWMtdW5sb2NrOiBcIlxcRTBCRVwiO1xyXG5AY2xhc3NpYy11cC0xOiBcIlxcRTBCRlwiO1xyXG5AY2xhc3NpYy11cC0yOiBcIlxcRTBDMFwiO1xyXG5AY2xhc3NpYy11cGxvYWQ6IFwiXFxFMEMxXCI7XHJcbkBjbGFzc2ljLXVzZXI6IFwiXFxFMEMyXCI7XHJcbkBjbGFzc2ljLXZhcmlhYmxlczogXCJcXEUwQzNcIjtcclxuQGNsYXNzaWMtdmNmOiBcIlxcRTBDNFwiO1xyXG5AY2xhc3NpYy12b3RlczogXCJcXEUwQzVcIjtcclxuQGNsYXNzaWMtd2FybmluZzogXCJcXEUwQzZcIjtcclxuQGNsYXNzaWMtd2JzOiBcIlxcRTBDN1wiO1xyXG5AY2xhc3NpYy13aWtpOiBcIlxcRTBDOFwiO1xyXG5AY2xhc3NpYy13b3JrZmxvdzogXCJcXEUwQzlcIjtcclxuQGNsYXNzaWMtd3JlY2s6IFwiXFxFMENBXCI7XHJcbkBjbGFzc2ljLXhsczogXCJcXEUwQ0JcIjtcclxuQGNsYXNzaWMteG1sOiBcIlxcRTBDQ1wiO1xyXG5AY2xhc3NpYy15b3V0dWJlOiBcIlxcRTBDRFwiO1xyXG5AY2xhc3NpYy16aXA6IFwiXFxFMENFXCI7XHJcbkBjbGFzc2ljLXpvb20taW46IFwiXFxFMENGXCI7XHJcbkBjbGFzc2ljLXpvb20tb3V0OiBcIlxcRTBEMFwiO1xyXG5AaWNvbi10aGluLWFjY291bnQtcHJvamVjdHM6IFwiXFxFMEQxXCI7XHJcbkBpY29uLXRoaW4tYWN0aW9uLWxheW91dHM6IFwiXFxFMEQyXCI7XHJcbkBpY29uLXRoaW4tYWN0aXZpdHktbGlzdDogXCJcXEUwRDNcIjtcclxuQGljb24tdGhpbi1hY3Rpdml0eTogXCJcXEUwRDRcIjtcclxuQGljb24tdGhpbi1hZGQtcGF5bWVudDogXCJcXEUwRDVcIjtcclxuQGljb24tdGhpbi1hZGRpdGlvbmFsczogXCJcXEUwRDZcIjtcclxuQGljb24tdGhpbi1hZG1pbmlzdHJhdGlvbjogXCJcXEUwRDdcIjtcclxuQGljb24tdGhpbi1hZ2lsZTogXCJcXEUwRDhcIjtcclxuQGljb24tdGhpbi1hcmNoaXZlOiBcIlxcRTBEOVwiO1xyXG5AaWNvbi10aGluLWFycm93LWJvdHRvbTogXCJcXEUwREFcIjtcclxuQGljb24tdGhpbi1hcnJvdy1kb3VibGUtZG93bjogXCJcXEUwREJcIjtcclxuQGljb24tdGhpbi1hcnJvdy1kb3VibGUtdXA6IFwiXFxFMERDXCI7XHJcbkBpY29uLXRoaW4tYXJyb3ctZG93bjogXCJcXEUwRERcIjtcclxuQGljb24tdGhpbi1hcnJvdy1sZWZ0OiBcIlxcRTBERVwiO1xyXG5AaWNvbi10aGluLWFycm93LXJpZ2h0OiBcIlxcRTBERlwiO1xyXG5AaWNvbi10aGluLWFycm93LXRvcDogXCJcXEUwRTBcIjtcclxuQGljb24tdGhpbi1hcnJvdy13aWRlLXJpZ2h0OiBcIlxcRTBFMVwiO1xyXG5AaWNvbi10aGluLWF0b206IFwiXFxFMEUyXCI7XHJcbkBpY29uLXRoaW4tYXR0YWNobWVudDogXCJcXEUwRTNcIjtcclxuQGljb24tdGhpbi1hdmF0YXI6IFwiXFxFMEU0XCI7XHJcbkBpY29uLXRoaW4tYmFjazogXCJcXEUwRTVcIjtcclxuQGljb24tdGhpbi1iYWNrbG9nLTE6IFwiXFxFMEU2XCI7XHJcbkBpY29uLXRoaW4tYmFja2xvZzogXCJcXEUwRTdcIjtcclxuQGljb24tdGhpbi1iYXNrZXQ6IFwiXFxFMEU4XCI7XHJcbkBpY29uLXRoaW4tYmF0dGVyeTogXCJcXEUwRTlcIjtcclxuQGljb24tdGhpbi1ib2FyZHM6IFwiXFxFMEVBXCI7XHJcbkBpY29uLXRoaW4tYm9va21hcmstMTogXCJcXEUwRUJcIjtcclxuQGljb24tdGhpbi1ib29rbWFyazogXCJcXEUwRUNcIjtcclxuQGljb24tdGhpbi1jYWxlbmRhcjogXCJcXEUwRURcIjtcclxuQGljb24tdGhpbi1jYXJ0OiBcIlxcRTBFRVwiO1xyXG5AaWNvbi10aGluLWNoYW5nZS11c2VyOiBcIlxcRTBFRlwiO1xyXG5AaWNvbi10aGluLWNoZWNrZWQtMTogXCJcXEUwRjBcIjtcclxuQGljb24tdGhpbi1jaGVja2VkOiBcIlxcRTBGMVwiO1xyXG5AaWNvbi10aGluLWNsaXA6IFwiXFxFMEYyXCI7XHJcbkBpY29uLXRoaW4tY2xvc2UtbmV3LXNtYWxsOiBcIlxcRTBGM1wiO1xyXG5AaWNvbi10aGluLWNsb3NlLW5ldzogXCJcXEUwRjRcIjtcclxuQGljb24tdGhpbi1jbG9zZS1zZWFyY2g6IFwiXFxFMEY1XCI7XHJcbkBpY29uLXRoaW4tY29tbWVudDogXCJcXEUwRjZcIjtcclxuQGljb24tdGhpbi1jb21tZW50czogXCJcXEUwRjdcIjtcclxuQGljb24tdGhpbi1jb21wYW55OiBcIlxcRTBGOFwiO1xyXG5AaWNvbi10aGluLWNvbnRhY3RzOiBcIlxcRTBGOVwiO1xyXG5AaWNvbi10aGluLWNvcHk6IFwiXFxFMEZBXCI7XHJcbkBpY29uLXRoaW4tY3BsdXM6IFwiXFxFMEZCXCI7XHJcbkBpY29uLXRoaW4tY3JlZGVudGlhbHM6IFwiXFxFMEZDXCI7XHJcbkBpY29uLXRoaW4tY3JtOiBcIlxcRTBGRFwiO1xyXG5AaWNvbi10aGluLWNzaGFycDogXCJcXEUwRkVcIjtcclxuQGljb24tdGhpbi1jc3M6IFwiXFxFMEZGXCI7XHJcbkBpY29uLXRoaW4tY3N2OiBcIlxcRTEwMFwiO1xyXG5AaWNvbi10aGluLWN1c3RvbS1maWVsZHM6IFwiXFxFMTAxXCI7XHJcbkBpY29uLXRoaW4tZGF2OiBcIlxcRTEwMlwiO1xyXG5AaWNvbi10aGluLWRlYWxzOiBcIlxcRTEwM1wiO1xyXG5AaWNvbi10aGluLWRlbDogXCJcXEUxMDRcIjtcclxuQGljb24tdGhpbi1kZXNjcmlwdGlvbjogXCJcXEUxMDVcIjtcclxuQGljb24tdGhpbi1kaWFtb25kOiBcIlxcRTEwNlwiO1xyXG5AaWNvbi10aGluLWRpZmY6IFwiXFxFMTA3XCI7XHJcbkBpY29uLXRoaW4tZG1zZjogXCJcXEUxMDhcIjtcclxuQGljb24tdGhpbi1kb2M6IFwiXFxFMTA5XCI7XHJcbkBpY29uLXRoaW4tZG9jdW1lbnQ6IFwiXFxFMTBBXCI7XHJcbkBpY29uLXRoaW4tZG9jdW1lbnRzOiBcIlxcRTEwQlwiO1xyXG5AaWNvbi10aGluLWRvY3g6IFwiXFxFMTBDXCI7XHJcbkBpY29uLXRoaW4tZG9sbGFyOiBcIlxcRTEwRFwiO1xyXG5AaWNvbi10aGluLWRvd24tMTogXCJcXEUxMEVcIjtcclxuQGljb24tdGhpbi1kb3duLTI6IFwiXFxFMTBGXCI7XHJcbkBpY29uLXRoaW4tZG93bmxvYWQ6IFwiXFxFMTEwXCI7XHJcbkBpY29uLXRoaW4tZHJpdmU6IFwiXFxFMTExXCI7XHJcbkBpY29uLXRoaW4tZWRpdC0yOiBcIlxcRTExMlwiO1xyXG5AaWNvbi10aGluLWVkaXQ6IFwiXFxFMTEzXCI7XHJcbkBpY29uLXRoaW4tZW1haWw6IFwiXFxFMTE0XCI7XHJcbkBpY29uLXRoaW4tZW51bWVyYXRpb25zOiBcIlxcRTExNVwiO1xyXG5AaWNvbi10aGluLUVSUDogXCJcXEUxMTZcIjtcclxuQGljb24tdGhpbi1FVk06IFwiXFxFMTE3XCI7XHJcbkBpY29uLXRoaW4tZXhwZW5zZXM6IFwiXFxFMTE4XCI7XHJcbkBpY29uLXRoaW4tZXh0ZXJuYWw6IFwiXFxFMTE5XCI7XHJcbkBpY29uLXRoaW4tZXh0cmEtbWVudTogXCJcXEUxMUFcIjtcclxuQGljb24tdGhpbi1mYWlsczogXCJcXEUxMUJcIjtcclxuQGljb24tdGhpbi1mYXYtb2ZmOiBcIlxcRTExQ1wiO1xyXG5AaWNvbi10aGluLWZhdjogXCJcXEUxMURcIjtcclxuQGljb24tdGhpbi1mYXZvcml0OiBcIlxcRTExRVwiO1xyXG5AaWNvbi10aGluLWZpbGVzOiBcIlxcRTExRlwiO1xyXG5AaWNvbi10aGluLWZpbHRlcjogXCJcXEUxMjBcIjtcclxuQGljb24tdGhpbi1maW5hbmNlOiBcIlxcRTEyMVwiO1xyXG5AaWNvbi10aGluLWZvbGRlcjogXCJcXEUxMjJcIjtcclxuQGljb24tdGhpbi1mdWxsc2NyZWVuOiBcIlxcRTEyM1wiO1xyXG5AaWNvbi10aGluLWdhbnR0OiBcIlxcRTEyNFwiO1xyXG5AaWNvbi10aGluLWdpZjogXCJcXEUxMjVcIjtcclxuQGljb24tdGhpbi1naXQtbmV3OiBcIlxcRTEyNlwiO1xyXG5AaWNvbi10aGluLWdpdDogXCJcXEUxMjdcIjtcclxuQGljb24tdGhpbi1nbG9zc2FyeTogXCJcXEUxMjhcIjtcclxuQGljb24tdGhpbi1ncm91cDogXCJcXEUxMjlcIjtcclxuQGljb24tdGhpbi1oZWFydDogXCJcXEUxMkFcIjtcclxuQGljb24tdGhpbi1oZWxwOiBcIlxcRTEyQlwiO1xyXG5AaWNvbi10aGluLWhpc3Rvcnk6IFwiXFxFMTJDXCI7XHJcbkBpY29uLXRoaW4taG9tZTogXCJcXEUxMkRcIjtcclxuQGljb24tdGhpbi1ob3VyZ2xhc3M6IFwiXFxFMTJFXCI7XHJcbkBpY29uLXRoaW4taHRtbDogXCJcXEUxMkZcIjtcclxuQGljb24tdGhpbi1pbXBvcnQ6IFwiXFxFMTMwXCI7XHJcbkBpY29uLXRoaW4taW52ZW50b3J5OiBcIlxcRTEzMVwiO1xyXG5AaWNvbi10aGluLWludm9pY2VzOiBcIlxcRTEzMlwiO1xyXG5AaWNvbi10aGluLWlzc3VlczogXCJcXEUxMzNcIjtcclxuQGljb24tdGhpbi1qYXZhOiBcIlxcRTEzNFwiO1xyXG5AaWNvbi10aGluLWpwZzogXCJcXEUxMzVcIjtcclxuQGljb24tdGhpbi1qczogXCJcXEUxMzZcIjtcclxuQGljb24tdGhpbi1rYW5iYW46IFwiXFxFMTM3XCI7XHJcbkBpY29uLXRoaW4ta2V5OiBcIlxcRTEzOFwiO1xyXG5AaWNvbi10aGluLWtleTI6IFwiXFxFMTM5XCI7XHJcbkBpY29uLXRoaW4ta2V5cy1jbG9uZTogXCJcXEUxM0FcIjtcclxuQGljb24tdGhpbi1rbm93bGVkZ2ViYXNlOiBcIlxcRTEzQlwiO1xyXG5AaWNvbi10aGluLWxkYXAtYXV0aGVudGljYXRpb246IFwiXFxFMTNDXCI7XHJcbkBpY29uLXRoaW4tbGRhcC13b3JrZmxvdzogXCJcXEUxM0RcIjtcclxuQGljb24tdGhpbi1saWtlOiBcIlxcRTEzRVwiO1xyXG5AaWNvbi10aGluLWxpbmstYnJlYWs6IFwiXFxFMTNGXCI7XHJcbkBpY29uLXRoaW4tbG9jazogXCJcXEUxNDBcIjtcclxuQGljb24tdGhpbi1sb2dpbjogXCJcXEUxNDFcIjtcclxuQGljb24tdGhpbi1sb2dvdXQ6IFwiXFxFMTQyXCI7XHJcbkBpY29uLXRoaW4tbG9nczogXCJcXEUxNDNcIjtcclxuQGljb24tdGhpbi1tZWV0aW5nOiBcIlxcRTE0NFwiO1xyXG5AaWNvbi10aGluLW1lbnVzOiBcIlxcRTE0NVwiO1xyXG5AaWNvbi10aGluLW1lcmdlOiBcIlxcRTE0NlwiO1xyXG5AaWNvbi10aGluLW1vbmV5OiBcIlxcRTE0N1wiO1xyXG5AaWNvbi10aGluLW1vbml0b3JpbmctY29udHJvbGxpbmc6IFwiXFxFMTQ4XCI7XHJcbkBpY29uLXRoaW4tbW92ZTogXCJcXEUxNDlcIjtcclxuQGljb24tdGhpbi1teS1hY2NvdW50OiBcIlxcRTE0QVwiO1xyXG5AaWNvbi10aGluLW15LXBhZ2U6IFwiXFxFMTRCXCI7XHJcbkBpY29uLXRoaW4tbmV3LW9iamVjdC0yOiBcIlxcRTE0Q1wiO1xyXG5AaWNvbi10aGluLW5ldy1vYmplY3Q6IFwiXFxFMTREXCI7XHJcbkBpY29uLXRoaW4tbmV3czogXCJcXEUxNEVcIjtcclxuQGljb24tdGhpbi1uZXh0OiBcIlxcRTE0RlwiO1xyXG5AaWNvbi10aGluLW5vLWludm9pY2VzOiBcIlxcRTE1MFwiO1xyXG5AaWNvbi10aGluLW5vcm1hbC1pc3N1ZXM6IFwiXFxFMTUxXCI7XHJcbkBpY29uLXRoaW4tbm90ZTogXCJcXEUxNTJcIjtcclxuQGljb24tdGhpbi1ub3RpZmljYXRpb25zOiBcIlxcRTE1M1wiO1xyXG5AaWNvbi10aGluLW9kdDogXCJcXEUxNTRcIjtcclxuQGljb24tdGhpbi1vcGVuLWZvbGRlcjogXCJcXEUxNTVcIjtcclxuQGljb24tdGhpbi1vcGVuLXNlYXJjaDogXCJcXEUxNTZcIjtcclxuQGljb24tdGhpbi1vcGVuLXNpZGViYXItaG9yOiBcIlxcRTE1N1wiO1xyXG5AaWNvbi10aGluLW9wZW4tc2lkZWJhcjogXCJcXEUxNThcIjtcclxuQGljb24tdGhpbi1vcmRlcnM6IFwiXFxFMTU5XCI7XHJcbkBpY29uLXRoaW4tb3ZlcnZpZXc6IFwiXFxFMTVBXCI7XHJcbkBpY29uLXRoaW4tcGFnZXM6IFwiXFxFMTVCXCI7XHJcbkBpY29uLXRoaW4tcGFzc3dkOiBcIlxcRTE1Q1wiO1xyXG5AaWNvbi10aGluLXBhdXNlOiBcIlxcRTE1RFwiO1xyXG5AaWNvbi10aGluLXBkZjogXCJcXEUxNUVcIjtcclxuQGljb24tdGhpbi1wZW9wbGU6IFwiXFxFMTVGXCI7XHJcbkBpY29uLXRoaW4tcGVyaW9kaWMtdGFza3M6IFwiXFxFMTYwXCI7XHJcbkBpY29uLXRoaW4tcGhvbmU6IFwiXFxFMTYxXCI7XHJcbkBpY29uLXRoaW4tcGhvdG86IFwiXFxFMTYyXCI7XHJcbkBpY29uLXRoaW4tcGhwOiBcIlxcRTE2M1wiO1xyXG5AaWNvbi10aGluLXBsYW5uaW5nOiBcIlxcRTE2NFwiO1xyXG5AaWNvbi10aGluLXBsYXk6IFwiXFxFMTY1XCI7XHJcbkBpY29uLXRoaW4tcGx1Z2luczogXCJcXEUxNjZcIjtcclxuQGljb24tdGhpbi1wbmc6IFwiXFxFMTY3XCI7XHJcbkBpY29uLXRoaW4tcHJldjogXCJcXEUxNjhcIjtcclxuQGljb24tdGhpbi1wcmV2aWV3LXNhbGFyeTogXCJcXEUxNjlcIjtcclxuQGljb24tdGhpbi1wcmludDogXCJcXEUxNkFcIjtcclxuQGljb24tdGhpbi1wcm9kdWN0czogXCJcXEUxNkJcIjtcclxuQGljb24tdGhpbi1wcm9qZWN0czogXCJcXEUxNkNcIjtcclxuQGljb24tdGhpbi1xdWVzdGlvbnM6IFwiXFxFMTZEXCI7XHJcbkBpY29uLXRoaW4tcXVpY2stc2VhcmNoOiBcIlxcRTE2RVwiO1xyXG5AaWNvbi10aGluLXJlZ2lzdGVyOiBcIlxcRTE2RlwiO1xyXG5AaWNvbi10aGluLXJlbG9hZC0yOiBcIlxcRTE3MFwiO1xyXG5AaWNvbi10aGluLXJlbG9hZDogXCJcXEUxNzFcIjtcclxuQGljb24tdGhpbi1yZW1pbmRlcjogXCJcXEUxNzJcIjtcclxuQGljb24tdGhpbi1yZXBvcnQ6IFwiXFxFMTczXCI7XHJcbkBpY29uLXRoaW4tcmVwb3J0czogXCJcXEUxNzRcIjtcclxuQGljb24tdGhpbi1yZXBvc2l0b3J5OiBcIlxcRTE3NVwiO1xyXG5AaWNvbi10aGluLXJlc291cmNlczogXCJcXEUxNzZcIjtcclxuQGljb24tdGhpbi1yaXNrczogXCJcXEUxNzdcIjtcclxuQGljb24tdGhpbi1yb2FkbWFwOiBcIlxcRTE3OFwiO1xyXG5AaWNvbi10aGluLXJvbGVzOiBcIlxcRTE3OVwiO1xyXG5AaWNvbi10aGluLXJvc2V0dGU6IFwiXFxFMTdBXCI7XHJcbkBpY29uLXRoaW4tcnVieTogXCJcXEUxN0JcIjtcclxuQGljb24tdGhpbi1zYXZlLW5ldzogXCJcXEUxN0NcIjtcclxuQGljb24tdGhpbi1zYXZlOiBcIlxcRTE3RFwiO1xyXG5AaWNvbi10aGluLXNjcm9sbDogXCJcXEUxN0VcIjtcclxuQGljb24tdGhpbi1zY3J1bTogXCJcXEUxN0ZcIjtcclxuQGljb24tdGhpbi1zZWFyY2gtZG93bi1hcnJvdzogXCJcXEUxODBcIjtcclxuQGljb24tdGhpbi1zZWFyY2g6IFwiXFxFMTgxXCI7XHJcbkBpY29uLXRoaW4tc2V0dGluZ3M6IFwiXFxFMTgyXCI7XHJcbkBpY29uLXRoaW4tc21hbGwtaXNzdWVzOiBcIlxcRTE4M1wiO1xyXG5AaWNvbi10aGluLXNuaXBwZXRzOiBcIlxcRTE4NFwiO1xyXG5AaWNvbi10aGluLXNvcnQtaGFuZGxlOiBcIlxcRTE4NVwiO1xyXG5AaWNvbi10aGluLXNwcmludC1ib2FyZDogXCJcXEUxODZcIjtcclxuQGljb24tdGhpbi1zcHJpbnQtYnVybmRvd246IFwiXFxFMTg3XCI7XHJcbkBpY29uLXRoaW4tc3ByaW50LWthbmJhbjogXCJcXEUxODhcIjtcclxuQGljb24tdGhpbi1zdGF0aXN0aWNzOiBcIlxcRTE4OVwiO1xyXG5AaWNvbi10aGluLXN0YXRzOiBcIlxcRTE4QVwiO1xyXG5AaWNvbi10aGluLXN0b3AtMTogXCJcXEUxOEJcIjtcclxuQGljb24tdGhpbi1zdG9wOiBcIlxcRTE4Q1wiO1xyXG5AaWNvbi10aGluLXN1bW1hcnk6IFwiXFxFMThEXCI7XHJcbkBpY29uLXRoaW4tc3VydmV5OiBcIlxcRTE4RVwiO1xyXG5AaWNvbi10aGluLXRhZ3M6IFwiXFxFMThGXCI7XHJcbkBpY29uLXRoaW4tdGVtcGxhdGVzOiBcIlxcRTE5MFwiO1xyXG5AaWNvbi10aGluLXRpY2tldHM6IFwiXFxFMTkxXCI7XHJcbkBpY29uLXRoaW4tdGlmZjogXCJcXEUxOTJcIjtcclxuQGljb24tdGhpbi10aW1lLWVudHJpZXM6IFwiXFxFMTkzXCI7XHJcbkBpY29uLXRoaW4tdHh0OiBcIlxcRTE5NFwiO1xyXG5AaWNvbi10aGluLXVuLWxpa2U6IFwiXFxFMTk1XCI7XHJcbkBpY29uLXRoaW4tdW5sb2NrOiBcIlxcRTE5NlwiO1xyXG5AaWNvbi10aGluLXVwLTE6IFwiXFxFMTk3XCI7XHJcbkBpY29uLXRoaW4tdXAtMjogXCJcXEUxOThcIjtcclxuQGljb24tdGhpbi11cGxvYWQ6IFwiXFxFMTk5XCI7XHJcbkBpY29uLXRoaW4tdXNlcjogXCJcXEUxOUFcIjtcclxuQGljb24tdGhpbi12YXJpYWJsZXM6IFwiXFxFMTlCXCI7XHJcbkBpY29uLXRoaW4tdmF1bHQ6IFwiXFxFMTlDXCI7XHJcbkBpY29uLXRoaW4tdmNmOiBcIlxcRTE5RFwiO1xyXG5AaWNvbi10aGluLXZvdGVzOiBcIlxcRTE5RVwiO1xyXG5AaWNvbi10aGluLXdhcm5pbmc6IFwiXFxFMTlGXCI7XHJcbkBpY29uLXRoaW4td2JzOiBcIlxcRTFBMFwiO1xyXG5AaWNvbi10aGluLXdpa2k6IFwiXFxFMUExXCI7XHJcbkBpY29uLXRoaW4td29ya2Zsb3c6IFwiXFxFMUEyXCI7XHJcbkBpY29uLXRoaW4td3JlY2s6IFwiXFxFMUEzXCI7XHJcbkBpY29uLXRoaW4teGxzOiBcIlxcRTFBNFwiO1xyXG5AaWNvbi10aGluLXhsc3gtMTogXCJcXEUxQTVcIjtcclxuQGljb24tdGhpbi14bHN4OiBcIlxcRTFBNlwiO1xyXG5AaWNvbi10aGluLXhtbDogXCJcXEUxQTdcIjtcclxuQGljb24tdGhpbi15b3V0dWJlOiBcIlxcRTFBOFwiO1xyXG5AaWNvbi10aGluLXppcDogXCJcXEUxQTlcIjtcclxuQGljb24tdGhpbi16b29tLWluOiBcIlxcRTFBQVwiO1xyXG5AaWNvbi10aGluLXpvb20tb3V0OiBcIlxcRTFBQlwiO1xyXG5cclxuXHJcbi8qIEVORCBJQ09OIEZPTlRTICovXHIiXX0= */

/*START VARIABLES FOR THEME*/
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ICON FONTS */
/* END ICON FONTS */
/* 20.03.2022 */
/* START FONT VARIABLES */
/* END FONT VARIABLES */
/* VARS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ALL VARIABLES FOR WORK LESS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START BORDER RADIUS VARIABLES */
/* END BORDER RADIUS VARIABLES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START FONT SISE + LINE HIGHT */
/* START 1024*/
/*  START 768*/
/*  START 500*/
/* END FONT SISE + LINE HIGHT */
/* --------------------- https://redmine-evolution.com/ -- */
/* START JCF */
/* END JCF */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ANIMATE TIME*/
/* hover */
/* Main big bloks animated */
/* --------------------- https://redmine-evolution.com/ -- */
/* START OPACITY */
/* END OPACITY*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START ICONS VAR */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ICON FONTS */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/*  ----  */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* END ICON FONTS */
/*END VARIABLES FOR THEME*/
/*START COLOUR-VARIABLES GLOBAL FOR THEME*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START COLOR VARIABLES */
/* END COLOR VARIABLES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START NOTICE */
/*D9E8FF*/
/* END NOTICE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MOBILE MENU */
/* END MOBILE MENU */
/* --------------------- https://redmine-evolution.com/ -- */
/* START BOX-SHADOWS */
/* END BOX-SHADOWS */
/* START tables */
/* END tables*/
/* START pagination */
/* END pagination*/
/* START TOP MENU */
/* HOVER */
/* END TOP MENU */
/* START MAIN MENU */
/* MOBILE */
/* END MAIN MENU */
/* new  */
/* START TOP MENU */
/* HOVER */
/* END TOP MENU */
/* START MAIN MENU */
/* MOBILE */
/* END MAIN MENU */
/* CONTENT COLOR SETTINGS  */
/* --------------------- https://redmine-evolution.com/ -- */
:root {
  /* START GENERAL COLOR */
  --color-fff: #fff;
  --color-dark: #10131e;
  --color-blue: #654EFF;
  --color-darck-blue: #8A78D0;
  --color-blue-light: #cce5ff;
  --color-red: #FF5757;
  --color-red-errof: #BE4646;
  --color-red-superlight: #FFD1D1;
  --color-green: #66C8AB;
  --color-green-dark: #5caa93;
  --color-green-super-light: #CFFFF1;
  --color-purple: #E284FE;
  --color-purple-dark: #C072D8;
  --color-yellow: #FFCF69;
  --color-yellow-light: #FFF1D3;
  --color-error: #FF5757;
  --color-orange: #FE9A51;
  --color-grey: #cccccc;
  --super_grey_light: #ebebec;
  --suder-dark-grey: #BBBFCD;
  --main-bg-box: #ECEDF0;
  --menu-grey: #6a6e82;
  --icon-grey: #676879;
  --icon-grey-dark: #323338;
  --menu-bg: #2E314F;
  --color-main-color: #9D89EE;
  --color-main-color-activety: #8E7DD6;
  --bg-box-activety: #cce5ff;
  --color-main-color-text: #ffffff;
  --grey: #cccccc;
  --color-dark-grey: #A5A5A5;
  --icon-bg: #cce5ff;
  /*--main-background: url("../images/login-bg01.jpg") repeat;*/
  --main-background: var(--color-fff);
  --border-color: var(--border-color-content);
  --text-color-main: var(--color-dark);
  --bg-in-content: var(--color-blue-light);
  --bg-body: var(--bg-fff);
  --bg-mobile: #fff;
  --bg-box: #ECEDF0;
  --bg-other: #ECEDF0;
  --bg-other-in: #ffffff;
  --bg-fff: #ffffff;
  --light-bg: #ece1fc;
  --select-bg-redmineup: #5f5bfa;
  --all-hover-bg: var(--color-blue-light);
  --all-hover-bg-color: var(--color-dark);
  --scroll-bg: #ECEDF0;
  --scroll-handle: #BBBFCD;
  --jcf-drop-active: var(--text-color-main);
  /* END GENERAL COLOR */
  /* START TABS */
  --tab-color-text: var(--border-color-content);
  --tab-color-text-seleced: var(--color-main-color);
  /* END TABS */
  /* START NOTICE */
  --notice-error-bg: var(--color-red-superlight);
  --notice-error-main: var(--color-red);
  --notice-error-main-text: var(--color-red);
  --notice-successfu-main: var(--color-green);
  --notice-successfu-main-text: var(--color-fff);
  --notice-successfu-bg: var(--color-green-super-light);
  --notice-successfu-bg-text: var(--color-green-dark);
  --notice-worning-main: var(--color-yellow);
  --notice-worning-bg: var(--color-yellow-light);
  --notice-worning-color: var(--color-dark);
  --red_border_error: var(--color-red);
  --red_error_text: var(--color-fff);
  /* END NOTICE */
  /* START BORDER RADIUS */
  --border-radius: 8px;
  --border-radius-full: 100%;
  --border-radius-small: 3px;
  --border-radius-midle: 5px;
  --icon-border-radius: 8px;
  /* START BORDER RADIUS */
  /* START ANIMATE TIME*/
  --time-hover: 0.2s;
  --time-main: 0.5s;
  --time-hover-null: 0s;
  /* END ANIMATE TIME*/
  /* START ICONS */
  --icon-width: 30px;
  --icon-font-size: 30px;
  --icon-smaller-width: 26px;
  --icon-smaller-font-size: 26px;
  --icon-width-small: 20px;
  --icon-font-size-small: 20px;
  --icon-font: "WFS-RM-font";
  --icon-color: var(--icon-grey);
  --icon-color-hover: #444444;
  --icon_color_active: #444444;
  --icon_bg: #bfd6fd;
  --icon_bg_hover: #bfd6fd;
  --icon_bg_active: #bfd6fd;
  --icon-color-disabled: var(--icon-grey);
  --icon_bg-disabled: var(--color-grey);
  --icon-color-bg: var(--icon-grey);
  --icon-color-hover-bg: var(--icon-grey-dark);
  --icon_color_active-bg: var(--icon-grey-dark);
  --icon_bg-bg: var(--color-blue-light);
  --icon_bg_hover-bg: var(--color-blue-light);
  --icon_bg_active-bg: var(--color-blue-light);
  --icon-color-list: var(--icon-grey);
  --icon-color-hover-list: var(--bg-fff);
  --icon_color_active-list: var(--bg-fff);
  --icon_bg-list: var(--color-main-color);
  --icon_bg_hover-list: var(--color-main-color);
  --icon_bg_active-list: var(--color-main-color);
  --icon-color-: var(--icon-grey);
  --icon-content-color: var(--color-orange);
  --icon-content-color-hover: #fff;
  --icon-content_bg: var(--color-orange);
  --icon-content_bg_hover: var(--color-orange);
  --icon-content_bg_active: var(--color-orange);
  --icon-star: var(--color-orange);
  --button-main-color: var(--color-fff);
  --button-main-bg: var(--color-purple);
  --button-main-color-hover: var(--color-fff);
  --button-main-bg-hover: var(--color-purple-dark);
  --button-main-color-disabled: var(--color-dark);
  --button-main-bg-disabled: var(--color-grey);
  --button-color: #654EFF;
  --button-bg: #ebe7fc;
  --button-color-hover: #654EFF;
  --button-bg-hover: #d8d0f8;
  --button-color-disabled: var(--color-dark);
  --button-bg-disabled: var(--color-grey);
  --button-color-disabled: #fff;
  --button-bg-disabled: var(--color-dark-grey);
  --button-grey-color: var(--color-dark);
  --button-grey-bg: var(--super_grey_light);
  --button-grey-color-hover: var(--color-dark);
  --button-grey-bg-hover: var(--color-grey);
  --button-font-weight: 600;
  --button-border-radius: 8px;
  --bg-disabled: var(--color-dark-grey);
  --color-disabled: var(--color-fff);
  --button-main-color-bg: #fff;
  --button-main-bg-bg: var(--color-purple-dark);
  --button-main-color-hover-bg: #fff;
  --button-main-bg-hover-bg: var(--color-purple-dark);
  --button-main-color-disabled-bg: var(--color-dark);
  --button-main-bg-disabled-bg: var(--color-grey);
  --button-color-bg: var(--color-dark);
  --button-bg-bg: var(--color-blue-light);
  --button-color-hover-bg: #fff;
  --button-bg-hover-bg: var(--color-blue);
  /* END ICONS */
  --table-bg-hover: #afd6fd;
  --popup-overlay: rgba(41, 47, 76, 0.7);
  --popup-overlay-fancy: var(--menu-bg);
  --main-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  --small-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.1);
  --box-shadow-null: 0 10px 10px rgba(0, 0, 0, 0);
  --table-shadow: rgba(0, 0, 0, 0.1) 0px 3px 5px;
  --big-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
  --big-shadow-hover: 0 10px 10px rgba(101, 154, 244, 0.5);
  --popup-close-color: var(--color-red);
  --popup-close-bg: var(--color-red);
  --popup-close-color-hover: var(--color-fff);
  --popup-close-bg-hover: var(--color-red);
  --popup-close-color-2: var(--color-red);
  --popup-close-bg-2: var(--color-fff);
  --popup-close-color-hover-2: var(--color-fff);
  --popup-close-bg-hover-2: var(--color-red);
  /* START PRIORITY COLOR */
  --color-warning: var(--color-orange);
  --priority-1: var(--color-blue);
  --priority-2: var(--color-green);
  --priority-3: var(--color-yellow);
  --priority-4: var(--color-purple);
  --priority-5: var(--color-error);
  --priority-color: var(--color-fff);
  /* END PRIORITY COLOR */
  /* START TRACKER COLOR */
  --tracker-1: var(--color-red);
  --tracker-2: var(--color-green);
  --tracker-3: var(--color-blue);
  /* END TRACKER COLOR */
  /* START DROPDOWN */
  --drop-text-color: var(--color-dark);
  --drop-text-color-hover: var(--color-dark);
  --drop-icon-color: var(--color-dark);
  --drop-icon-color-hover: var(--color-dark);
  --drop-border-color: var(--color-grey);
  --drop-bg: var(--color-blue-light);
  --drop-bg-hover: var(--color-blue-light);
  --drop-shadow: var(--box-shadow-null);
  /* START DROPDOWN */
  /* START ISSUES */
  --icon-save-color: var(--color-green);
  --icon-save-color-hover: var(--color-fff);
  --icon-save-bg: var(--color-green-super-light);
  --icon-save-bg-hover: var(--color-green);
  --icon-close-color: var(--color-error);
  --icon-close-color-hover: var(--color-fff);
  --icon-close-bg: var(--color-red-superlight);
  --icon-close-bg-hover: var(--color-error);
  --icon-dell-bg: var(--color-red);
  --icon-dell-bg-hover: var(--color-error);
  --icon-dell-color: var(--color-fff);
  --icon-dell-color-hover: var(--color-fff);
  --color-link: var(--color-main-color);
  --border-color-content: #BBBFCD;
  /* END ISSUES */
  /* START PAGINATION */
  --pagination-color: var(--icon-color);
  --pagination-color-hover: var(--icon-color-hover);
  --pagination-color-avtive: var(--icon_color_active);
  --pagination-bg: var(--color-fff);
  --pagination-bg-hover: var(--icon_bg_hover);
  --pagination-bg-active: var(--icon_bg_active);
  --pagination-font-weight: 700;
  /* END PAGINATION */
  /* START FLYOUT MENU */
  --flyout_menu_bg: var(--color-main-color);
  --flyout_menu_color: var(--color-fff);
  --flyout_menu_border: var(--color-fff);
  --flyout_menu_button_bg: var(--color-fff);
  --flyout_menu_button_color: var(--color-main-color);
  --flyout_menu_bg_selected: var(--color-red);
  --flyout_menu_color_selected: var(--color-fff);
  --flyout_menu_title_bg: #0067c3;
  --flyout_menu_title_color: var(--color-fff);
  --flyout_menu_admin_menu_bg: #6b8eff;
  --flyout_menu_admin_menu_color: var(--color-fff);
  --flyout_menu_general-menu_bg: #817eff;
  --flyout_menu_general-menu_color: var(--color-fff);
  --flyout_menu_profile-menu_bg: #5DCA86;
  --flyout_menu_profile-menu_color: var(--color-fff);
  --flyout_menu_watchers-menu_bg: var(--color-green);
  --flyout_menu_watchers-menu_color: var(--color-fff);
  --flyout-text-color: var(--color-dark);
  /* END FLYOUT MENU */
  /* START TOOLTIP */
  --tooltip-bg: var(--color-main-color);
  --tooltip-bg-hover: var(--color-main-color);
  --tooltip-color: var(--color-fff);
  --tooltip-color-hover: var(--color-fff);
  /* END TOOLTIP */
  /* START SCROLLBAR */
  --scrollbar: var(--color-grey);
  --scrollbar_handle: var(--color-main-color);
  /* END SCROLLBAR */
}
/* START FOOTER */
#footer {
  --bg: var(--color-fff);
  --text-color-main: var(--color-grey);
  --border-color: var(--color-grey);
}
/* END FOOTER */
/* START SIDEBAR */
#sidebar {
  --bg: var(--main-bg-box);
  --main_color: var(--color-main-color);
  --text-color-main: var(--color-dark);
  --border-color: #BBBFCD;
  --icon-color: var(--icon-grey);
  --icon-color-hover: var(--icon-grey-dark);
  --icon_color_active: var(--icon-grey-dark);
  --icon_bg: var(--color-blue-light);
  --icon_bg_hover: var(--color-blue-light);
  --icon_bg_active: var(--color-blue-light);
  --button-main-color: var(--bg-fff);
  --button-main-bg: var(--color-purple);
  --button-main-color-hover: var(--bg-fff);
  --button-main-bg-hover: var(--color-purple-dark);
  --button-color: var(--bg-fff);
  --button-bg: var(--color-purple);
  --button-color-hover: var(--bg-fff);
  --button-bg-hover: var(--color-purple-dark);
  --scroll-bg: #ECEDF0;
  --scroll-handle: #BBBFCD;
}
#main {
  --sidebar-main_color: var(--color-main-color);
  --sidebar-main_color_text: var(--bg-fff);
  --sidebar-main_color_hover: #292f4c;
  --sidebar-main_color_text_hover: var(--bg-fff);
  --sidebar-open-button-bg: #fff;
  --sidebar-open-button-border: var(--border-color);
  --sidebar-open-button-color: var(--color-dark);
  --sidebar-open-button-bg-hover: #9D89EE;
  --sidebar-open-button-border-hover: #9D89EE;
  --sidebar-open-button-color-hover: #fff;
}
/* END SIDEBAR */
#admin-menu,
#main-menu,
.mod-obj {
  --bg: #20233D;
  --border-color: #20233D;
  --border-color-logo: #484C78;
  --link-color: #C7B8FF;
  --link-color-hover: #E182FF;
  --link-color-active: #C7B8FF;
  --scrollbar: #20233D;
  --scrollbar_handle: #C7B8FF;
  --icon-color: #C7B8FF;
  --icon-color-hover: #E182FF;
  --icon_color_active: #C7B8FF;
  --icon_bg: var(--menu-bg);
  --icon_bg_hover: var(--color-dark);
  --icon_bg_active: var(--menu-grey);
  --main-menu-font-weight: 700;
  --menu-children-font-weight: 500;
  --flyout-menu-font-weight: 600;
  --submit-font-weight: 600;
}
#admin-index {
  --admin-color-text: var(--color-dark);
  --admin-color-after: var(--menu-bg);
  --admin-color-after-hover: var(--menu-bg);
  --admin-color-text-hover: var(--color-dark);
}
#top-menu {
  --bg: var(--main-bg-box);
  --icon-color: var(--icon-grey);
  --icon-color-hover: var(--icon-grey-dark);
  --icon_color_active: var(--icon-grey-dark);
  --border-color: var(--color-grey);
  --icon_bg: var(--color-blue-light);
  --icon_bg_hover: var(--color-blue-light);
  --icon_bg_active: var(--color-blue-light);
  --top-notification: var(--tracker-1);
  --top-notification-color: var(--color-fff);
  --link-color: var(--color-dark);
  --link-color-hover: var(--color-blue);
  --link-bg: var(--color-fff);
  --link-bg-hover: var(--color-blue-light);
  --text-color: var(--color-dark);
  --start-time-bg-time: var(--menu-bg);
  --start-time-text-color: var(--color-fff);
}
.revo-modal-badge {
  --bg: var(--bg-box);
  --bg-title: var(--color-fff);
  --text-color: var(--color-dark);
  --link-color: var(--color-dark);
  --link-color-hover: var(--color-dark);
  --link-bg: var(--color-fff);
  --link-bg-hover: var(--all-hover-bg);
  --border-color: var(--color-dark);
}
/*END COLOUR-VARIABLES GLOBAL FOR THEME*/
/*START COLOUR-VARIABLES FOR THEME*/
/*END COLOUR-VARIABLES FOR THEME*/
/* if you do not have plugin-  dynamicEdit - You can delete or comment out the lines below*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START DINAMIC EDIT PLAGIN */
body.controller-issues.action-show #main .dynamicEdit {
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  -webkit-box-shadow: var(--small-box-shadow);
  -moz-box-shadow: var(--small-box-shadow);
  box-shadow: var(--small-box-shadow);
}
body.controller-issues.action-show #content div.issue.details .btn-primary.validate {
  background: var(--icon-save-bg);
  color: var(--icon-save-color);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  width: var(--icon-width);
  height: var(--icon-width);
  border: 1px solid var(--icon-save-bg);
  padding: 0;
  position: relative;
  text-decoration: none !important;
  -webkit-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
}
body.controller-issues.action-show #content div.issue.details .btn-primary.validate:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) skew(-5deg) rotate(-50deg);
  margin: -1px 0 0;
  height: 4px;
  width: 10px;
  border: 3px solid var(--icon-save-color);
  border-right: none;
  border-top: none;
  -webkit-transition: opacity var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
}
body.controller-issues.action-show #content div.issue.details .btn-primary.validate .fa {
  display: none;
  color: var(--icon-save-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body.controller-issues.action-show #content div.issue.details .btn-primary.validate:hover {
  background: var(--icon-save-bg-hover);
  color: var(--icon-save-color-hover);
  border-color: var(--icon-save-bg-hover);
}
body.controller-issues.action-show #content div.issue.details .btn-primary.validate:hover:after {
  border-color: var(--icon-save-color-hover);
}
body.controller-issues.action-show #content div.issue.details .btn-primary.close {
  background: var();
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  width: var(--icon-width);
  height: var(--icon-width);
  border: 1px solid var(--color-red-superlight);
  color: var(--color-red-superlight) !important;
  padding: 0;
  position: relative;
  text-decoration: none !important;
  -webkit-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out, border-color var(--time-hover) ease-in-out;
}
body.controller-issues.action-show #content div.issue.details .btn-primary.close:after {
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-width);
  line-height: var(--icon-width);
}
body.controller-issues.action-show #content div.issue.details .btn-primary.close .fa {
  display: none;
  color: var(--icon-close-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body.controller-issues.action-show #content div.issue.details .btn-primary.close:hover {
  background: var(--icon-close-bg-hover);
  border-color: var(--icon-close-bg-hover);
  color: var(--icon-close-color-hover) !important;
}
body.controller-issues.action-show #content div.issue.details .btn-primary.close:hover .fa {
  color: var(--icon-close-color-hover);
}
body.controller-issues.action-show #content div.issue.details .dynamicEdit {
  display: flex;
}
body.controller-issues.action-show #content div.issue.details .dynamicEdit .jcf-select {
  margin: 0;
}
body.controller-issues.action-show #content div.issue.details .dynamicEdit input[type="text"],
body.controller-issues.action-show #content div.issue.details .dynamicEdit input[type="date"] {
  height: 30px;
  box-sizing: border-box;
  border: 1px solid var(--border-color);
  padding: 6px 12px;
  font-size: 0.85714286rem;
  line-height: 1.28571429rem;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  color: var(--text-color-main);
  margin: 0;
  min-width: 190px;
  outline: 0 none;
  width: 100%;
  max-width: 100%;
  flex: 1;
  background: var(--bg-fff);
  min-height: 30px;
  -webkit-appearance: none;
}
body.controller-issues.action-show #content div.issue.details .dynamicEdit .jstBlock + div {
  display: flex;
  min-width: 50px;
}
body.controller-issues.action-show #content div.issue.details .dynamicEdit .jstBlock + div a {
  float: left;
}
body.controller-issues.action-show #content div.issue.details .dynamicEdit a {
  margin: 0 0 0 5px !important;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
body.controller-issues.action-show #content div.issue.details .dynamicEdit a .fa {
  display: inline-block;
}
body.controller-issues.action-show button.action {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0 0 0 10px !important;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  vertical-align: middle;
  min-width: var(--icon-width);
  min-height: var(--icon-width);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  cursor: pointer;
}
body.controller-issues.action-show button.action:after {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body.controller-issues.action-show button.action:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: background-color var(--time-hover) ease-in-out;
  -moz-transition: background-color var(--time-hover) ease-in-out;
  -ms-transition: background-color var(--time-hover) ease-in-out;
  -o-transition: background-color var(--time-hover) ease-in-out;
  transition: background-color var(--time-hover) ease-in-out;
}
body.controller-issues.action-show button.action.valid {
  color: var(--icon-save-color);
  background: none !important;
}
body.controller-issues.action-show button.action.valid:after {
  content: "\E0F1";
  color: var(--icon-save-color);
}
body.controller-issues.action-show button.action.valid:before {
  background: var(--icon-save-bg);
}
body.controller-issues.action-show button.action.valid:hover {
  color: var(--icon-save-color-hover);
}
body.controller-issues.action-show button.action.valid:hover:after {
  color: var(--icon-save-color-hover);
}
body.controller-issues.action-show button.action.valid:hover:before {
  background: var(--icon-save-bg-hover);
}
body.controller-issues.action-show button.action.refuse {
  color: var(--icon-close-color);
}
body.controller-issues.action-show button.action.refuse:after {
  content: "\E0F4";
  color: var(--icon-close-color);
}
body.controller-issues.action-show button.action.refuse:before {
  background: var(--icon-close-bg);
}
body.controller-issues.action-show button.action.refuse:hover {
  color: var(--icon-close-color-hover);
}
body.controller-issues.action-show button.action.refuse:hover:after {
  color: var(--icon-close-color-hover);
}
body.controller-issues.action-show button.action.refuse:hover:before {
  background: var(--icon-close-bg-hover);
}
body.controller-issues.action-show .iconEdit {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  vertical-align: middle;
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  cursor: pointer;
}
body.controller-issues.action-show .iconEdit:after {
  content: "\E113";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
body.controller-issues.action-show .iconEdit:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
body.controller-issues.action-show .iconEdit:hover {
  color: var(--pagination-color-hover);
  background-image: none !important;
}
body.controller-issues.action-show .iconEdit:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
body.controller-issues.action-show .dynamicEditField {
  display: flex !important;
  position: absolute !important;
  -webkit-box-shadow: var(--small-box-shadow);
  -moz-box-shadow: var(--small-box-shadow);
  box-shadow: var(--small-box-shadow);
}
/* END DINAMIC EDIT PLAGIN */
body.controller-issues.action-show div.issue.details .value.edited .dynamicEdit {
  z-index: 99999;
}
body.controller-issues.action-show div.issue.details .attribute:hover .iconEdit,
body.controller-issues.action-show div.issue.details .subject:hover .iconEdit,
body.controller-issues.action-show div.issue.details .description:hover .iconEdit {
  color: var(--pagination-color-avtive);
}
body.controller-issues.action-show div.issue.details .attribute:hover .iconEdit:before,
body.controller-issues.action-show div.issue.details .subject:hover .iconEdit:before,
body.controller-issues.action-show div.issue.details .description:hover .iconEdit:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
/* --------------------- https://redmine-evolution.com/ -- */
@media screen and (max-width: 899px) {
  body.controller-issues.action-show .iconEdit {
    height: var(--icon-width-small);
    width: var(--icon-width-small);
    min-width: var(--icon-width-small);
    min-height: var(--icon-width-small);
  }
  body.controller-issues.action-show .iconEdit:after {
    font-size: var(--icon-font-size-small);
    line-height: var(--icon-width-small);
  }
  body.controller-issues.action-show div.issue.details.showPencil .iconEdit,
  body.controller-issues.action-show div.issue.details .attribute .iconEdit,
  body.controller-issues.action-show div.issue.details .description .iconEdit,
  body.controller-issues.action-show div.issue.details .subject .iconEdit {
    opacity: 1;
  }
}
@media screen and (max-width: 650px) {
  #main > #content .jstBlock {
    min-width: 100%;
    margin: 0 0 10px;
  }
  #main div.issue .attributes .attribute .value {
    width: 100%;
  }
  body.controller-issues.action-show .dynamicEditField.open,
  body.controller-issues.action-show .dynamicEditField {
    left: -160px;
    width: calc(100% + 160px);
    flex-flow: wrap;
  }
  body.controller-issues.action-show .description .dynamicEditField.open,
  body.controller-issues.action-show .subject .dynamicEditField.open,
  body.controller-issues.action-show .description .dynamicEditField,
  body.controller-issues.action-show .subject .dynamicEditField {
    left: 0;
    width: 100%;
  }
}
/*@import '_plagin_rmplus.less';*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START VARS BOX */
/* END VARS BOX */
/* START ADDITIONALS */
/* STERT SETTINGS */
.controller-settings.action-plugin #content form textarea {
  width: 100%;
  min-width: 100%;
}
.controller-settings.action-plugin #content form textarea + .info {
  margin: 5px 0 0 !important;
  flex: 1;
}
.controller-settings.action-plugin #content div#settings div.settings {
  margin: 0 0 20px;
}
.controller-settings.action-plugin .info {
  flex: 1;
}
.controller-settings.action-plugin #tab-content-rules select + .jcf-list-box,
.controller-settings.action-plugin #tab-content-rules select + .jcf-select,
.controller-settings.action-plugin #tab-content-rules select + .select2 {
  margin: 5px 0;
}
.controller-settings.action-plugin #tab-content-menu fieldset {
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}
.controller-settings.action-plugin #tab-content-menu fieldset legend {
  left: 0;
}
.controller-settings.action-plugin span[style="vertical-align: top; margin-left: 15px;"] {
  flex: 1;
}
/* START MENU */
#header #admin-menu a.additionals:after {
  content: "\E0D6";
}
#wrapper .flyout-menu #main-menu .additionals:before,
#wrapper .flyout-menu #admin-menu .additionals:before {
  display: none;
}
/* START ADMIN PAGE */
#admin-index #admin-menu a.additionals:after {
  content: "\E0D6";
  background-image: url(../images/icon-color/additionals.svg);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#admin-index #admin-menu a.additionals:before {
  padding: 0 !important;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
/* END ADMIN PAGE */
/* END MENU */
/* END SETTINGS */
/* STRAT LOGIN PAGE */
.controller-account .additionals-footer {
  display: none !important;
}
.additionals-footer {
  display: none;
}
.start .additionals-footer {
  display: block;
}
/* END LOGIN PAGE */
/* STRAT FOOTER */
.additionals-footer {
  background: var(--bg-fff);
  overflow: hidden;
  display: block;
  font-size: 0.7857rem;
  line-height: 0.7857rem;
  padding: 5px;
  color: var(--text-color-main);
}
/* END FOOTER */
body .gototop[href="#gototop"] {
  position: absolute;
  top: -999999999px;
  left: -99999999px;
}
#content form .tabular #tab-content-web p em.info {
  margin-right: 0 !important;
  flex: 1 0 auto;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.flyout-menu .sidebar-additionals {
  padding: 10px !important;
}
@media screen and (max-width: 899px) {
  table.list .hideable {
    display: none !important;
  }
}
/* END ADDITIONALS */
/* START ISSUES */
div.issue .attributes ~ fieldset {
  background: var(--bg-box);
  padding: 45px 30px 15px;
  width: calc(100% + 60px) !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 -30px 20px;
  width: 100%;
  border-bottom: 1px solid var(--border-color-content);
  border-top: 1px solid var(--border-color-content);
  position: relative;
}
div.issue .attributes ~ fieldset legend {
  position: absolute;
  top: 15px;
  left: 30px;
  color: var(--color-main-color);
}
div.issue .attributes + .tabular table {
  padding: 0 !important;
}
div.issue .attributes + .tabular label {
  margin: 0 ;
}
@media screen and (max-width: 1024px) {
  .attributes ~ fieldset {
    width: calc(100% + 20px) !important;
    margin: -1px -10px 20px;
    padding: 15px 10px;
  }
}
/* END ISSUES */
/* START ISSUES EDIT */
.controller-issues #update .attributes + .tabular {
  padding-left: 0;
  padding-right: 0;
}
.controller-issues #update .attributes + .tabular .autoscroll {
  overflow: hidden;
}
.controller-issues #update .attributes + .tabular table {
  padding: 0 !important;
  width: 100%;
  display: block;
}
.controller-issues #update .attributes + .tabular table tbody,
.controller-issues #update .attributes + .tabular table td {
  display: block;
  width: 100%;
}
.controller-issues #update .attributes + .tabular table td {
  display: flex;
  align-items: center;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 10px 0 0 !important;
}
.controller-issues #update .attributes + .tabular table td:last-child {
  padding: 0 !important;
}
.controller-issues #update .attributes + .tabular table tr {
  display: flex;
  align-items: center;
}
.controller-issues #update .attributes + .tabular label {
  margin: 0 ;
}
@media screen and (max-width: 650px) {
  .controller-issues #content #update .attributes + .tabular {
    margin-left: -10px !important;
    margin-right: -10px !important;
  }
  .controller-issues #content #update .attributes + .tabular .autoscroll {
    overflow: hidden;
  }
  .controller-issues #content #update .attributes + .tabular table {
    display: block;
  }
  .controller-issues #content #update .attributes + .tabular table label {
    margin: 0 0 5px;
  }
  .controller-issues #content #update .attributes + .tabular table tr {
    flex-flow: column;
    align-items: flex-start;
  }
  .controller-issues #content #update .attributes + .tabular table td {
    margin: 0 0 10px;
    flex-flow: column;
    align-items: flex-start;
    padding: 0;
  }
  .controller-issues #content #update .attributes + .tabular table th {
    width: 100%;
    padding: 0 0 5px;
  }
}
/* END ISSUES EDIT */
/* --------------------- https://redmine-evolution.com/ -- */
/*@import '_plagin_global_issue_templates.less';*/
/*@import '_plagin_easy_gantt.less';*/
/*@import '_plagin_redmine_issue_badge.less';*/
/*@import '_plagin_redmine_messenger.less';*/
/*@import '_plagin_easy_wbs.less';*/
/*@import '_plagin_redmine_ERPmine.less';*/
/*@import '_plagin_redmine_time-logger.less';*/
/*@import '_plagin_redmine_periodictask_plugin.less';*/
/*@import '_plagin_progressive-projects-list.less';*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START DMSF PLAGIN */
/* START ADMIN PART */
.has-main-menu #header #main-menu ul a.dmsf:after {
  content: "\E108";
}
body #dmsf_users_for_delegate label {
  display: flex;
}
#ajax-modal .edit_dmsf_workflow #selected_step,
#ajax-modal .edit_dmsf_workflow input[type="text"] {
  min-width: 100%;
  max-width: 100%;
}
#ajax-modal .edit_dmsf_workflow .buttons {
  text-align: left;
}
#ajax-modal .edit_dmsf_workflow #add-step-and {
  margin-top: 5px;
}
#ajax-modal .edit_dmsf_workflow #add-step-or {
  margin-top: 10px;
}
#admin-index #admin-menu a.dmsf-approvalworkflows:after {
  background-image: url("../images/icon-color/dmsf-approvalworkflows.svg");
}
.controller-dmsf_workflows #main > #content > h2 {
  background-image: url("../images/icon-color/dmsf-approvalworkflows.svg");
  order: 0;
}
.controller-dmsf_workflows.action-new .form-actions {
  margin-top: 10px;
  overflow: hidden;
  width: 100%;
}
.controller-dmsf_workflows.action-index form .fieldset {
  color: var(--text-color-main);
  overflow: hidden;
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
  margin: 0 0 20px;
  border: none;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
.controller-dmsf_workflows.action-index .autoscroll {
  margin: 0 0 20px;
}
#content form[action*="/settings/plugin/redmine_dmsf"] em.info {
  font-weight: 600;
  color: var(--color-main-color);
  margin: 10px ;
  padding: 0;
  font-size: 1rem;
  line-height: 1.4;
}
@media screen and (max-width: 650px) {
  .controller-dmsf_workflows.action-index form fieldset {
    padding: 15px 10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    margin-left: -10px !important;
    margin-right: -10px !important;
  }
  .controller-dmsf_workflows.action-show .edit_dmsf_workflow input[type="text"] ~ input[type="submit"] {
    margin: 10px 0 0 !important;
  }
  #content form[action*="/settings/plugin/redmine_dmsf"] .jcf-select {
    min-width: 100%;
  }
}
/* SET MAGRIN FOR .BOX + SUBMIT */
.controller-dmsf.action-edit_root #content form input[type="submit"],
.controller-dmsf_workflows.action-new #content form input[type="submit"] {
  background: var(--button-main-bg);
  color: var(--button-main-color);
}
.controller-dmsf.action-edit_root #content form input[type="submit"]:hover,
.controller-dmsf_workflows.action-new #content form input[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
.controller-dmsf.action-edit_root #content .box,
.controller-dmsf_workflows.action-new #content .box {
  margin: 0;
}
/* START MAIN PAGES */
.controller-dmsf_upload #main > #content > h2,
.controller-dmsf #main > #content > h2 {
  background-image: url(../images/icon-color/dmsf.svg);
  padding: 15px 140px 15px 45px;
}
.controller-dmsf_upload.action-multi_upload {
  border: 0;
  padding: 0;
  background: none;
}
.controller-dmsf_upload.action-multi_upload #content form input[type="text"] {
  margin-top: 0;
  margin-bottom: 0;
}
.controller-dmsf_upload.action-multi_upload #content form input[type="submit"] {
  background: var(--button-main-bg);
  color: var(--button-main-color);
}
.controller-dmsf_upload.action-multi_upload #content form input[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
.controller-dmsf_upload.action-multi_upload #dmsf_attachments_fields {
  overflow: hidden;
  width: 100%;
  display: block;
}
.controller-dmsf_upload.action-multi_upload #dmsf_attachments_fields span {
  display: flex;
  align-items: center;
}
.controller-dmsf_upload.action-multi_upload .dmsf-uploader {
  position: relative;
  padding: 0;
  background: none;
  border: 0;
  min-height: 30px;
}
.controller-dmsf_upload.action-multi_upload .dmsf-uploader .info {
  position: absolute;
  bottom: 4px;
  left: 35px;
}
.controller-dmsf_upload.action-upload_files .jcf-select-dmsf-select-version ~ .jcf-select-dmsf-select-version {
  margin: 5px 10px !important;
}
#context-menu a.dmsf-icon-file:after {
  content: "\E113";
}
#context-menu a.icon-email-add:after {
  content: "\E113";
}
.controller-dmsf.action-show .autoscroll {
  margin: 0 0 20px;
}
.controller-dmsf.action-show #main .list.dmsf .icon-folder,
.controller-dmsf.action-show #main .list.dmsf .icon-file {
  width: auto;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  padding: 0 0 0 30px;
  font-size: 1rem;
  line-height: var(--icon-smaller-width);
}
.controller-dmsf.action-show #main .list.dmsf .icon-folder:before,
.controller-dmsf.action-show #main .list.dmsf .icon-file:before,
.controller-dmsf.action-show #main .list.dmsf .icon-folder:after,
.controller-dmsf.action-show #main .list.dmsf .icon-file:after {
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  position: absolute;
  top: 0;
  left: 0;
}
.controller-dmsf.action-show #main .list.dmsf .icon-file:after {
  content: "\E110";
}
.controller-dmsf.action-show #main .list.dmsf .icon-folder:after {
  content: "\E16C";
}
.controller-dmsf.action-show #main .list.dmsf .dmsf-filename {
  min-height: 26px;
  display: flex;
  align-items: center;
}
.controller-dmsf.action-new span.search_for_watchers,
.controller-dmsf.action-new span.add_attachment {
  font-size: inherit;
  line-height: inherit;
}
.controller-dmsf_links.action-new #main #content h3 {
  position: relative;
  font-size: 1.4285rem;
  line-height: 1.4;
  padding: 15px 45px;
  width: calc(100% + 60px);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 -30px 70px;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
  background-size: 30px 30px;
  background-position: 0 50%;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  background-image: url(../images/icon-color/link.svg);
}
.controller-dmsf_links.action-new #main #content .box {
  margin-bottom: 0;
}
.controller-dmsf_links.action-new .form-actions {
  margin-top: 10px;
  overflow: hidden;
  display: block;
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .controller-dmsf_links.action-new #main #content h3 {
    background-color: var(--bg-box);
    background-position: 10px 50%;
    background-size: 25px 25px;
    margin: 0 -10px 20px;
    padding: 15px 20px 15px 45px;
    width: calc(100% + 20px);
    display: flex;
    align-items: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 650px) {
  .controller-dmsf_links.action-new #main #content h3 {
    margin: 0 -10px 20px;
    font-size: 1.1428rem;
    line-height: 1.4;
  }
  .controller-dmsf_links.action-new .select2 {
    width: 100%;
    min-width: 100%;
  }
  .controller-dmsf_links.action-new .select2 ~ * {
    margin: 5px 0 5px !important;
  }
}
/* END MAIN PAGES */
/* START MODAL */
div.modal form[action*="dmsf_folder_permissions"] .form-actions,
div.ui-dialog form[action*="dmsf_folder_permissions"] .form-actions {
  padding: 20px;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 -20px -20px;
  background: var(--bg-fff);
  -webkit-border-radius: 0 0 var(--button-border-radius) var(--button-border-radius);
  -moz-border-radius: 0 0 var(--button-border-radius) var(--button-border-radius);
  border-radius: 0 0 var(--button-border-radius) var(--button-border-radius);
}
div.modal form[action*="dmsf_folder_permissions"] input[type="submit"],
div.ui-dialog form[action*="dmsf_folder_permissions"] input[type="submit"] {
  color: var(--button-main-color);
  background: var(--button-main-bg);
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  border: none;
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 20px 0 0;
  outline: none;
  height: auto;
  -webkit-appearance: none;
}
div.modal form[action*="dmsf_folder_permissions"] input[type="submit"]:hover,
div.ui-dialog form[action*="dmsf_folder_permissions"] input[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
div.modal form[action*="dmsf_folder_permissions"] input[type="submit"] + a[onclick],
div.ui-dialog form[action*="dmsf_folder_permissions"] input[type="submit"] + a[onclick],
div.modal form[action*="dmsf_folder_permissions"] input[type="submit"] + input[type="button"],
div.ui-dialog form[action*="dmsf_folder_permissions"] input[type="submit"] + input[type="button"] {
  color: var(--button-color);
  background: var(--button-bg);
  border: none;
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  font-weight: var(--button-font-weight);
  text-decoration: none;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  outline: none;
  height: auto;
  -webkit-appearance: none;
}
div.modal form[action*="dmsf_folder_permissions"] input[type="submit"] + a[onclick]:hover,
div.ui-dialog form[action*="dmsf_folder_permissions"] input[type="submit"] + a[onclick]:hover,
div.modal form[action*="dmsf_folder_permissions"] input[type="submit"] + input[type="button"]:hover,
div.ui-dialog form[action*="dmsf_folder_permissions"] input[type="submit"] + input[type="button"]:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
/* END MODAL */
#main > #content #new_revision_form_content {
  padding: 20px 0 0;
}
#main > #content #new_revision_form_content br {
  display: block;
  width: 100%;
  height: 5px;
  overflow: hidden;
  position: relative;
}
#main > #content #new_revision_form_content #custom_version_major ~ .select2 {
  max-width: 70px;
}
#main > #content #new_revision_form_content #custom_version_major ~ select {
  padding: 0 !important;
  margin: 0 !important;
}
#main > #content #new_revision_form_content #file_upload_box {
  padding: 0;
}
#main > #content #new_revision_form_content label {
  text-align: left;
  width: 295px;
  margin: 0 0 0 -295px;
}
#main > #content #new_revision_form_content p {
  padding: 0 0 0 295px;
}
#main > #content #custom_version_major + .select2 {
  margin-right: 10px;
}
#main > #content #custom_version_minor + .select2 {
  margin-top: 0 !important;
  margin-right: 10px !important;
}
.controller-dmsf_files.action-show #main .icon-actions {
  color: var(--icon-color-bg);
}
.controller-dmsf_files.action-show #main .icon-actions:before {
  background: var(--icon_bg-bg);
}
.controller-dmsf_files.action-show #main .icon-actions:hover {
  color: var(--icon-color-hover-bg);
}
.controller-dmsf_files.action-show #main .icon-actions:hover:before {
  background: var(--icon_bg_hover-bg);
}
.controller-dmsf_files.action-show .dmsf-id-box {
  padding: 0;
  margin: 0 0 20px;
  display: block;
}
.controller-dmsf_files.action-show .dmsf-revision-box {
  margin: 0 0 30px;
  background: var(--bg-fff);
}
.controller-dmsf_files.action-show .dmsf-revision-box .dmsf-widget-header {
  background: var(--bg-box);
  padding: 20px;
  border: 1px solid var(--border-color-content);
  -webkit-border-radius: var(--border-radius) var(--border-radius) 0 0;
  -moz-border-radius: var(--border-radius) var(--border-radius) 0 0;
  border-radius: var(--border-radius) var(--border-radius) 0 0;
}
.controller-dmsf_files.action-show .dmsf-revision-box .dmsf-revision-inner-box {
  border: 1px solid var(--border-color-content);
  border-top: 0;
  padding: 20px;
  background: none;
  -webkit-border-radius: 0 0 var(--border-radius) var(--border-radius);
  -moz-border-radius: 0 0 var(--border-radius) var(--border-radius);
  border-radius: 0 0 var(--border-radius) var(--border-radius);
}
.controller-dmsf_files.action-show .dmsf-revision-access {
  margin-top: 20px;
}
@media screen and (max-width: 650px) {
  #main > #content #new_revision_form_content {
    padding: 20px 0 0;
  }
  #main > #content #new_revision_form_content #file_upload_box {
    padding: 0 10px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
  }
  #main > #content #new_revision_form_content br {
    display: block;
    width: 100%;
    height: 5px;
    overflow: hidden;
    position: relative;
  }
  #main > #content #new_revision_form_content #custom_version_major ~ .select2 {
    max-width: 70px;
  }
  #main > #content #new_revision_form_content #custom_version_major ~ select {
    padding: 0 !important;
    margin: 0 !important;
  }
  #main > #content #new_revision_form_content label {
    text-align: left;
    width: 100%;
    margin: 0 0 5px;
  }
  #main > #content #new_revision_form_content p {
    padding: 0;
  }
  #main > #content #custom_version_major + .select2 {
    margin-right: 10px;
  }
  #main > #content #custom_version_minor + .select2 {
    margin-top: 0;
  }
}
@media screen and (max-width: 650px) {
  #main > #content #new_revision_form_content #custom_version_major ~ .select2 {
    max-width: 100%;
    margin-top: 5px !important;
  }
  #main > #content #new_revision_form_content #custom_version_major ~ select {
    padding: 0 !important;
    margin: 0 !important;
  }
  #main > #content #new_revision_form_content #custom_version_minor + .select2 {
    margin: 5px 0 !important;
  }
  .controller-dmsf_upload.action-multi_upload #content form input[type="submit"] {
    margin-top: 0;
  }
  .controller-dmsf_upload.action-multi_upload #content form .dmsf_add_attachment {
    margin: 10px 0 0;
  }
}
@media screen and (max-width: 1024px) {
  .controller-dmsf_upload #main > #content > h2,
  .controller-dmsf #main > #content > h2 {
    padding: 15px 140px 15px 45px;
  }
}
@media screen and (max-width: 480px) {
  .controller-dmsf_upload #main > #content > h2,
  .controller-dmsf #main > #content > h2 {
    padding: 45px 10px 15px 45px;
  }
}
/* END DMSF PLAGIN  */
/*@import '_plagin_redmine_sprint.less';*/
/*@import '_plagin_redmine_EVM.less';*/
/*@import '_plagin_risk.less';*/
/*@import '_plagin_redmine_release_log_queues.less';*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START VAULT */
#tab-content-keys > br {
  display: none;
}
.public_key_view p {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 0 10px;
  color: var(--color-dark-grey);
  font-size: 0.85714286rem;
  line-height: 1rem;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  padding: 0 0 0 295px;
}
.public_key_view p > label {
  margin: 0 10px 0 0 !important;
  flex: 0 1 auto;
  text-align: left;
  color: var(--text-color-main);
  font-size: 1rem;
  line-height: 1.4;
}
.public_key_view p > label:first-child {
  font-weight: 600;
  margin: 0 0 0 -295px !important;
  width: 295px;
  padding: 0 10px 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (max-width: 650px) {
  .public_key_view p {
    padding: 0;
  }
  .public_key_view p label:first-child {
    margin: 0 0 5px 0!important;
    padding: 0;
    width: 100%;
    float: none;
    display: block;
  }
}
.controller-vault_settings #content #settings form[action="/vault_settings/save"] input[type="submit"] {
  margin: 0 0 20px;
  /*20px 0;*/
}
.controller-vault_settings #content #settings form[action="/vault_settings/save"] #settings_encryption_key {
  margin: 0 0 5px;
}
.controller-vault_settings #content #settings form[action="/vault_settings/backup"] input[type="submit"] {
  margin: 0 0 10px;
}
.controller-vault_settings #content #settings form[action="/vault_settings/restore"] input[type="submit"] {
  margin: 10px 0 0;
}
.controller-vault_settings #content form .box input[type="submit"] {
  color: var(--button-main-color);
  background: var(--button-main-bg);
}
.controller-vault_settings #content form .box input[type="submit"]:hover {
  color: var(--button-main-color-hover);
  background: var(--button-main-bg-hover);
}
.controller-vault_settings table {
  width: 100%;
}
.controller-vault_settings table th {
  text-align: left;
}
#content .holder-key-form {
  margin: 0 0 30px;
}
#content .holder-key-form form input[type="text"].autocomplete {
  width: auto;
  flex: 0 0 auto;
}
#content .holder-key-form .autoscroll {
  margin: 0 0 20px;
}
.controller-keys #content .holder-key-form {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.controller-keys #content .holder-key-form form {
  width: auto;
  flex: 0 0 auto;
  margin: 0 10px 0 0;
}
.controller-keys #content .holder-key-form form input[type="submit"] {
  margin: 5px 0;
}
.controller-keys #content .holder-key-form form:first-of-type {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
}
#vault_whitelist .whitelist_users br {
  display: none;
}
#vault_whitelist .whitelist_users td {
  vertical-align: top;
}
@media screen and (max-width: 650px) {
  .controller-keys #content .holder-key-form {
    display: block;
  }
  .controller-keys #content .holder-key-form form {
    width: 100%;
    margin: 0;
  }
  .controller-keys #content .holder-key-form form input[type="submit"] {
    margin: 10px 0 0 !important;
  }
  .controller-keys #content .holder-key-form .button_to {
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .controller-keys #content .holder-key-form form input[type="text"].autocomplete {
    width: 100%;
    margin: 0 0 10px;
  }
  .controller-keys #content .holder-key-form form label {
    margin: 0 10px 0 0;
  }
}
/* END VAULT */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START CUSTOM WORKFLOWS */
#content #new_custom_workflow div.box > fieldset .collapsible,
#content #new_custom_workflow div.box > fieldset.tabular .collapsible {
  position: relative;
  border: 0;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  padding: 50px 30px 15px;
  margin: 0 0 15px;
  background: var(--bg-fff);
  border: none;
  display: flex;
}
#content #new_custom_workflow div.box > fieldset .collapsible legend,
#content #new_custom_workflow div.box > fieldset.tabular .collapsible legend {
  position: absolute;
  width: 100%;
  padding: 0 20px 0 50px;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  height: 40px;
  top: 0;
  left: 0;
  font-weight: 600;
  font-size: 1rem;
  line-height: 40px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
  color: var(--color-main-color);
}
#content #new_custom_workflow div.box > fieldset .collapsible legend:after,
#content #new_custom_workflow div.box > fieldset.tabular .collapsible legend:after {
  position: absolute;
  top: 5px;
  left: 10px;
  width: var(--icon-width);
  height: var(--icon-width);
  font-size: var(--icon-width);
  background-size: var(--icon-width) var(--icon-width);
  content: "\E155";
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#content #new_custom_workflow div.box > fieldset .collapsible.collapsed,
#content #new_custom_workflow div.box > fieldset.tabular .collapsible.collapsed {
  padding: 25px 30px 15px;
}
#content #new_custom_workflow div.box > fieldset .collapsible.collapsed legend,
#content #new_custom_workflow div.box > fieldset.tabular .collapsible.collapsed legend {
  color: var(--text-color-main);
}
#content #new_custom_workflow div.box > fieldset .collapsible.collapsed legend:after,
#content #new_custom_workflow div.box > fieldset.tabular .collapsible.collapsed legend:after {
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
}
@media screen and (max-width: 650px) {
  #content #new_custom_workflow div.box > fieldset,
  #content #new_custom_workflow div.box > fieldset.tabular {
    padding-top: 15px;
  }
  #content #new_custom_workflow div.box > fieldset legend,
  #content #new_custom_workflow div.box > fieldset.tabular legend {
    position: relative;
    top: 0 !important;
    left: 0 !important;
    padding: 15px 0 0;
    margin: 0 !important;
    display: block;
    width: 100%;
    z-index: 2;
  }
  #content #new_custom_workflow div.box > fieldset legend:before,
  #content #new_custom_workflow div.box > fieldset.tabular legend:before {
    content: '';
    display: block;
    clear: both;
    position: absolute;
    top: 0;
    left: -10px;
    width: calc(100% + 20px);
    height: 100%;
    background: var(--bg-mobile);
    z-index: -1;
  }
}
/* END CUSTOM WORKFLOWS */
/* --------------------- https://redmine-evolution.com/ -- */
/*@import '_plagin_kanban.less';*/
/*@import '_plagin_like.less';*/
/*@import '_plagin_dashboard';*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START SPECTATOR PLAGIN */
.controller-spectator #main > #content h1 {
  position: relative;
  font-size: 1.4285rem;
  line-height: 1.4;
  padding: 15px 45px;
  width: calc(100% + 60px);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 -30px 70px;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
  background-size: 30px 30px;
  background-position: 0 50%;
  background-repeat: no-repeat;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.controller-spectator #main > #content h3 {
  font-size: 1rem;
  line-height: 1.4;
  color: var(--text-color-main);
  overflow: hidden;
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
  margin: 0;
  border: none;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.controller-spectator #main > #content #change_user_form {
  width: calc(100% - 295px);
  display: flex;
}
.controller-spectator #main > #content #change_user_form input[type="submit"] {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
@media screen and (min-width: 1000px) {
  .controller-spectator.big-menu #main > #content #change_user_form {
    width: calc(100% - 200px);
  }
}
@media screen and (max-width: 1024px) {
  .controller-spectator #main > #content h1 {
    background-color: var(--bg-box);
    background-position: 10px 50%;
    background-size: 25px 25px;
    margin: 0 -10px 20px;
    padding: 15px 20px 15px 45px;
    width: calc(100% + 20px);
    display: flex;
    align-items: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 650px) {
  .controller-spectator #main > #content h1 {
    margin: 0 -10px 20px;
    font-size: 1.1428rem;
    line-height: 1.4;
  }
  .controller-spectator #main > #content h3 {
    padding: 15px 10px 15px;
    flex-flow: column;
    width: calc(100% + 20px);
    margin: 0 -10px;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    align-items: flex-start;
  }
  .controller-spectator #main > #content #change_user_form {
    flex-flow: column;
    margin: 5px 0 0;
    width: 100%;
  }
  .controller-spectator #main > #content #change_user_form input[type="submit"] {
    width: 100%;
    margin: 15px 0 0 !important;
  }
}
/* END SPECTATOR PLAGIN */
/* --------------------- https://redmine-evolution.com/ -- */
/* START GIT HOSTING */
form[action="/settings/plugin/redmine_git_hosting"] .git_hosting_access_box {
  border-width: 1px;
  margin: 0;
  padding: 10px;
  background-color: var(--notice-successfu-bg);
  border-color: var(--notice-successfu-main);
  color: var(--notice-successfu-bg-text);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
form[action="/settings/plugin/redmine_git_hosting"] .label {
  color: var(--button-color-disabled);
  text-shadow: 0 0 0 rgba(0, 0, 0, 0);
  border-radius: var(--border-radius-small);
  background-color: var(--button-bg-disabled);
}
form[action="/settings/plugin/redmine_git_hosting"] .label-important {
  background-color: var(--color-error);
}
form[action="/settings/plugin/redmine_git_hosting"] .label-error {
  background-color: var(--color-error);
}
form[action="/settings/plugin/redmine_git_hosting"] .label-warning {
  background-color: var(--color-warning);
}
form[action="/settings/plugin/redmine_git_hosting"] .label-success {
  background-color: var(--color-green);
}
form[action="/settings/plugin/redmine_git_hosting"] .label-info {
  background-color: var(--color-blue);
}
form[action="/settings/plugin/redmine_git_hosting"] .git_hosting_access_box em {
  color: var(--color-blue);
}
form[action="/settings/plugin/redmine_git_hosting"] .thumbnail {
  border: 1px solid var(--border-color);
}
form[action="/settings/plugin/redmine_git_hosting"] #statistics-global .thumbnail {
  background: none repeat scroll 0 0 var(--border-color);
}
form[action="/settings/plugin/redmine_git_hosting"] .thumbnail h5 {
  background: none repeat scroll 0 0 var(--notice-successfu-main);
  color: var(--notice-successfu-main-text);
}
#tab-content-gitolite_recycle_bin .nodata {
  padding: 10px 0;
}
/* END GIT HOSTING */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START SIDEBAR PROJECTS */
#main #sidebar .projects.root {
  padding: 0;
  margin: 0 10px 0 0;
  width: calc(100% - 10px);
  list-style: none;
}
#main #sidebar .projects.root div.root {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
#main #sidebar .projects.root li.root {
  margin: 5px 0 0;
}
#main #sidebar .projects.root li.root:first-child {
  margin: 0;
}
#main #sidebar .projects.root a.project {
  height: auto;
  min-height: auto;
  min-width: auto;
  font-size: 1rem;
  line-height: var(--icon-width);
  font-weight: var(--button-font-weight);
  padding: 0 10px;
  height: var(--icon-width);
  margin: 0;
  text-decoration: none;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  display: block;
  color: var(--icon-color);
  background: var(--bg);
}
#main #sidebar .projects.root a.project:after,
#main #sidebar .projects.root a.project:before {
  display: none;
}
#main #sidebar .projects.root a.project:hover {
  color: var(--icon-color-hover);
  background: var(--icon_bg_hover);
}
#main #sidebar .projects.root .link_child {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  vertical-align: middle;
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
  cursor: pointer;
  webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
}
#main #sidebar .projects.root .link_child:after {
  content: "\E14F";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main #sidebar .projects.root .link_child:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main #sidebar .projects.root .link_child:hover {
  color: var(--icon_color_active);
  background-image: none !important;
}
#main #sidebar .projects.root .link_child:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main #sidebar .projects.root .link_child + a.project {
  width: calc(100% - 36px);
}
#main #sidebar .projects.root .link_child.icon-arrow-down {
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}
#main #sidebar .projects.root .root.active > .root > a.project {
  color: var(--icon_color_active);
  background-image: none !important;
}
#main #sidebar .projects.root .root.active > .root > a.project:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.has-sidebar #wrapper #sidebar ul.projects ul.projects {
  margin: 0 0 0 36px;
}
.has-sidebar #wrapper #sidebar ul.projects ul.projects li {
  margin: 5px 0 0 0;
}
.has-sidebar #wrapper #sidebar ul.projects ul.projects li:first-child {
  margin: 0;
}
/* END SIDEBAR PROJECTS */
/* START FLYOUT MENU */
#wrapper .flyout-menu ul li.has-child.has-child .root,
#wrapper .flyout-menu ul li:first-child.has-child .root {
  display: flex;
  align-items: center;
  border-top: 1px solid var(--flyout_menu_border);
}
#wrapper .flyout-menu ul li.has-child.has-child .root > a,
#wrapper .flyout-menu ul li:first-child.has-child .root > a {
  border-top: 0;
}
#wrapper .flyout-menu ul li.has-child.has-child .root .project,
#wrapper .flyout-menu ul li:first-child.has-child .root .project {
  max-width: calc(100% - 40px);
  overflow: hidden;
  text-overflow: ellipsis;
  width: calc(100% - 40px);
  display: block;
}
#wrapper .flyout-menu ul li.has-child.has-child a.link_child,
#wrapper .flyout-menu ul li:first-child.has-child a.link_child {
  width: var(--icon-width);
  height: var(--icon-width);
  min-width: var(--icon-width);
  min-height: var(--icon-width);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 5px;
  background: var(--flyout_menu_button_bg);
  color: var(--flyout_menu_button_color);
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  position: relative;
}
#wrapper .flyout-menu ul li.has-child.has-child a.link_child:after,
#wrapper .flyout-menu ul li:first-child.has-child a.link_child:after {
  content: "\E14F";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  color: var(--flyout_menu_button_color);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width);
  webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu ul li.has-child.has-child a.link_child.icon-arrow-down:after,
#wrapper .flyout-menu ul li:first-child.has-child a.link_child.icon-arrow-down:after {
  webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}
#wrapper .flyout-menu ul li.has-child.has-child a.project,
#wrapper .flyout-menu ul li:first-child.has-child a.project {
  flex: 1 0 auto;
}
#wrapper .flyout-menu ul li.has-child.active .root > a.project,
#wrapper .flyout-menu ul li:first-child.active .root > a.project {
  background: var(--flyout_menu_bg_selected);
  color: var(--flyout_menu_color_selected);
}
/* END FLYOUT MENU */
/* --------------------- https://redmine-evolution.com/ -- */
.controller-keys #keys_table a.keys-actions {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color);
  vertical-align: middle;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.controller-keys #keys_table a.keys-actions:after {
  content: '';
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: none;
  /*color var(--time-hover) ease-in-out;*/
  -moz-transition: none;
  /*color var(--time-hover) ease-in-out;*/
  transition: none;
  /*color var(--time-hover) ease-in-out;*/
}
.controller-keys #keys_table a.keys-actions:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.controller-keys #keys_table a.keys-actions:hover {
  color: var(--icon-color-hover-list) !important;
  /*var(--icon-color-hover) !important;*/
}
.controller-keys #keys_table a.keys-actions:hover:before {
  background: var(--color-main-color);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-keys #keys_table a.keys-actions img,
.controller-keys #keys_table a.keys-actions .fa {
  display: none;
}
.controller-keys #keys_table a.keys-actions[href*="/edit"]:after {
  content: "\E113";
}
.controller-keys #keys_table a.keys-actions[href*="/copy"]:after,
.controller-keys #keys_table a.keys-actions.copy-key:after {
  content: "\E0FA";
}
.controller-keys #keys_table a.keys-actions[data-method="delete"]:after {
  content: "\E104";
}
.controller-keys.action-index #main #content {
  padding-bottom: 76px;
}
#context-menu #vault_context_menu .conext_menu {
  padding: 0 0 0 20px;
  background-image: none;
  background-color: var(--bg-fff);
  display: block;
  position: relative;
  font-size: 0.85714286rem;
  line-height: 1.4;
  height: auto;
  min-height: auto;
  width: 100%;
  color: var(--drop-text-color);
  padding: 4px 5px 4px 30px;
  background-image: none !important;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  z-index: 2;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#context-menu #vault_context_menu .conext_menu:after {
  position: absolute;
  top: 50%;
  margin: -10px 0 0;
  left: 5px;
  display: block;
  clear: both;
  height: var(--icon-width-small);
  width: var(--icon-width-small);
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  color: var(--drop-text-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#context-menu #vault_context_menu .conext_menu:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  width: 0;
  height: 100%;
  background: var(--light-bg);
  z-index: -1;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-transition: width var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out;
  margin: 0 !important;
}
#context-menu #vault_context_menu .conext_menu:hover {
  text-decoration: none;
  color: var(--color-main-color);
  border: 0;
}
#context-menu #vault_context_menu .conext_menu:hover:after {
  color: var(--color-main-color);
}
#context-menu #vault_context_menu .conext_menu:hover:before {
  width: 100%;
  background: var(--light-bg);
}
#context-menu #vault_context_menu .conext_menu.disabled {
  color: var(--color-main-color);
  border: 0;
}
#context-menu #vault_context_menu .conext_menu.disabled:after {
  color: var(--color-main-color);
}
#context-menu #vault_context_menu .conext_menu.disabled {
  color: var(--notice-error-main-text);
  background: var(--notice-error-bg);
}
#context-menu #vault_context_menu .conext_menu.disabled:after {
  color: var(--notice-error-main-text);
}
#context-menu #vault_context_menu .conext_menu.disabled:before {
  width: 100%;
  background: var(--notice-error-bg);
}
#context-menu #vault_context_menu .conext_menu.disabled:hover {
  color: var(--notice-error-main-text);
  background: var(--notice-error-bg);
}
#context-menu #vault_context_menu .conext_menu[href*="/edit"]:after {
  content: "\E113";
}
#context-menu #vault_context_menu .conext_menu[href*="/copy"]:after,
#context-menu #vault_context_menu .conext_menu[data-copytarget]:after {
  content: "\E0FA";
}
#context-menu #vault_context_menu .conext_menu img,
#context-menu #vault_context_menu .conext_menu .fa {
  display: none;
}
.new_vault_key #vault_whitelist {
  display: block;
}
.new_vault_key #vault_whitelist label.whitelist_users {
  width: 100%;
  text-align: left !important;
}
.new_vault_key #vault_whitelist table.whitelist_users {
  padding-left: 0;
  margin: 0;
}
.new_vault_key #vault_whitelist table.whitelist_users br {
  display: none;
}
.new_vault_key #vault_whitelist table.whitelist_users label.no-css {
  font-weight: bold;
}
.controller-keys.action-new #main > #content h1 {
  position: relative;
  font-size: 1.4285rem;
  line-height: 1.4;
  padding: 15px 45px;
  width: calc(100% + 60px);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 -30px 20px;
  border-bottom: 1px solid var(--border-color);
  background-size: 30px 30px;
  background-position: 0 50%;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.controller-keys.action-new a[href*="/keys"] {
  display: inline-block;
  border: none;
  padding: 8px 15px;
  width: auto;
  height: 30px;
  font-size: 1rem;
  line-height: 1rem;
  margin: 10px 0 0;
  text-align: center;
  font-weight: var(--button-font-weight);
  color: var(--button-color);
  background: var(--button-bg);
  text-decoration: none;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.controller-keys.action-new a[href*="/keys"]:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#main #content form#new_gitolite_public_key input[type="submit"] + a {
  color: var(--button-color-bg);
  background: var(--button-bg-bg);
}
#main #content form#new_gitolite_public_key input[type="submit"] + a:hover {
  color: var(--button-color-hover-bg);
  background: var(--button-bg-hover-bg);
}
#main #content .tab-content .edit_user input[type="submit"] {
  margin-top: 30px;
}
@media screen and (max-width: 1024px) {
  .controller-keys.action-new #main > #content h1 {
    background-color: var(--bg-box);
    background-position: 10px 50%;
    background-size: 25px 25px;
    margin: 0 -10px 20px;
    padding: 15px 20px 15px 45px;
    width: calc(100% + 20px);
    display: flex;
    align-items: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 650px) {
  .controller-keys.action-new #main > #content h1 {
    margin: 0 -10px 20px;
    font-size: 1.1428rem;
    line-height: 1.4;
  }
  .controller-keys.action-new a[href*="/keys"] {
    width: 100%;
  }
  #content .tab-content#tab-content-keys fieldset {
    width: calc(100% + 20px);
    margin-left: -10px;
    margin-right: -10px;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
}
.controller-gitolite_public_keys.action-index #main > #content h3 {
  position: relative;
  font-size: 1.4285rem;
  line-height: 1.4;
  padding: 15px 45px;
  width: calc(100% + 60px);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 -30px 20px;
  border-bottom: 1px solid var(--border-color);
  background-size: 30px 30px;
  background-position: 0 50%;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.controller-gitolite_public_keys.action-index .public_key_view {
  color: var(--text-color-main);
  overflow: hidden;
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 52px 20px 20px;
  margin: 0 0 20px;
  border: none;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
.controller-gitolite_public_keys.action-index .public_key_view legend {
  left: 20px;
  position: absolute;
  top: 17px;
  font-weight: 600;
  color: var(--color-main-color);
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .controller-gitolite_public_keys.action-index #main > #content h3 {
    background-color: var(--bg-box);
    background-position: 10px 50%;
    background-size: 25px 25px;
    margin: 0 -10px 20px;
    padding: 15px 20px 15px 45px;
    width: calc(100% + 20px);
    display: flex;
    align-items: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 650px) {
  .controller-gitolite_public_keys.action-index #main > #content h3 {
    margin: 0 -10px 20px;
    font-size: 1.1428rem;
    line-height: 1.4;
  }
  .controller-gitolite_public_keys.action-index #main > #content .public_key_view {
    padding: 15px 10px;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  .controller-gitolite_public_keys.action-index #main > #content .public_key_view legend {
    padding: 10px;
    top: 0;
    left: 0;
    position: relative;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    background: var(--bg-mobile);
  }
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START REMINDER */
.controller-mail_reminders.action-index fieldset {
  overflow: hidden;
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 52px 20px 15px;
  border: none;
  margin-bottom: 20px;
  background: var(--bg-other);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
.controller-mail_reminders.action-index fieldset legend {
  position: absolute;
  top: 17px;
  left: 20px;
  font-weight: 600;
  color: var(--color-main-color);
  margin: 0;
  padding: 0;
}
.controller-mail_reminders.action-index fieldset p,
.controller-mail_reminders.action-index fieldset #interval_values-new,
.controller-mail_reminders.action-index fieldset #reminder_interval-new {
  margin: 0 0 10px;
}
.controller-mail_reminders.action-index fieldset label {
  flex: 0 1 auto;
  text-align: left;
  float: left;
  display: flex;
  color: var(--text-color-main);
  font-size: 1rem;
  line-height: 1.4;
  margin: 0 10px 0 0;
  font-weight: 600;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-mail_reminders.action-index fieldset label[for="reminder_Query"] {
  display: block;
  margin: 0 0 5px;
}
.controller-mail_reminders.action-index fieldset #interval_value ~ .select2,
.controller-mail_reminders.action-index fieldset #reminder_interval ~ .select2 {
  margin-top: 5px;
}
.controller-mail_reminders.action-index fieldset #reporter + label,
.controller-mail_reminders.action-index fieldset #developer + label,
.controller-mail_reminders.action-index fieldset #manager + label {
  order: 1;
  font-weight: normal;
}
.controller-mail_reminders.action-index fieldset #reminder_query_id ~ .select2 {
  width: calc(100% - 40px) !important;
}
.controller-mail_reminders.action-index #content form input[type="submit"] {
  margin-top: 20px;
}
@media screen and (max-width: 650px) {
  .controller-mail_reminders.action-index fieldset {
    padding: 15px 10px 15px;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  .controller-mail_reminders.action-index fieldset legend {
    padding: 10px;
    top: 0;
    left: 0;
    position: relative;
    background: var(--bg-mobile);
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    display: block;
  }
  .controller-mail_reminders.action-index .splitcontentleft {
    margin: 0 0 20px;
  }
}
.controller-reminder_configuration.action-edit input[type="text"] {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}
.controller-reminder_configuration.action-edit input[type="text"] ~ * {
  margin: 10px 0 !important;
}
.controller-reminder_configuration.action-edit input[type="text"] ~ input[type="checkbox"] {
  margin: 10px 10px 10px 0 !important;
}
.controller-reminder_configuration.action-edit .edit_reminder_configuration {
  overflow: hidden;
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 15px 20px 15px;
  border: none;
  margin: 0;
  background: var(--bg-other);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
@media screen and (max-width: 650px) {
  .controller-reminder_configuration.action-edit #main > #content > .edit_reminder_configuration {
    padding: 15px 10px 15px;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  .controller-reminder_configuration.action-edit input[type="text"] ~ input[type="checkbox"] {
    margin: 0 10px 10px 0 !important;
  }
}
/* END REMINDER */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START CANNED RESPONSES */
.controller-canned_responses.action-index #main > #content h3 {
  position: relative;
  font-size: 1.4285rem;
  line-height: 1.4;
  padding: 15px 45px;
  width: calc(100% + 60px);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 -30px 20px;
  border-bottom: 1px solid var(--border-color);
  background-size: 30px 30px;
  background-position: 0 50%;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
@media screen and (max-width: 1024px) {
  .controller-canned_responses.action-index #main > #content h3 {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (max-width: 650px) {
  .controller-canned_responses.action-index #main > #content h3 {
    margin: 0 -10px 20px;
    font-size: 1.1428rem;
    line-height: 1.4;
  }
}
/* END CANNED RESPONSES */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ISSUES INLINE EDIT */
.controller-issues #main .list-inner-box .inner-box {
  position: relative;
}
.controller-issues #main .list-inner-box .icon.icon-edit {
  position: absolute;
  top: 50%;
  right: 0;
  margin: -13px 0 0;
  opacity: 0 !important;
}
.controller-issues #main .list-inner-box:hover .icon.icon-edit {
  opacity: 1 !important;
}
.controller-issues table.list .priority-1 .priority option,
.controller-issues table.list .priority-2 .priority option,
.controller-issues table.list .priority-3 .priority option,
.controller-issues table.list .priority-4 .priority option,
.controller-issues table.list .priority-5 .priority option {
  color: var(--drop-text-color);
  position: relative;
}
/* END ISSUES INLINE EDIT */
/* --------------------- https://redmine-evolution.com/ -- */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl92YXJzX2NvbG91ci5sZXNzIiwiX3ZhcnMubGVzcyIsIl9wbGFnaW5fZHluYW1pY0VkaXQubGVzcyIsIl92YXJzLWljb24ubGVzcyIsIl9wbGFnaW5fYWRkaXRpb25hbHMubGVzcyIsIl9wbGFnaW5fcmVkbWluZV9kbXNmLmxlc3MiLCJfcGxhZ2luX3JlZG1pbmVfdmF1bHQubGVzcyIsIl9wbGFnaW5fcmVkbWluZV9jdXN0b21fd29ya2Zsb3dzLmxlc3MiLCJfcGxhZ2luX3NwZWN0YXRvci5sZXNzIiwiX3BsYWdpbl9naXRfaG9zdGluZy5sZXNzIiwiX3BsYWdpbl9zaWRlYmFyX3Byb2plY3RzLmxlc3MiLCJfcGx1Z2luX2tleXMubGVzcyIsIl9wbGFnaW5fcmVkbWluZV9yZW1pbmRlci5sZXNzIiwiX3BsYWdpbl9yZWRtaW5lX2Nhbm5lZF9yZXNwb25zZXMubGVzcyIsIl9wbGFnaW5fcmVkbWluZV9pc3N1ZXNfaW5saW5lX2VkaXQubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWlUQTs7RUFHRSxpQkFBQTtFQUNBLHFCQUFBO0VBQ0EscUJBQUE7RUFDQSwyQkFBQTtFQUNBLDJCQUFBO0VBRUUsb0JBQUE7RUFDRiwwQkFBQTtFQUNBLCtCQUFBO0VBQ0Esc0JBQUE7RUFDQSwyQkFBQTtFQUNBLGtDQUFBO0VBQ0EsdUJBQUE7RUFDQSw0QkFBQTtFQUNBLHVCQUFBO0VB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QUE7RUFDQSxvQkFBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxPQUFPLGlCQUFQO0VBQ0EsOEJBQUE7RUFDQSwyQkFBQTtFQUNBLHNCQUFBO0VBQ0Esb0JBQUE7RUFDQSx5QkFBeUIsbUJBQXpCO0VBQ0EsMEJBQUE7RUFDQSwwQkFBQTtFQUNBLDRCQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsZUFBQTs7QUFNVixtQkFBc0M7RUFJOUIsNEJBRkgsYUFDQyxNQUNJLFdBQ0E7SUFDRSxXQUFBO0lBQ0EsY0FBQTtJQUNBLGVBQUE7OztBQVFaLG1CQUFxQztFQUk3Qiw0QkFGSCxhQUNDLE1BQ0ksV0FDQTtJQUNFLG9CQUFBO0lBQ0Esb0JBQUE7SUFDQSxnQkFBQTs7Ozs7OztBQ2xEWixrQkFDRSxNQUNFLGdCQUNFO0VBQ0Usa0JBQUE7O0FBSlIsa0JBQ0UsTUFDRSxnQkFLRSxNQUFLO0VBQ0gsa0JBQUE7RUFDQSxRQUFBO0VBQ0EsUUFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7O0FBR0Ysa0JBZEosTUFDRSxnQkFhRyxNQUNDLE1BQUs7RUFDSCxxQkFBQTs7QUFqQlYsa0JBdUJFLE1BQUssS0FDSCxZQUtFLFVBQ0U7QUE5QlIsa0JBdUJFLE1BQUssS0FFSCxZQUlFLFVBQ0U7QUE5QlIsa0JBdUJFLE1BQUssS0FHSCxZQUdFLFVBQ0U7QUE5QlIsa0JBdUJFLE1BQUssS0FJSCxZQUVFLFVBQ0U7QUE5QlIsa0JBdUJFLE1BQUssS0FLSCxZQUNFLFVBQ0U7RUFDRSxPQUFPLHNCQUFQO0VBQ0Esa0JBQUEiLCJmaWxlIjoicGx1Z2luLWJhc2Utc3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgQ09MT1IgVkFSSUFCTEVTICovXHJcbkBmZmY6ICNmZmZmZmY7XHJcbkBkYXJrOiAjMmYyZjJmO1xyXG5Ac3VkZXJkYXJrZ3JleTogIzc3Nzc3NztcclxuQGdyZXk6ICNjY2NjY2M7XHJcbi8vQGJsdWU6ICM0MzhhZmY7XHJcbkBibHVlOiAjNzYwMGJhO1xyXG5AYmx1ZTUwOiAjYTFjNGZmO1xyXG5AYmx1ZVJnYmE6IDY3LDEzOCwyNTU7XHJcbi8vQGxpZ2h0Qmx1ZTogI2VjZjNmZjtcclxuQGxpZ2h0Qmx1ZTogI2Y3MDBmNDtcclxuQGJvZHk6ICNmOGY0ZmU7XHJcbi8vQGJvZHk6ICNmNGY3ZmM7XHJcbkByZWRfYm9yZGVyX2Vycm9yOiAjZmY2NjY2O1xyXG5AcmVkX2Vycm9mOiAjZTQ3ZDdkO1xyXG5AZ3JleV9saWdodDogI2QwZDBkMDtcclxuQHN1cGVyX2dyZXlfbGlnaHQ6ICNlYmViZWM7XHJcbkBwcmlvcml0eS0xOiAjNDM4YWZmO1xyXG5AcHJpb3JpdHktMjogIzZhYzI1OTtcclxuQHByaW9yaXR5LTM6ICNmNWMyMjU7XHJcbkBwcmlvcml0eS00OiAjZjcwMGY0O1xyXG5AcHJpb3JpdHktNTogI2YwMDtcclxuQHRyYWNrZXItMTogI2ZkNzI4NTtcclxuQHRyYWNrZXItMjogIzZhYzI1OTtcclxuQHRyYWNrZXItMzogIzU0OTNmZjtcclxuQGhvdmVyQmc6ICNkZGVjZmI7XHJcbkBmYmZjZmU6ICNmYmZjZmU7XHJcbkBncmVlbi1kYXJrOiAjNmFjMjU5O1xyXG5AcmVkOiAjZmQ3Mjg1O1xyXG5AZGFya2dyZXk6ICNBNUE1QTU7XHJcbkBiZ21lbnU6ICM4MThFOTQ7XHJcbi8vQHRvb2x0aXAtYmc6ICM0MzhhZmY7XHJcbkB0b29sdGlwLWJnOiAjZjAwO1xyXG5Ac2VsZWN0VGFibGU6ICNhZmQ2ZmQ7XHJcblxyXG5Abm90aWNlLXN1Y2Nlc3NmdWw6ICM2YWMyNTk7XHJcbkByZWQ6ICNmZDcyODU7XHJcblxyXG5AZXJyb3I6ICNmMDA7XHJcbkBpY29ud2FybmluZzogI2ZmODQwMDtcclxuXHJcblxyXG5AbWFpbkJ1dHRvbkJnOiBAYmx1ZTtcclxuQG1haW5CdXR0b25Db2xvcjogQGZmZjtcclxuQG1haW5CdXR0b25CZ0hvdmVyOiBAYm9keTtcclxuQG1haW5CdXR0b25Db2xvckhvdmVyOiBAYmx1ZTtcclxuXHJcbkBtYWluQnV0dG9uQmctYm94OiBAYmx1ZTtcclxuQG1haW5CdXR0b25Db2xvci1ib3g6IEBmZmY7XHJcbkBtYWluQnV0dG9uQmdIb3Zlci1ib3g6IEBmZmY7XHJcbkBtYWluQnV0dG9uQ29sb3JIb3Zlci1ib3g6IEBibHVlO1xyXG5cclxuQGJ1dHRvbkJnOiBAYm9keTtcclxuQGJ1dHRvbkNsb2xvcjogQGJsdWU7XHJcbkBidXR0b25CZ0hvdmVyOiBAYmx1ZTtcclxuQGJ1dHRvbkNsb2xvckhvdmVyOiBAZmZmO1xyXG5cclxuQGJ1dHRvbldoaXRlOiBAZmZmO1xyXG5AYnV0dG9uV2hpdGVDbG9sb3I6IEBibHVlO1xyXG5AYnV0dG9uV2hpdGVCZ0hvdmVyOiBAYmx1ZTtcclxuQGJ1dHRvbldoaXRlQ2xvbG9ySG92ZXI6IEBmZmY7XHJcblxyXG5AYnV0dG9uQmdEaXNhYmxlZDogQGRhcmtncmV5O1xyXG5AYnV0dG9uQ2xvbG9yRGlzYWJsZWQ6IEBmZmY7XHJcbkBidXR0b25CZ0hvdmVyRGlzYWJsZWQ6IEBkYXJrZ3JleTtcclxuQGJ1dHRvbkNsb2xvckhvdmVyRGlzYWJsZWQ6IEBmZmY7XHJcblxyXG5AZHJvcHBMaW5rTWFpbjogQGJvZHk7XHJcbkBkcm9wcExpbmtNYWluQ29sb3I6IEBkYXJrO1xyXG5AZHJvcHBMaW5rTWFpbkFycm93OiBAYmdtZW51O1xyXG5AZHJvcHBMaW5rTWFpbkFycm93Qmc6IEBmZmY7XHJcbkBkcm9wcExpbmtNYWluQXJyb3dIb3ZlcjogQGJsdWU7XHJcblxyXG5AaWNvbi1ib3gtY29sb3I6IEBiZ21lbnU7XHJcbkBpY29uLWJveC1iYWNrZ3JvdW5kOiBAZmZmO1xyXG5AaWNvbi1ib3gtY29sb3ItaG92ZXI6IEBibHVlO1xyXG5cclxuQGljb24tc2VhcmNoLWNvbG9yOiBAYmdtZW51O1xyXG5AaWNvbi1zZWFyY2gtYmFja2dyb3VuZDogQGZmZjtcclxuQGljb24tc2VhcmNoLWNvbG9yLWhvdmVyOiBAZmZmO1xyXG5AaWNvbi1zZWFyY2gtYmFja2dyb3VuZC1ob3ZlcjogQGJsdWU7XHJcblxyXG4vKiBFTkQgQ09MT1IgVkFSSUFCTEVTICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBOT1RJQ0UgKi9cclxuXHJcbkBiZy1ub3RpY2Utc3VjY2Vzc2Z1bDogI2UxZjNkZTtcclxuXHJcbkByZWQtbm90aWNlLWVycm9yOiAjZmQ3Mjg1O1xyXG5AYmctbm90aWNlLWVycm9yOiAjZmZlM2U3O1xyXG5cclxuLy9AYmx1ZS1saWdodC1iZzogI2UwZWNmZjtcclxuQGJsdWUtbGlnaHQtYmc6ICNjZmFlZTI7XHJcblxyXG4vKkQ5RThGRiovXHJcblxyXG5AeWVsbG93OiAjZjVjMjI1O1xyXG5AbGlnaHQteWVsbG93OiAjZmRmNWNmO1xyXG5cclxuLyogRU5EIE5PVElDRSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTU9CSUxFIE1FTlUgKi9cclxuQGZseW91dC1tZW51LWJnOiAjNDM4YWZmO1xyXG5AbWVudS10aXRsZS1iZzogIzAwNjdjMztcclxuQG1lbnUtdGl0bGUtY29sb3I6ICNmZmZmO1xyXG5AanMtZ2VuZXJhbC1tZW51LWJnOiAjODE3ZWZmO1xyXG5Ac2VsZWN0LWJnLXJlZG1pbmV1cDogIzVmNWJmYTtcclxuQGpzLWdlbmVyYWwtbWVudS1jb2xvcjogI2ZmZjtcclxuQGpzLXByb2ZpbGUtbWVudS1iZzogIzEwYTU3ODtcclxuQGpzLXByb2ZpbGUtbWVudS1jb2xvcjogI2ZmZjtcclxuQG1lbnUtYWRtaW4tbWVudS1iZzogIzZiOGVmZjtcclxuQG1lbnUtYWRtaW4tbWVudS1jb2xvcjogI2ZmZjtcclxuQG1vYmlsZS1tZW51LWNoaWxkcmVuLWJnOiAjNjhiZWVmO1xyXG5AbW9iaWxlLW1lbnUtY2hpbGRyZW4tY29sb3I6ICNmZmZmO1xyXG5AbW9iaWxlLWN1c3RvbWVyX3Byb2ZpbGUtYmc6ICNmNGU5ZjI7XHJcbkBtb2JpbGUtY3VzdG9tZXJfcHJvZmlsZS1jb2xvcjogQGRhcms7XHJcbkBjdXN0b21lcl9wcmV2aW91c19pc3N1ZXMtYmc6ICM2YjhlZmY7XHJcbkBjdXN0b21lcl9wcmV2aW91c19pc3N1ZXMtY29sb3I6ICNmZmZmZmY7XHJcbkBtb2JpbGUtaXNzdWUtY29udGFjdHMtYmc6ICMwMWRjN2Q7XHJcbkBtb2JpbGUtaXNzdWUtY29udGFjdHMtY29sb3I6ICNmZmZmO1xyXG5AbW9iaWxlLXdhdGNoZXJzLWJnOiAjMWVjNTkyO1xyXG5AbW9iaWxlLXdhdGNoZXJzLWNvbG9yOiAjZmZmO1xyXG5cclxuLyogRU5EIE1PQklMRSBNRU5VICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBCT1gtU0hBRE9XUyAqL1xyXG5cclxuQGJpZ3NoYWRvdzogMCAxMHB4IDEwcHggcmdiYSgwLDAsMCwwLjEpO1xyXG5AYmlnc2hhZG93TnVsbDogMCAxMHB4IDEwcHggcmdiYSgwLDAsMCwwKTtcclxuQGJpZ3NoYWRvd2hvdmVyOiAwIDEwcHggMTBweCByZ2JhKDY3LDEzOCwyNTUsMC41KTtcclxuQG1vZGFsc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsMCwwLDAuMik7XHJcbkBzaGFkb3dzbWFsbDogM3B4IDNweCA2cHggcmdiYSgwLDAsMCwwLjIpO1xyXG5cclxuLyogRU5EIEJPWC1TSEFET1dTICovXHJcblxyXG4vKiBTVEFSVCB0YWJsZXMgKi9cclxuQHRhYmxlc19jb2xvcjogIzM3MzczNztcclxuLyogRU5EIHRhYmxlcyovXHJcblxyXG5cclxuLyogU1RBUlQgcGFnaW5hdGlvbiAqL1xyXG5AcGFnaW5hdGlvbl9jb2xvcjogIzgxOEU5NDtcclxuLyogRU5EIHBhZ2luYXRpb24qL1xyXG5cclxuXHJcbi8vZmNmNmZhICsgYWUwMGUwXHJcblxyXG5cclxuLyogU1RBUlQgVE9QIE1FTlUgKi9cclxuXHJcbkB0b3BfbWVudV9iZzogQGZmZjtcclxuQHRvcF9tZW51X2ljb25fY29sb3I6IEBkYXJrZ3JleTtcclxuQHRvcF9tZW51X2JvcmRlcjogQGdyZXk7XHJcblxyXG5cclxuLyogSE9WRVIgKi9cclxuQHRvcF9tZW51X2ljb25fY29sb3JfaG92ZXI6IEBmZmY7XHJcbkB0b3BfbWVudV9pY29uX2JnX2hvdmVyOiBAYmx1ZTtcclxuXHJcblxyXG5AdG9wX21lbnVfZHJvcGRvd25fYmc6IEBmZmY7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9jb2xvcjogQGRhcms7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9hZnRlcjogQGxpZ2h0Qmx1ZTtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2ljb246IEBkYXJrZ3JleTtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2ljb25faG92ZXI6IEBibHVlO1xyXG5AdG9wX21lbnVfZHJvcGRvd25fYm9yZGVyOiBAZ3JleTtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2NvbG9yX2hvdmVyOiBAYmx1ZTtcclxuXHJcbi8qIEVORCBUT1AgTUVOVSAqL1xyXG5cclxuLyogU1RBUlQgTUFJTiBNRU5VICovXHJcbkBtYWluX21lbnVfYmc6IEBmZmY7XHJcbkBtYWluX21lbnVfY29sb3I6IEBkYXJrO1xyXG5AbWFpbl9tZW51X2JvcmRlcjogQGdyZXk7XHJcbkBtYWluX21lbnVfY29sb3JfaWNvbjogQGJnbWVudTtcclxuQG1haW5fbWVudV9jb2xvcl9pY29uX2hvdmVyOiBAYmx1ZTtcclxuQG1haW5fbWVudV9iZ19ob3ZlcjogQGZmZjtcclxuQG1haW5fbWVudV9jb2xvcl9ob3ZlcjogQGJsdWU7XHJcbkBtYWluX21lbnVfZHJvcF9iZ19ob3ZlcjogQGhvdmVyQmc7XHJcbkBtYWluX21lbnVfc2Nyb2xsYmFyOiBAc3VwZXJfZ3JleV9saWdodDtcclxuQG1haW5fbWVudV9zY3JvbGxiYXJfaGFuZGxlOiBAYmx1ZTtcclxuXHJcbi8qIE1PQklMRSAqL1xyXG5AZmx5b3V0X21lbnVfYmc6IEBibHVlO1xyXG5AZmx5b3V0X21lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9ib3JkZXI6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9idXR0b25fYmc6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9idXR0b25fY29sb3I6IEBibHVlO1xyXG5AZmx5b3V0X21lbnVfYmdfc2VsZWN0ZWQ6IEByZWQ7XHJcbkBmbHlvdXRfbWVudV9jb2xvcl9zZWxlY3RlZDogQGZmZjtcclxuQGZseW91dF9tZW51X3RpdGxlX2JnOiBAbWVudS10aXRsZS1iZztcclxuQGZseW91dF9tZW51X3RpdGxlX2NvbG9yOiBAZmZmO1xyXG5AZmx5b3V0X21lbnVfYWRtaW5fbWVudV9iZzogQG1lbnUtYWRtaW4tbWVudS1iZztcclxuQGZseW91dF9tZW51X2FkbWluX21lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9nZW5lcmFsLW1lbnVfYmc6IEBqcy1nZW5lcmFsLW1lbnUtYmc7XHJcbkBmbHlvdXRfbWVudV9nZW5lcmFsLW1lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9wcm9maWxlLW1lbnVfYmc6IEBqcy1wcm9maWxlLW1lbnUtYmc7XHJcbkBmbHlvdXRfbWVudV9wcm9maWxlLW1lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV93YXRjaGVycy1tZW51X2JnOiBAbW9iaWxlLXdhdGNoZXJzLWJnO1xyXG5AZmx5b3V0X21lbnVfd2F0Y2hlcnMtbWVudV9jb2xvcjogQGZmZjtcclxuXHJcbi8qIEVORCBNQUlOIE1FTlUgKi9cclxuXHJcblxyXG5cclxuXHJcblxyXG4vKiBuZXcgICovXHJcblxyXG5AbWFpbl9iZzogIzI5MmY0YztcclxuQG1haW5fYmdfY29sb3I6ICNmZmY7XHJcbkBtYWluX2JnX2Rhcms6ICMxMDEzMWU7XHJcbkBncmV5X21lbnU6ICM2YTZlODI7XHJcbkBjb250ZW50X2JnOiAjZjVmNmY4O1xyXG5AY29udGVudF9pY29uX2NvbG9yOiAjNjc2ODc5O1xyXG5AY29udGVudF9pY29uX2JnOiAjY2NlNWZmO1xyXG5cclxuLyogU1RBUlQgVE9QIE1FTlUgKi9cclxuXHJcbkB0b3BfbWVudV9iZzogI2Y1ZjZmODtcclxuQHRvcF9tZW51X2JvcmRlcjogI2U2ZTllZjtcclxuXHJcblxyXG4vKiBIT1ZFUiAqL1xyXG5AdG9wX21lbnVfaWNvbl9jb2xvcjogIzY3Njg3OTtcclxuQHRvcF9tZW51X2ljb25fY29sb3JfaG92ZXI6ICMzMjMzMzg7XHJcbkB0b3BfbWVudV9pY29uX2NvbG9yX2FjdGl2ZTogIzMyMzMzODtcclxuQHRvcF9tZW51X2ljb25fYmc6ICNlNWY0ZmY7XHJcbkB0b3BfbWVudV9pY29uX2JnX2hvdmVyOiAjZTVmNGZmO1xyXG5AdG9wX21lbnVfaWNvbl9iZ19hY3RpdmU6ICNlNWY0ZmY7XHJcblxyXG5cclxuQHRvcF9tZW51X2Ryb3Bkb3duX2JnOiBAZmZmO1xyXG5AdG9wX21lbnVfZHJvcGRvd25fY29sb3I6IEBkYXJrO1xyXG5AdG9wX21lbnVfZHJvcGRvd25fYWZ0ZXI6IEBsaWdodEJsdWU7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9pY29uOiBAZGFya2dyZXk7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9pY29uX2hvdmVyOiBAYmx1ZTtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2JvcmRlcjogQGdyZXk7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9jb2xvcl9ob3ZlcjogQGJsdWU7XHJcblxyXG4vKiBFTkQgVE9QIE1FTlUgKi9cclxuXHJcbi8qIFNUQVJUIE1BSU4gTUVOVSAqL1xyXG5cclxuQG1haW5fbWVudV9iZzogQG1haW5fYmc7XHJcbkBtYWluX21lbnVfY29sb3I6IEBtYWluX2JnX2NvbG9yO1xyXG5AbWFpbl9tZW51X2JvcmRlcjogQG1haW5fYmc7XHJcbkBtYWluX21lbnVfY29sb3JfaWNvbjogQG1haW5fYmdfY29sb3I7XHJcbkBtYWluX21lbnVfY29sb3JfaWNvbl9ob3ZlcjogQG1haW5fYmdfY29sb3I7XHJcbkBtYWluX21lbnVfYmdfaG92ZXI6IEBtYWluX2JnX2Rhcms7XHJcbkBtYWluX21lbnVfY29sb3JfaG92ZXI6IEBtYWluX2JnX2NvbG9yO1xyXG5AbWFpbl9tZW51X2JnX3NlbGVjdGVkOiBAZ3JleV9tZW51O1xyXG5AbWFpbl9tZW51X2NvbG9yX3NlbGVjdGVkOiBAbWFpbl9iZ19jb2xvcjtcclxuQG1haW5fbWVudV9kcm9wX2JnX2hvdmVyOiBAbWFpbl9iZ19kYXJrO1xyXG5cclxuXHJcbi8qIE1PQklMRSAqL1xyXG5AZmx5b3V0X21lbnVfYmc6IEBibHVlO1xyXG5AZmx5b3V0X21lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9ib3JkZXI6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9idXR0b25fYmc6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9idXR0b25fY29sb3I6IEBibHVlO1xyXG5AZmx5b3V0X21lbnVfYmdfc2VsZWN0ZWQ6IEByZWQ7XHJcbkBmbHlvdXRfbWVudV9jb2xvcl9zZWxlY3RlZDogQGZmZjtcclxuQGZseW91dF9tZW51X3RpdGxlX2JnOiBAbWVudS10aXRsZS1iZztcclxuQGZseW91dF9tZW51X3RpdGxlX2NvbG9yOiBAZmZmO1xyXG5AZmx5b3V0X21lbnVfYWRtaW5fbWVudV9iZzogQG1lbnUtYWRtaW4tbWVudS1iZztcclxuQGZseW91dF9tZW51X2FkbWluX21lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9nZW5lcmFsLW1lbnVfYmc6IEBqcy1nZW5lcmFsLW1lbnUtYmc7XHJcbkBmbHlvdXRfbWVudV9nZW5lcmFsLW1lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9wcm9maWxlLW1lbnVfYmc6IEBqcy1wcm9maWxlLW1lbnUtYmc7XHJcbkBmbHlvdXRfbWVudV9wcm9maWxlLW1lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV93YXRjaGVycy1tZW51X2JnOiBAbW9iaWxlLXdhdGNoZXJzLWJnO1xyXG5AZmx5b3V0X21lbnVfd2F0Y2hlcnMtbWVudV9jb2xvcjogQGZmZjtcclxuXHJcbi8qIEVORCBNQUlOIE1FTlUgKi9cclxuXHJcblxyXG5AZGFya19ibHVlOiAjMjkyZjRjO1xyXG5AZmZmOiAjZmZmO1xyXG5AZGFyazogIzEwMTMxZTtcclxuQGdyZXlfbWVudTogIzZhNmU4MjtcclxuQGNvbnRlbnRfYmc6ICNmNWY2Zjg7XHJcbkBjb250ZW50X2ljb25fY29sb3I6ICM2NzY4Nzk7XHJcbkBjb250ZW50X2ljb25fYmc6ICNjY2U1ZmY7XHJcblxyXG4vKiBDT05URU5UIENPTE9SIFNFVFRJTkdTICAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuQGJsdWU6ICM3NjAwYmE7XHJcbkBibHVlNTA6ICNhMWM0ZmY7XHJcbkBibHVlUmdiYTogNjcsMTM4LDI1NTtcclxuLy9AbGlnaHRCbHVlOiAjZWNmM2ZmO1xyXG5AbGlnaHRCbHVlOiAjZjcwMGY0O1xyXG5AYm9keTogI2Y4ZjRmZTtcclxuXHJcbjpyb290IHtcclxuICAvKiBTVEFSVCBHRU5FUkFMIENPTE9SICovXHJcblxyXG4gIC0tY29sb3ItZmZmOiAjZmZmO1xyXG4gIC0tY29sb3ItZGFyazogIzEwMTMxZTtcclxuICAtLWNvbG9yLWJsdWU6ICM2NTRFRkY7XHJcbiAgLS1jb2xvci1kYXJjay1ibHVlOiAjOEE3OEQwO1xyXG4gIC0tY29sb3ItYmx1ZS1saWdodDogI2NjZTVmZjtcclxuICAvLyDRhdC+0LLQtdGAINC/0YDQvtGB0YLQvtC5INC60L3QvtC/0LrQuCAtICNlNmU5ZWYgLyDQsdC+0YDQtNC10YAgLSAjYzVjN2QwXHJcbiAgICAtLWNvbG9yLXJlZDogI0ZGNTc1NztcclxuICAtLWNvbG9yLXJlZC1lcnJvZjogI0JFNDY0NjtcclxuICAtLWNvbG9yLXJlZC1zdXBlcmxpZ2h0OiAjRkZEMUQxO1xyXG4gIC0tY29sb3ItZ3JlZW46ICM2NkM4QUI7XHJcbiAgLS1jb2xvci1ncmVlbi1kYXJrOiAjNWNhYTkzO1xyXG4gIC0tY29sb3ItZ3JlZW4tc3VwZXItbGlnaHQ6ICNDRkZGRjE7XHJcbiAgLS1jb2xvci1wdXJwbGU6ICNFMjg0RkU7XHJcbiAgLS1jb2xvci1wdXJwbGUtZGFyazogI0MwNzJEODtcclxuICAtLWNvbG9yLXllbGxvdzogI0ZGQ0Y2OTtcclxuICAtLWNvbG9yLXllbGxvdy1saWdodDogI0ZGRjFEMztcclxuICAtLWNvbG9yLWVycm9yOiAjRkY1NzU3O1xyXG4gIC0tY29sb3Itb3JhbmdlOiAjRkU5QTUxO1xyXG4gIC0tY29sb3ItZ3JleTogI2NjY2NjYztcclxuICAtLXN1cGVyX2dyZXlfbGlnaHQ6ICNlYmViZWM7XHJcbiAgLS1zdWRlci1kYXJrLWdyZXk6ICNCQkJGQ0Q7XHJcbiAgLS1tYWluLWJnLWJveDogI0VDRURGMDtcclxuICAtLW1lbnUtZ3JleTogIzZhNmU4MjtcclxuICAtLWljb24tZ3JleTogIzY3Njg3OTtcclxuICAtLWljb24tZ3JleS1kYXJrOiAjMzIzMzM4O1xyXG4gICAgLS1tZW51LWJnOiAjMkUzMTRGO1xyXG4gIC0tY29sb3ItbWFpbi1jb2xvcjogIzlEODlFRTtcclxuICAtLWNvbG9yLW1haW4tY29sb3ItYWN0aXZldHk6ICM4RTdERDY7XHJcbiAgLS1iZy1ib3gtYWN0aXZldHk6ICNjY2U1ZmY7XHJcbiAgLS1jb2xvci1tYWluLWNvbG9yLXRleHQ6ICNmZmZmZmY7XHJcbiAgLS1ncmV5OiAjY2NjY2NjO1xyXG4gIC0tY29sb3ItZGFyay1ncmV5OiAjQTVBNUE1O1xyXG4gIC0taWNvbi1iZzogI2NjZTVmZjtcclxuICAvKi0tbWFpbi1iYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvbG9naW4tYmcwMS5qcGdcIikgcmVwZWF0OyovXHJcbiAgLS1tYWluLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcblxyXG4gIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgLS10ZXh0LWNvbG9yLW1haW46IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYmctaW4tY29udGVudDogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcbiAgLS1iZy1ib2R5OiB2YXIoLS1iZy1mZmYpO1xyXG4gIC0tYmctbW9iaWxlOiAjZmZmO1xyXG4gIC0tYmctYm94OiAjRUNFREYwO1xyXG4gIC0tYmctb3RoZXI6ICNFQ0VERjA7XHJcbiAgLS1iZy1vdGhlci1pbjogI2ZmZmZmZjtcclxuICAtLWJnLWZmZjogI2ZmZmZmZjtcclxuICAtLWxpZ2h0LWJnOiAjZWNlMWZjO1xyXG4gIC0tc2VsZWN0LWJnLXJlZG1pbmV1cDogIzVmNWJmYTtcclxuICAtLWFsbC1ob3Zlci1iZzogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcbiAgLS1hbGwtaG92ZXItYmctY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG5cclxuICAtLXNjcm9sbC1iZzogI0VDRURGMDtcclxuICAtLXNjcm9sbC1oYW5kbGU6ICNCQkJGQ0Q7XHJcbiAgLS1qY2YtZHJvcC1hY3RpdmU6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcblxyXG4gIC8qIEVORCBHRU5FUkFMIENPTE9SICovXHJcblxyXG4gIC8qIFNUQVJUIFRBQlMgKi9cclxuXHJcbiAgLS10YWItY29sb3ItdGV4dDogdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gIC0tdGFiLWNvbG9yLXRleHQtc2VsZWNlZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcblxyXG4gIC8qIEVORCBUQUJTICovXHJcblxyXG4gIC8qIFNUQVJUIE5PVElDRSAqL1xyXG5cclxuICAtLW5vdGljZS1lcnJvci1iZzogdmFyKC0tY29sb3ItcmVkLXN1cGVybGlnaHQpO1xyXG4gIC0tbm90aWNlLWVycm9yLW1haW46IHZhcigtLWNvbG9yLXJlZCk7XHJcbiAgLS1ub3RpY2UtZXJyb3ItbWFpbi10ZXh0OiB2YXIoLS1jb2xvci1yZWQpO1xyXG4gIC0tbm90aWNlLXN1Y2Nlc3NmdS1tYWluOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcbiAgLS1ub3RpY2Utc3VjY2Vzc2Z1LW1haW4tdGV4dDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLW5vdGljZS1zdWNjZXNzZnUtYmc6IHZhcigtLWNvbG9yLWdyZWVuLXN1cGVyLWxpZ2h0KTtcclxuICAtLW5vdGljZS1zdWNjZXNzZnUtYmctdGV4dDogdmFyKC0tY29sb3ItZ3JlZW4tZGFyayk7XHJcbiAgLS1ub3RpY2Utd29ybmluZy1tYWluOiB2YXIoLS1jb2xvci15ZWxsb3cpO1xyXG4gIC0tbm90aWNlLXdvcm5pbmctYmc6IHZhcigtLWNvbG9yLXllbGxvdy1saWdodCk7XHJcbiAgLS1ub3RpY2Utd29ybmluZy1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcblxyXG4gIC0tcmVkX2JvcmRlcl9lcnJvcjogdmFyKC0tY29sb3ItcmVkKTtcclxuICAtLXJlZF9lcnJvcl90ZXh0OiB2YXIoLS1jb2xvci1mZmYpO1xyXG5cclxuICAvKiBFTkQgTk9USUNFICovXHJcblxyXG5cclxuICAvKiBTVEFSVCBCT1JERVIgUkFESVVTICovXHJcbiAgLS1ib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgLS1ib3JkZXItcmFkaXVzLWZ1bGw6IDEwMCU7XHJcbiAgLS1ib3JkZXItcmFkaXVzLXNtYWxsOiAzcHg7XHJcbiAgLS1ib3JkZXItcmFkaXVzLW1pZGxlOiA1cHg7XHJcbiAgLS1pY29uLWJvcmRlci1yYWRpdXM6IDhweDtcclxuICAvKiBTVEFSVCBCT1JERVIgUkFESVVTICovXHJcblxyXG4gIC8qIFNUQVJUIEFOSU1BVEUgVElNRSovXHJcbiAgLS10aW1lLWhvdmVyOiAuMnM7XHJcbiAgLS10aW1lLW1haW46IC41cztcclxuICAtLXRpbWUtaG92ZXItbnVsbDogLjBzO1xyXG4gIC8qIEVORCBBTklNQVRFIFRJTUUqL1xyXG5cclxuICAvKiBTVEFSVCBJQ09OUyAqL1xyXG4gIC0taWNvbi13aWR0aDogMzBweDtcclxuICAtLWljb24tZm9udC1zaXplOiAzMHB4O1xyXG4gIC0taWNvbi1zbWFsbGVyLXdpZHRoOiAyNnB4O1xyXG4gIC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZTogMjZweDtcclxuICAtLWljb24td2lkdGgtc21hbGw6IDIwcHg7XHJcbiAgLS1pY29uLWZvbnQtc2l6ZS1zbWFsbDogMjBweDtcclxuICAtLWljb24tZm9udDogQGZvbnRJY29uO1xyXG5cclxuICAtLWljb24tY29sb3I6IHZhcigtLWljb24tZ3JleSk7XHJcbiAgLS1pY29uLWNvbG9yLWhvdmVyOiAjNDQ0NDQ0O1xyXG4gIC0taWNvbl9jb2xvcl9hY3RpdmU6ICM0NDQ0NDQ7XHJcbiAgLS1pY29uX2JnOiAjYmZkNmZkO1xyXG4gIC0taWNvbl9iZ19ob3ZlcjogI2JmZDZmZDtcclxuICAtLWljb25fYmdfYWN0aXZlOiAjYmZkNmZkO1xyXG5cclxuICAtLWljb24tY29sb3ItZGlzYWJsZWQ6IHZhcigtLWljb24tZ3JleSk7XHJcbiAgLS1pY29uX2JnLWRpc2FibGVkOiB2YXIoLS1jb2xvci1ncmV5KTtcclxuXHJcbiAgLS1pY29uLWNvbG9yLWJnOiB2YXIoLS1pY29uLWdyZXkpO1xyXG4gIC0taWNvbi1jb2xvci1ob3Zlci1iZzogdmFyKC0taWNvbi1ncmV5LWRhcmspO1xyXG4gIC0taWNvbl9jb2xvcl9hY3RpdmUtYmc6IHZhcigtLWljb24tZ3JleS1kYXJrKTtcclxuICAtLWljb25fYmctYmc6ICB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWljb25fYmdfaG92ZXItYmc6ICB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWljb25fYmdfYWN0aXZlLWJnOiAgdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcblxyXG5cclxuICAtLWljb24tY29sb3ItbGlzdDogdmFyKC0taWNvbi1ncmV5KTtcclxuICAtLWljb24tY29sb3ItaG92ZXItbGlzdDogdmFyKC0tYmctZmZmKTtcclxuICAtLWljb25fY29sb3JfYWN0aXZlLWxpc3Q6IHZhcigtLWJnLWZmZik7XHJcbiAgLS1pY29uX2JnLWxpc3Q6ICB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAtLWljb25fYmdfaG92ZXItbGlzdDogIHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0taWNvbl9iZ19hY3RpdmUtbGlzdDogIHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG5cclxuICAtLWljb24tY29sb3ItOiB2YXIoLS1pY29uLWdyZXkpO1xyXG5cclxuICAtLWljb24tY29udGVudC1jb2xvcjogdmFyKC0tY29sb3Itb3JhbmdlKTtcclxuICAtLWljb24tY29udGVudC1jb2xvci1ob3ZlcjogI2ZmZjtcclxuICAtLWljb24tY29udGVudF9iZzogIHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcbiAgLS1pY29uLWNvbnRlbnRfYmdfaG92ZXI6ICB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG4gIC0taWNvbi1jb250ZW50X2JnX2FjdGl2ZTogIHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblxyXG4gIC0taWNvbi1zdGFyOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG5cclxuICAtLWJ1dHRvbi1tYWluLWNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tYnV0dG9uLW1haW4tYmc6IHZhcigtLWNvbG9yLXB1cnBsZSk7XHJcbiAgLS1idXR0b24tbWFpbi1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWJ1dHRvbi1tYWluLWJnLWhvdmVyOiB2YXIoLS1jb2xvci1wdXJwbGUtZGFyayk7XHJcblxyXG4gIC0tYnV0dG9uLW1haW4tY29sb3ItZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYnV0dG9uLW1haW4tYmctZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG5cclxuICAtLWJ1dHRvbi1jb2xvcjogIzY1NEVGRjtcclxuICAtLWJ1dHRvbi1iZzogI2ViZTdmYztcclxuICAtLWJ1dHRvbi1jb2xvci1ob3ZlcjogIzY1NEVGRjtcclxuICAtLWJ1dHRvbi1iZy1ob3ZlcjogI2Q4ZDBmODtcclxuXHJcbiAgLS1idXR0b24tY29sb3ItZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYnV0dG9uLWJnLWRpc2FibGVkOiB2YXIoLS1jb2xvci1ncmV5KTtcclxuXHJcbiAgLS1idXR0b24tY29sb3ItZGlzYWJsZWQ6ICNmZmY7XHJcbiAgLS1idXR0b24tYmctZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWRhcmstZ3JleSk7XHJcblxyXG4gIC0tYnV0dG9uLWdyZXktY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYnV0dG9uLWdyZXktYmc6IHZhcigtLXN1cGVyX2dyZXlfbGlnaHQpO1xyXG4gIC0tYnV0dG9uLWdyZXktY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYnV0dG9uLWdyZXktYmctaG92ZXI6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG5cclxuICAtLWJ1dHRvbi1mb250LXdlaWdodDogNjAwO1xyXG4gIC0tYnV0dG9uLWJvcmRlci1yYWRpdXM6IDhweDtcclxuICAtLWJnLWRpc2FibGVkOiB2YXIoLS1jb2xvci1kYXJrLWdyZXkpO1xyXG4gIC0tY29sb3ItZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWZmZik7XHJcblxyXG4gIC0tYnV0dG9uLW1haW4tY29sb3ItYmc6ICNmZmY7XHJcbiAgLS1idXR0b24tbWFpbi1iZy1iZzogdmFyKC0tY29sb3ItcHVycGxlLWRhcmspO1xyXG4gIC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXItYmc6ICNmZmY7XHJcbiAgLS1idXR0b24tbWFpbi1iZy1ob3Zlci1iZzogdmFyKC0tY29sb3ItcHVycGxlLWRhcmspO1xyXG5cclxuICAtLWJ1dHRvbi1tYWluLWNvbG9yLWRpc2FibGVkLWJnOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLWJ1dHRvbi1tYWluLWJnLWRpc2FibGVkLWJnOiB2YXIoLS1jb2xvci1ncmV5KTtcclxuXHJcbiAgLS1idXR0b24tY29sb3ItYmc6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYnV0dG9uLWJnLWJnOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWJ1dHRvbi1jb2xvci1ob3Zlci1iZzogI2ZmZjtcclxuICAtLWJ1dHRvbi1iZy1ob3Zlci1iZzogdmFyKC0tY29sb3ItYmx1ZSk7XHJcbiAgLyogRU5EIElDT05TICovXHJcblxyXG4gIC0tdGFibGUtYmctaG92ZXI6IEBzZWxlY3RUYWJsZTtcclxuXHJcbiAgLS1wb3B1cC1vdmVybGF5OiByZ2JhKDQxLCA0NywgNzYsIDAuNyk7XHJcbiAgLS1wb3B1cC1vdmVybGF5LWZhbmN5OiB2YXIoLS1tZW51LWJnKTtcclxuICAtLW1haW4tYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLDAsMCwwLjEpO1xyXG4gIC0tc21hbGwtYm94LXNoYWRvdzogM3B4IDNweCA2cHggcmdiYSgwLDAsMCwwLjEpO1xyXG4gIC0tYm94LXNoYWRvdy1udWxsOiAwIDEwcHggMTBweCByZ2JhKDAsMCwwLDApO1xyXG4gIC0tdGFibGUtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDNweCA1cHg7XHJcbiAgLS1iaWctc2hhZG93OiAwIDEwcHggMTBweCByZ2JhKDAsMCwwLDAuMSk7XHJcbiAgLS1iaWctc2hhZG93LWhvdmVyOiAwIDEwcHggMTBweCByZ2JhKDEwMSwxNTQsMjQ0LDAuNSk7XHJcblxyXG4gIC0tcG9wdXAtY2xvc2UtY29sb3I6IHZhcigtLWNvbG9yLXJlZCk7XHJcbiAgLS1wb3B1cC1jbG9zZS1iZzogdmFyKC0tY29sb3ItcmVkKTtcclxuICAtLXBvcHVwLWNsb3NlLWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tcG9wdXAtY2xvc2UtYmctaG92ZXI6IHZhcigtLWNvbG9yLXJlZCk7XHJcblxyXG4gIC0tcG9wdXAtY2xvc2UtY29sb3ItMjogdmFyKC0tY29sb3ItcmVkKTtcclxuICAtLXBvcHVwLWNsb3NlLWJnLTI6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1wb3B1cC1jbG9zZS1jb2xvci1ob3Zlci0yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tcG9wdXAtY2xvc2UtYmctaG92ZXItMjogdmFyKC0tY29sb3ItcmVkKTtcclxuXHJcblxyXG4gIC8qIFNUQVJUIFBSSU9SSVRZIENPTE9SICovXHJcbiAgLS1jb2xvci13YXJuaW5nOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG4gIC0tcHJpb3JpdHktMTogdmFyKC0tY29sb3ItYmx1ZSk7XHJcbiAgLS1wcmlvcml0eS0yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcbiAgLS1wcmlvcml0eS0zOiB2YXIoLS1jb2xvci15ZWxsb3cpO1xyXG4gIC0tcHJpb3JpdHktNDogdmFyKC0tY29sb3ItcHVycGxlKTtcclxuICAtLXByaW9yaXR5LTU6IHZhcigtLWNvbG9yLWVycm9yKTtcclxuICAtLXByaW9yaXR5LWNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC8qIEVORCBQUklPUklUWSBDT0xPUiAqL1xyXG5cclxuICAvKiBTVEFSVCBUUkFDS0VSIENPTE9SICovXHJcbiAgLS10cmFja2VyLTE6IHZhcigtLWNvbG9yLXJlZCk7XHJcbiAgLS10cmFja2VyLTI6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuICAtLXRyYWNrZXItMzogdmFyKC0tY29sb3ItYmx1ZSk7XHJcbiAgLyogRU5EIFRSQUNLRVIgQ09MT1IgKi9cclxuXHJcbiAgLyogU1RBUlQgRFJPUERPV04gKi9cclxuICAtLWRyb3AtdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1kcm9wLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tZHJvcC1pY29uLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLWRyb3AtaWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1kcm9wLWJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XHJcbiAgLS1kcm9wLWJnOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWRyb3AtYmctaG92ZXI6IHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG4gIC0tZHJvcC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgLyogU1RBUlQgRFJPUERPV04gKi9cclxuXHJcbiAgLyogU1RBUlQgSVNTVUVTICovXHJcblxyXG4gIC0taWNvbi1zYXZlLWNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcbiAgLS1pY29uLXNhdmUtY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1pY29uLXNhdmUtYmc6IHZhcigtLWNvbG9yLWdyZWVuLXN1cGVyLWxpZ2h0KTtcclxuICAtLWljb24tc2F2ZS1iZy1ob3ZlcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cclxuICAtLWljb24tY2xvc2UtY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcclxuICAtLWljb24tY2xvc2UtY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1pY29uLWNsb3NlLWJnOiB2YXIoLS1jb2xvci1yZWQtc3VwZXJsaWdodCk7XHJcbiAgLS1pY29uLWNsb3NlLWJnLWhvdmVyOiB2YXIoLS1jb2xvci1lcnJvcik7XHJcblxyXG4gIC0taWNvbi1kZWxsLWJnOiB2YXIoLS1jb2xvci1yZWQpO1xyXG4gIC0taWNvbi1kZWxsLWJnLWhvdmVyOiB2YXIoLS1jb2xvci1lcnJvcik7XHJcbiAgLS1pY29uLWRlbGwtY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1pY29uLWRlbGwtY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLWZmZik7XHJcblxyXG4gIC0tY29sb3ItbGluazogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgLS1ib3JkZXItY29sb3ItY29udGVudDogI0JCQkZDRDtcclxuICAvKiBFTkQgSVNTVUVTICovXHJcblxyXG4gIC8qIFNUQVJUIFBBR0lOQVRJT04gKi9cclxuXHJcbiAgLS1wYWdpbmF0aW9uLWNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAtLXBhZ2luYXRpb24tY29sb3ItaG92ZXI6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO1xyXG4gIC0tcGFnaW5hdGlvbi1jb2xvci1hdnRpdmU6IHZhcigtLWljb25fY29sb3JfYWN0aXZlKTtcclxuICAtLXBhZ2luYXRpb24tYmc6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1wYWdpbmF0aW9uLWJnLWhvdmVyOiB2YXIoLS1pY29uX2JnX2hvdmVyKTtcclxuICAtLXBhZ2luYXRpb24tYmctYWN0aXZlOiB2YXIoLS1pY29uX2JnX2FjdGl2ZSk7XHJcbiAgLS1wYWdpbmF0aW9uLWZvbnQtd2VpZ2h0OiA3MDA7XHJcblxyXG4gIC8qIEVORCBQQUdJTkFUSU9OICovXHJcblxyXG5cclxuICAvKiBTVEFSVCBGTFlPVVQgTUVOVSAqL1xyXG4gIC0tZmx5b3V0X21lbnVfYmc6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0tZmx5b3V0X21lbnVfY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1mbHlvdXRfbWVudV9ib3JkZXI6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1mbHlvdXRfbWVudV9idXR0b25fYmc6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1mbHlvdXRfbWVudV9idXR0b25fY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0tZmx5b3V0X21lbnVfYmdfc2VsZWN0ZWQ6IHZhcigtLWNvbG9yLXJlZCk7XHJcbiAgLS1mbHlvdXRfbWVudV9jb2xvcl9zZWxlY3RlZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X3RpdGxlX2JnOiAjMDA2N2MzO1xyXG4gIC0tZmx5b3V0X21lbnVfdGl0bGVfY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1mbHlvdXRfbWVudV9hZG1pbl9tZW51X2JnOiAjNmI4ZWZmO1xyXG4gIC0tZmx5b3V0X21lbnVfYWRtaW5fbWVudV9jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X2dlbmVyYWwtbWVudV9iZzogIzgxN2VmZjtcclxuICAtLWZseW91dF9tZW51X2dlbmVyYWwtbWVudV9jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X3Byb2ZpbGUtbWVudV9iZzogIzVEQ0E4NjtcclxuICAtLWZseW91dF9tZW51X3Byb2ZpbGUtbWVudV9jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X3dhdGNoZXJzLW1lbnVfYmc6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuICAtLWZseW91dF9tZW51X3dhdGNoZXJzLW1lbnVfY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1mbHlvdXQtdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLyogRU5EIEZMWU9VVCBNRU5VICovXHJcblxyXG4gIC8qIFNUQVJUIFRPT0xUSVAgKi9cclxuXHJcbiAgLS10b29sdGlwLWJnOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAtLXRvb2x0aXAtYmctaG92ZXI6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0tdG9vbHRpcC1jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLXRvb2x0aXAtY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLWZmZik7XHJcblxyXG4gIC8qIEVORCBUT09MVElQICovXHJcblxyXG4gIC8qIFNUQVJUIFNDUk9MTEJBUiAqL1xyXG5cclxuICAtLXNjcm9sbGJhcjogdmFyKC0tY29sb3ItZ3JleSk7XHJcbiAgLS1zY3JvbGxiYXJfaGFuZGxlOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuXHJcbiAgLyogRU5EIFNDUk9MTEJBUiAqL1xyXG59XHJcblxyXG4vKiBTVEFSVCBGT09URVIgKi9cclxuXHJcbiNmb290ZXIge1xyXG4gIC0tYmc6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS10ZXh0LWNvbG9yLW1haW46IHZhcigtLWNvbG9yLWdyZXkpO1xyXG4gIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcclxufVxyXG5cclxuLyogRU5EIEZPT1RFUiAqL1xyXG5cclxuLyogU1RBUlQgU0lERUJBUiAqL1xyXG5cclxuI3NpZGViYXIge1xyXG4gIC0tYmc6IHZhcigtLW1haW4tYmctYm94KTtcclxuICAtLW1haW5fY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0tdGV4dC1jb2xvci1tYWluOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLWJvcmRlci1jb2xvcjogI0JCQkZDRDtcclxuXHJcbiAgLS1pY29uLWNvbG9yOiB2YXIoLS1pY29uLWdyZXkpO1xyXG4gIC0taWNvbi1jb2xvci1ob3ZlcjogdmFyKC0taWNvbi1ncmV5LWRhcmspO1xyXG4gIC0taWNvbl9jb2xvcl9hY3RpdmU6IHZhcigtLWljb24tZ3JleS1kYXJrKTtcclxuICAtLWljb25fYmc6IHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG4gIC0taWNvbl9iZ19ob3ZlcjogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcbiAgLS1pY29uX2JnX2FjdGl2ZTogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcblxyXG4gIC0tYnV0dG9uLW1haW4tY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgLS1idXR0b24tbWFpbi1iZzogdmFyKC0tY29sb3ItcHVycGxlKTtcclxuICAtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyOiB2YXIoLS1iZy1mZmYpO1xyXG4gIC0tYnV0dG9uLW1haW4tYmctaG92ZXI6IHZhcigtLWNvbG9yLXB1cnBsZS1kYXJrKTtcclxuXHJcbiAgLS1idXR0b24tY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgLS1idXR0b24tYmc6IHZhcigtLWNvbG9yLXB1cnBsZSk7XHJcbiAgLS1idXR0b24tY29sb3ItaG92ZXI6IHZhcigtLWJnLWZmZik7XHJcbiAgLS1idXR0b24tYmctaG92ZXI6IHZhcigtLWNvbG9yLXB1cnBsZS1kYXJrKTtcclxuXHJcbiAgLS1zY3JvbGwtYmc6ICNFQ0VERjA7XHJcbiAgLS1zY3JvbGwtaGFuZGxlOiAjQkJCRkNEO1xyXG59XHJcblxyXG4jbWFpbiB7XHJcbiAgLS1zaWRlYmFyLW1haW5fY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0tc2lkZWJhci1tYWluX2NvbG9yX3RleHQ6IHZhcigtLWJnLWZmZik7XHJcbiAgLS1zaWRlYmFyLW1haW5fY29sb3JfaG92ZXI6ICMyOTJmNGM7XHJcbiAgLS1zaWRlYmFyLW1haW5fY29sb3JfdGV4dF9ob3ZlcjogdmFyKC0tYmctZmZmKTtcclxuXHJcbiAgLS1zaWRlYmFyLW9wZW4tYnV0dG9uLWJnOiAjZmZmO1xyXG4gIC0tc2lkZWJhci1vcGVuLWJ1dHRvbi1ib3JkZXI6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgLS1zaWRlYmFyLW9wZW4tYnV0dG9uLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLXNpZGViYXItb3Blbi1idXR0b24tYmctaG92ZXI6ICM5RDg5RUU7XHJcbiAgLS1zaWRlYmFyLW9wZW4tYnV0dG9uLWJvcmRlci1ob3ZlcjogIzlEODlFRTtcclxuICAtLXNpZGViYXItb3Blbi1idXR0b24tY29sb3ItaG92ZXI6ICNmZmY7XHJcbn1cclxuXHJcbi8qIEVORCBTSURFQkFSICovXHJcblxyXG4jYWRtaW4tbWVudSxcclxuI21haW4tbWVudSxcclxuLm1vZC1vYmoge1xyXG4gIC0tYmc6ICMyMDIzM0Q7XHJcbiAgLS1ib3JkZXItY29sb3I6ICMyMDIzM0Q7XHJcbiAgLS1ib3JkZXItY29sb3ItbG9nbzogIzQ4NEM3ODtcclxuICAtLWxpbmstY29sb3I6ICNDN0I4RkY7XHJcbiAgLS1saW5rLWNvbG9yLWhvdmVyOiAjRTE4MkZGO1xyXG4gIC0tbGluay1jb2xvci1hY3RpdmU6ICNDN0I4RkY7XHJcbiAgLS1zY3JvbGxiYXI6ICMyMDIzM0Q7XHJcbiAgLS1zY3JvbGxiYXJfaGFuZGxlOiAjQzdCOEZGO1xyXG4gIC0taWNvbi1jb2xvcjogI0M3QjhGRjtcclxuICAtLWljb24tY29sb3ItaG92ZXI6ICNFMTgyRkY7XHJcbiAgLS1pY29uX2NvbG9yX2FjdGl2ZTogI0M3QjhGRjtcclxuXHJcbiAgLS1pY29uX2JnOiB2YXIoLS1tZW51LWJnKTtcclxuICAtLWljb25fYmdfaG92ZXI6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0taWNvbl9iZ19hY3RpdmU6IHZhcigtLW1lbnUtZ3JleSk7XHJcbiAgLS1tYWluLW1lbnUtZm9udC13ZWlnaHQ6IDcwMDtcclxuICAtLW1lbnUtY2hpbGRyZW4tZm9udC13ZWlnaHQ6IDUwMDtcclxuICAtLWZseW91dC1tZW51LWZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgLS1zdWJtaXQtZm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuI2FkbWluLWluZGV4IHtcclxuICAtLWFkbWluLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYWRtaW4tY29sb3ItYWZ0ZXI6IHZhcigtLW1lbnUtYmcpO1xyXG4gIC0tYWRtaW4tY29sb3ItYWZ0ZXItaG92ZXI6IHZhcigtLW1lbnUtYmcpO1xyXG4gIC0tYWRtaW4tY29sb3ItdGV4dC1ob3ZlcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbn1cclxuXHJcbiN0b3AtbWVudSB7XHJcbiAgLS1iZzogdmFyKC0tbWFpbi1iZy1ib3gpO1xyXG4gIC0taWNvbi1jb2xvcjogdmFyKC0taWNvbi1ncmV5KTtcclxuICAtLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWljb24tZ3JleS1kYXJrKTtcclxuICAtLWljb25fY29sb3JfYWN0aXZlOiB2YXIoLS1pY29uLWdyZXktZGFyayk7XHJcbiAgLS1ib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG4gIC0taWNvbl9iZzogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcbiAgLS1pY29uX2JnX2hvdmVyOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWljb25fYmdfYWN0aXZlOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuXHJcbiAgLS10b3Atbm90aWZpY2F0aW9uOiB2YXIoLS10cmFja2VyLTEpO1xyXG4gIC0tdG9wLW5vdGlmaWNhdGlvbi1jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWxpbmstY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tbGluay1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItYmx1ZSk7XHJcbiAgLS1saW5rLWJnOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tbGluay1iZy1ob3ZlcjogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcbiAgLS10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLXN0YXJ0LXRpbWUtYmctdGltZTogdmFyKC0tbWVudS1iZyk7XHJcbiAgLS1zdGFydC10aW1lLXRleHQtY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbn1cclxuXHJcbi5yZXZvLW1vZGFsLWJhZGdlIHtcclxuICAtLWJnOiB2YXIoLS1iZy1ib3gpO1xyXG4gIC0tbGluay1iZzogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWJnLXRpdGxlOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1saW5rLWNvbG9yOnZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tbGluay1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1saW5rLWJnOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tbGluay1iZy1ob3ZlcjogdmFyKC0tYWxsLWhvdmVyLWJnKTtcclxuICAtLWJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbn1cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5AaW1wb3J0IFwiX3ZhcnMtaWNvblwiO1xyXG4vKiAyMC4wMy4yMDIyICovXHJcbi8qIFNUQVJUIEZPTlQgVkFSSUFCTEVTICovXHJcbkBnZmY6IHNhbnMtc2VyaWY7XHJcbkBnZnM6IDFyZW07XHJcbkBnbGg6IDEuNDtcclxuQGdsaDI6IDEuNDtcclxuQGZvbnRJY29uOiBcIldGUy1STS1mb250XCI7XHJcbi8qIEVORCBGT05UIFZBUklBQkxFUyAqL1xyXG5cclxuLyogVkFSUyAqL1xyXG4uYm9yZGVyLXJhZGl1cyAoQHJhZGl1cykge1xyXG4gIGJvcmRlci1yYWRpdXM6IEByYWRpdXM7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogQHJhZGl1cztcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgQUxMIFZBUklBQkxFUyBGT1IgV09SSyBMRVNTICovXHJcbi5ib3JhZCAoQHJhZGl1cykge1xyXG4gIGJvcmRlci1yYWRpdXM6IEByYWRpdXM7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogQHJhZGl1cztcclxufVxyXG4uYm9yZGVyYigpe1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG4uYW5pbShAd2hhdCwgQHRpbWUpe1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogQHdoYXQgQHRpbWUgZWFzZS1pbi1vdXQ7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBAd2hhdCBAdGltZSBlYXNlLWluLW91dDtcclxuICB0cmFuc2l0aW9uOiBAd2hhdCBAdGltZSBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgQk9SREVSIFJBRElVUyBWQVJJQUJMRVMgKi9cclxuQHJhZDogOHB4O1xyXG5AcmFkTWlkZGxlOiA1cHg7XHJcbkByYWRzbWFsbDogM3B4O1xyXG5AcmFkRnVsbDogMTAwJTtcclxuLyogRU5EIEJPUkRFUiBSQURJVVMgVkFSSUFCTEVTICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBGT05UIFNJU0UgKyBMSU5FIEhJR0hUICovXHJcbkBmczIwOiAxLjQyODU3MTQyODU3MTQyOXJlbTtcclxuQGZzMTg6IDEuMjg1NzE0Mjg1NzE0Mjg2cmVtO1xyXG5AZnMxNjogMS4xNDI4cmVtO1xyXG5AZnMxMjogMC44NTcxNDI4NTcxNDI4NTdyZW07XHJcbkBmczExOiAwLjc4NTdyZW07XHJcbkBmczEwOiAwLjcxNDJyZW07XHJcbi8qIFNUQVJUIDEwMjQqL1xyXG5AMTAyNF9oMTogMS41cmVtO1xyXG5AMTAyNF9oMjogMS40Mjg1cmVtO1xyXG5AMTAyNF9oMzogMS41cmVtO1xyXG5AMTAyNF9oNDogMS41cmVtO1xyXG5AMTAyNF9oNTogMS41cmVtO1xyXG5AMTAyNF9oNjogMS41cmVtO1xyXG4vKiAgU1RBUlQgNzY4Ki9cclxuQDc4Nl9oMTogMS41cmVtO1xyXG5ANzg2X2gyOiAxLjEyODVyZW07XHJcbkA3ODZfaDM6IDEuNXJlbTtcclxuQDc4Nl9oNDogMS41cmVtO1xyXG5ANzg2X2g1OiAxLjVyZW07XHJcbkA3ODZfaDY6IDEuNXJlbTtcclxuLyogIFNUQVJUIDUwMCovXHJcbkA1MDBfaDE6IDEuMnJlbTtcclxuQDUwMF9oMjogMS4xNDI4cmVtO1xyXG5ANTAwX2gzOiAxLjJyZW07XHJcbkA1MDBfaDQ6IDEuMnJlbTtcclxuQDUwMF9oNTogMS4ycmVtO1xyXG5ANTAwX2g2OiAxLjJyZW07XHJcbi8qIEVORCBGT05UIFNJU0UgKyBMSU5FIEhJR0hUICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBKQ0YgKi9cclxuQHdiYXI6IDNweDtcclxuXHJcbkBoVXBEb3duOiAwO1xyXG4vKiBFTkQgSkNGICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBBTklNQVRFIFRJTUUqL1xyXG5AdGltZWhvdmVyOiAuMnM7IC8qIGhvdmVyICovXHJcbkB0aW1lbWFpbjogLjVzOyAvKiBNYWluIGJpZyBibG9rcyBhbmltYXRlZCAqL1xyXG5AdGltZU51bGw6IC4wcztcclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE9QQUNJVFkgKi9cclxuXHJcbkBvcGFjaXR5OiAwLjI7XHJcblxyXG4vKiBFTkQgT1BBQ0lUWSovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBJQ09OUyBWQVIgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIElDT04gRk9OVFMgKi9cclxuXHJcbkBhY3Rpdml0eS1saXN0OiBAaWNvbi10aGluLWFjdGl2aXR5LWxpc3Q7IC8qIE9LICovXHJcbkBhY3Rpdml0eTogQGljb24tdGhpbi1hY3Rpdml0eTsgLyogT0sgKi9cclxuQGFkZC1wYXltZW50OiBAaWNvbi10aGluLWFkZC1wYXltZW50OyAvKiBPSyAqL1xyXG5AYWRtaW5pc3RyYXRpb246IEBpY29uLXRoaW4tYWRtaW5pc3RyYXRpb247IC8qIE9LICovXHJcbkBhZ2lsZTogQGljb24tdGhpbi1hZ2lsZTsgLyogT0sgKi9cclxuQGFyY2hpdmU6IEBpY29uLXRoaW4tYXJjaGl2ZTsgLyogT0sgKi9cclxuQGFycm93LWJvdHRvbTogQGljb24tdGhpbi1hcnJvdy1ib3R0b207IC8qIE9LICovXHJcbkBhcnJvdy1kb3VibGUtZG93bjogQGljb24tdGhpbi1hcnJvdy1kb3VibGUtZG93bjsgLyogT0sgKi9cclxuQGFycm93LWRvdWJsZS11cDogQGljb24tdGhpbi1hcnJvdy1kb3VibGUtdXA7IC8qIE9LICovXHJcbkBhcnJvdy1kb3duOiBAaWNvbi10aGluLWFycm93LWRvd247IC8qIE9LICovXHJcbkBhcnJvdy1sZWZ0OiBAaWNvbi10aGluLWFycm93LWxlZnQ7IC8qIE9LICovXHJcbkBhcnJvdy1yaWdodDogQGljb24tdGhpbi1hcnJvdy1yaWdodDsgLyogT0sgKi9cclxuQGFycm93LXRvcDogQGljb24tdGhpbi1hcnJvdy10b3A7IC8qIE9LICovXHJcbkBhcnJvdy13aWRlLXJpZ2h0OiBAaWNvbi10aGluLWFycm93LXdpZGUtcmlnaHQ7IC8qIE9LICovXHJcbkBhdG9tOiBAaWNvbi10aGluLWF0b207IC8qIE9LICovXHJcbkBiYXNrZXQ6IEBpY29uLXRoaW4tYmFza2V0OyAvKiBPSyAqL1xyXG5AYm9hcmRzOiBAaWNvbi10aGluLWJvYXJkczsgLyogT0sgKi9cclxuQGJvb2ttYXJrOiBAaWNvbi10aGluLWJvb2ttYXJrOyAvKiBPSyAqL1xyXG5AY2FsZW5kYXI6IEBpY29uLXRoaW4tY2FsZW5kYXI7IC8qIE9LICovXHJcbkBjYXJ0OiBAaWNvbi10aGluLWNhcnQ7IC8qIE9LICovXHJcbkBjaGFuZ2UtdXNlcjogQGljb24tdGhpbi1jaGFuZ2UtdXNlcjsgLyogT0sgKi9cclxuQGNoZWNrZWQ6IEBpY29uLXRoaW4tY2hlY2tlZDsgLyogT0sgKi9cclxuQGNsaXA6IEBpY29uLXRoaW4tY2xpcDsgLyogT0sgKi9cclxuQGNsb3NlLW5ldy1zbWFsbDogQGljb24tdGhpbi1jbG9zZS1uZXctc21hbGw7IC8qIE9LICovXHJcbkBjbG9zZS1uZXc6IEBpY29uLXRoaW4tY2xvc2UtbmV3OyAvKiBPSyAqL1xyXG5AY29tbWVudDogQGljb24tdGhpbi1jb21tZW50OyAvKiBPSyAqL1xyXG5AY29tcGFueTogQGljb24tdGhpbi1jb21wYW55OyAvKiBPSyAqL1xyXG5AY29udGFjdHM6IEBpY29uLXRoaW4tY29udGFjdHM7IC8qIE9LICovXHJcbkBjb3B5OiBAaWNvbi10aGluLWNvcHk7IC8qIE9LICovXHJcbkBjc3Y6IEBpY29uLXRoaW4tY3N2OyAvKiBPSyAqL1xyXG5AY3VzdG9tLWZpZWxkczogQGljb24tdGhpbi1jdXN0b20tZmllbGRzOyAvKiBPSyAqL1xyXG5AZGVhbHM6IEBpY29uLXRoaW4tZGVhbHM7IC8qIE9LICovXHJcbkBkZWw6IEBpY29uLXRoaW4tZGVsOyAvKiBPSyAqL1xyXG5AZGVzY3JpcHRpb246IEBpY29uLXRoaW4tZGVzY3JpcHRpb247IC8qIE9LICovXHJcbkBkaWFtb25kOiBAaWNvbi10aGluLWRpYW1vbmQ7LyogT0sgKi9cclxuQGRvY3VtZW50czogQGljb24tdGhpbi1kb2N1bWVudHM7IC8qIE9LICovXHJcbkBkb2N4LWZpbGU6IEBpY29uLXRoaW4tZG9jeDsgLyogT0sgKi9cclxuQGRvbGxhcjogQGljb24tdGhpbi1kb2xsYXI7LyogT0sgKi9cclxuQGRvd25sb2FkOiBAaWNvbi10aGluLWRvd25sb2FkOyAvKiBPSyAqL1xyXG5AZWRpdDogQGljb24tdGhpbi1lZGl0OyAvKiBPSyAqL1xyXG5AZW1haWw6IEBpY29uLXRoaW4tZW1haWw7IC8qIE9LICovXHJcbkBlbnVtZXJhdGlvbnM6IEBpY29uLXRoaW4tZW51bWVyYXRpb25zOyAvKiBPSyAqL1xyXG5AZXhwZW5zZXM6IEBpY29uLXRoaW4tZXhwZW5zZXM7IC8qIE9LICovXHJcbkBleHRlcm5hbDogQGljb24tdGhpbi1leHRlcm5hbDsgLyogT0sgKi9cclxuQGV4dHJhLW1lbnU6IEBpY29uLXRoaW4tZXh0cmEtbWVudTsgLyogT0sgKi9cclxuQGZhdjpAaWNvbi10aGluLWZhdjsgLyogT0sgKi9cclxuQGZhdm9yaXQ6IEBpY29uLXRoaW4tZmF2b3JpdDsgLyogT0sgKi9cclxuQGZpbGVzOiBAaWNvbi10aGluLWZpbGVzOyAvKiBPSyAqL1xyXG5AZmlsdGVyOiBAaWNvbi10aGluLWZpbHRlcjsgLyogT0sgKi9cclxuQGZpbmFuY2U6IEBpY29uLXRoaW4tZmluYW5jZTsgLyogT0sgKi9cclxuQGZ1bGxzY3JlZW46IEBpY29uLXRoaW4tZnVsbHNjcmVlbjsgLyogT0sgKi9cclxuQGdhbnR0OiBAaWNvbi10aGluLWdhbnR0Oy8qIE9LICovXHJcbkBncm91cDogQGljb24tdGhpbi1ncm91cDsvKiBPSyAqL1xyXG5AaGVscDogQGljb24tdGhpbi1oZWxwOyAvKiBPSyAqL1xyXG5AaG9tZTogQGljb24tdGhpbi1ob21lOyAvKiBPSyAqL1xyXG5AaWNvbi1hY2NvdW50LXByb2plY3RzOiBAaWNvbi10aGluLWFjY291bnQtcHJvamVjdHM7IC8qIE9LICovXHJcbkBpY29uLWFjdGlvbi1sYXlvdXRzOiBAaWNvbi10aGluLWFjdGlvbi1sYXlvdXRzOyAvKiBPSyAqL1xyXG5AaWNvbi1hZGRpdGlvbmFsczogQGljb24tdGhpbi1hZGRpdGlvbmFsczsgLyogT0sgKi9cclxuQGljb24tYXJjaGl2ZTogQGljb24tdGhpbi1hcmNoaXZlOy8qIE9LICovXHJcbkBpY29uLWF0dGFjaG1lbnQ6IEBpY29uLXRoaW4tYXR0YWNobWVudDsgLyogT0sgKi9cclxuQGljb24tYmFjazogQGljb24tdGhpbi1iYWNrOyAvKiBPSyAqL1xyXG5AaWNvbi1iYWNrbG9nOiBAaWNvbi10aGluLWJhY2tsb2c7IC8qIE9LICovXHJcbkBpY29uLWJhdHRlcnk6IEBpY29uLXRoaW4tYmF0dGVyeTsgLyogT0sgKi9cclxuQGljb24tYzogQGljb24tdGhpbi1jcGx1czsgLyogT0sgKi9cclxuQGljb24tY2xvc2Utc2VhcmNoOiBAaWNvbi10aGluLWNsb3NlLXNlYXJjaDsgLyogT0sgKi9cclxuQGljb24tY29tbWVudHM6IEBpY29uLXRoaW4tY29tbWVudHM7IC8qIE9LICovXHJcbkBpY29uLWNybTogQGljb24tdGhpbi1jcm07IC8qIE9LICovXHJcbkBpY29uLWNzaGFycDogQGljb24tdGhpbi1jc2hhcnA7IC8qIE9LICovXHJcbkBpY29uLWNzczogQGljb24tdGhpbi1jc3M7IC8qIE9LICovXHJcbkBpY29uLWRpZmY6IEBpY29uLXRoaW4tZGlmZjsgLyogT0sgKi9cclxuQGljb24tZG1zZjogQGljb24tdGhpbi1kbXNmOyAvKiBPSyAqL1xyXG5AaWNvbi1kb2N1bWVudDogQGljb24tdGhpbi1kb2N1bWVudDsgLyogT0sgKi9cclxuQGljb24tZG9jeC0yOiBAaWNvbi10aGluLWRvY3g7IC8qIE9LICovXHJcbkBpY29uLWRvY3g6IEBpY29uLXRoaW4tZG9jeDsgLyogT0sgKi9cclxuQGljb24tZG93bi0xOiBAaWNvbi10aGluLWRvd24tMTsgLyogT0sgKi9cclxuQGljb24tZG93bi0yOiBAaWNvbi10aGluLWRvd24tMjsgLyogT0sgKi9cclxuQGljb24tZHJpdmU6IEBpY29uLXRoaW4tZHJpdmU7IC8qIE9LICovXHJcbkBpY29uLUVSUDogQGljb24tdGhpbi1FUlA7IC8qIE9LICovXHJcbkBpY29uLUVWTTogQGljb24tdGhpbi1FVk07IC8qIE9LICovXHJcbkBpY29uLWZhdi1vZmY6IEBpY29uLXRoaW4tZmF2LW9mZjsgLyogT0sgKi9cclxuQGljb24tZm9sZGVyOiBAaWNvbi10aGluLWZvbGRlcjsgLyogT0sgKi9cclxuQGljb24tZ2lmOiBAaWNvbi10aGluLWdpZjsgLyogT0sgKi9cclxuQGljb24tZ2l0LW5ldzogQGljb24tdGhpbi1naXQtbmV3O1xyXG5AaWNvbi1naXQ6IEBpY29uLXRoaW4tZ2l0OyAvKiBPSyAqL1xyXG5AaWNvbi1oZWFydDogQGljb24tdGhpbi1oZWFydDsgLyogT0sgKi9cclxuQGljb24taGlzdG9yeTogQGljb24tdGhpbi1oaXN0b3J5OyAvKiBPSyAqL1xyXG5AaWNvbi1ob3VyZ2xhc3M6IEBpY29uLXRoaW4taG91cmdsYXNzOyAvKiBPSyAqL1xyXG5AaWNvbi1odG1sOiBAaWNvbi10aGluLWh0bWw7IC8qIE9LICovXHJcbkBpY29uLWltcG9ydDogQGljb24tdGhpbi1pbXBvcnQ7IC8qIE9LICovXHJcbkBpY29uLWludmVudG9yeTogQGljb24tdGhpbi1pbnZlbnRvcnk7IC8qIE9LICovXHJcbkBpY29uLWphdmE6IEBpY29uLXRoaW4tamF2YTsgLyogT0sgKi9cclxuQGljb24tanBnOiBAaWNvbi10aGluLWpwZzsgLyogT0sgKi9cclxuQGljb24tanM6IEBpY29uLXRoaW4tanM7IC8qIE9LICovXHJcbkBpY29uLWthbmJhbjogQGljb24tdGhpbi1rYW5iYW47XHJcbkBpY29uLWtleTogQGljb24tdGhpbi1rZXk7IC8qIE9LICovXHJcbkBpY29uLWtleTI6IEBpY29uLXRoaW4ta2V5MjsgLyogT0sgKi9cclxuQGljb24ta25vd2xlZGdlYmFzZTogQGljb24tdGhpbi1rbm93bGVkZ2ViYXNlOyAvKiBPSyAqL1xyXG5AaWNvbi1saWtlOiBAaWNvbi10aGluLWxpa2U7IC8qIE9LICovXHJcbkBpY29uLWxvZ3M6IEBpY29uLXRoaW4tbG9nczsgLyogT0sgKi9cclxuQGljb24tbWVudXM6IEBpY29uLXRoaW4tbWVudXM7IC8qIE9LICovXHJcbkBpY29uLW1lcmdlOiBAaWNvbi10aGluLW1lcmdlOyAvKiBPSyAqL1xyXG5AaWNvbi1tb25pdG9yaW5nLWNvbnRyb2xsaW5nOiBAaWNvbi10aGluLW1vbml0b3JpbmctY29udHJvbGxpbmc7IC8qIE9LICovXHJcbkBpY29uLW1vdmU6IEBpY29uLXRoaW4tbW92ZTsgLyogT0sgKi9cclxuQGljb24tbm8taW52b2ljZXM6IEBpY29uLXRoaW4tbm8taW52b2ljZXM7IC8qIE9LICovXHJcbkBpY29uLW5vcm1hbC1pc3N1ZXM6IEBpY29uLXRoaW4tbm9ybWFsLWlzc3VlczsgLyogT0sgKi9cclxuQGljb24tbm90aWZpY2F0aW9uczogQGljb24tdGhpbi1ub3RpZmljYXRpb25zOyAvKiBPSyAqL1xyXG5AaWNvbi1vZHQ6IEBpY29uLXRoaW4tb2R0OyAvKiBPSyAqL1xyXG5AaWNvbi1vcGVuLXNlYXJjaDogQGljb24tdGhpbi1vcGVuLXNlYXJjaDsgLyogT0sgKi9cclxuQGljb24tcGFnZXM6IEBpY29uLXRoaW4tcGFnZXM7IC8qIE9LICovXHJcbkBpY29uLXBhc3N3ZDogQGljb24tdGhpbi1wYXNzd2Q7IC8qIE9LICovXHJcbkBpY29uLXBhdXNlOiBAaWNvbi10aGluLXBhdXNlOyAvKiBPSyAqL1xyXG5AaWNvbi1wZXJpb2RpYy10YXNrczogQGljb24tdGhpbi1wZXJpb2RpYy10YXNrczsgLyogT0sgKi9cclxuQGljb24tcGhwOiBAaWNvbi10aGluLXBocDsgLyogT0sgKi9cclxuQGljb24tcGxheTogQGljb24tdGhpbi1wbGF5OyAvKiBPSyAqL1xyXG5AaWNvbi1wbmc6IEBpY29uLXRoaW4tcG5nOyAvKiAgLS0tLSAgKi9cclxuQGljb24tcHJldmlldy1zYWxhcnk6IEBpY29uLXRoaW4tcHJldmlldy1zYWxhcnk7IC8qIE9LICovXHJcbkBpY29uLXByaW50OiBAaWNvbi10aGluLXByaW50OyAvKiBPSyAqL1xyXG5AaWNvbi1yZXBvcnRzOiBAaWNvbi10aGluLXJlcG9ydHM7IC8qIE9LICovXHJcbkBpY29uLXJpc2tzOiBAaWNvbi10aGluLXJpc2tzOyAvKiBPSyAqL1xyXG5AaWNvbi1yb2xlczogQGljb24tdGhpbi1yb2xlczsgLyogT0sgKi9cclxuQGljb24tcnVieTogQGljb24tdGhpbi1ydWJ5OyAvKiBPSyAqL1xyXG5AaWNvbi1zY3JvbGw6IEBpY29uLXRoaW4tc2Nyb2xsOyAvKiBPSyAqL1xyXG5AaWNvbi1zY3J1bTogQGljb24tdGhpbi1zY3J1bTsgLyogT0sgKi9cclxuQGljb24tc21hbGwtaXNzdWVzOiBAaWNvbi10aGluLXNtYWxsLWlzc3VlczsgLyogT0sgKi9cclxuQGljb24tc25pcHBldHM6IEBpY29uLXRoaW4tc25pcHBldHM7IC8qIE9LICovXHJcbkBpY29uLXNwcmludC1ib2FyZDogQGljb24tdGhpbi1zcHJpbnQtYm9hcmQ7IC8qIE9LICovXHJcbkBpY29uLXNwcmludC1idXJuZG93bjogQGljb24tdGhpbi1zcHJpbnQtYnVybmRvd247IC8qIE9LICovXHJcbkBpY29uLXN0YXRpc3RpY3M6IEBpY29uLXRoaW4tc3RhdGlzdGljczsgLyogT0sgKi9cclxuQGljb24tc3RvcDogQGljb24tdGhpbi1zdG9wOyAvKiBPSyAqL1xyXG5AaWNvbi1zdXJ2ZXk6IEBpY29uLXRoaW4tc3VydmV5OyAvKiBPSyAqL1xyXG5AaWNvbi10ZW1wbGF0ZXM6IEBpY29uLXRoaW4tdGVtcGxhdGVzOyAvKiBPSyAqL1xyXG5AaWNvbi10ZXh0OiBAY2xhc3NpYy10ZXh0O1xyXG5AaWNvbi10aWNrZXRzOiBAaWNvbi10aGluLXRpY2tldHM7IC8qIE9LICovXHJcbkBpY29uLXRpbWVyOiBAY2xhc3NpYy10aW1lcjtcclxuQGljb24tdW4tbGlrZTogQGljb24tdGhpbi11bi1saWtlOyAvKiBPSyAqL1xyXG5AaWNvbi11cC0xOiBAaWNvbi10aGluLXVwLTE7IC8qIE9LICovXHJcbkBpY29uLXVwLTI6IEBpY29uLXRoaW4tdXAtMjsgLyogT0sgKi9cclxuQGljb24tdXBsb2FkOiBAaWNvbi10aGluLXVwbG9hZDsgLyogT0sgKi9cclxuQGljb24tdmFyaWFibGVzOiBAaWNvbi10aGluLXZhcmlhYmxlczsgLyogT0sgKi9cclxuQGljb24td2JzOiBAaWNvbi10aGluLXdiczsgLyogT0sgKi9cclxuQGljb24td3JlY2s6IEBpY29uLXRoaW4td3JlY2s7IC8qIE9LICovXHJcbkBpY29uLXhtbDogQGljb24tdGhpbi14bWw7IC8qIE9LICovXHJcbkBpY29uLXlvdXR1YmU6IEBpY29uLXRoaW4teW91dHViZTsgLyogT0sgKi9cclxuQGljb24temlwOiBAaWNvbi10aGluLXppcDsgLyogT0sgKi9cclxuQGludm9pY2VzOiBAaWNvbi10aGluLWludm9pY2VzOyAvKiBPSyAqL1xyXG5AaXNzdWVzOiBAaWNvbi10aGluLWlzc3VlczsgLyogT0sgKi9cclxuQGxkYXAtYXV0aGVudGljYXRpb246IEBpY29uLXRoaW4tbGRhcC1hdXRoZW50aWNhdGlvbjsgLyogT0sgKi9cclxuQGxpbmstYnJlYWs6IEBpY29uLXRoaW4tbGluay1icmVhazsgLyogT0sgKi9cclxuQGxvY2s6IEBpY29uLXRoaW4tbG9jazsgLyogT0sgKi9cclxuQGxvZ2luOiBAaWNvbi10aGluLWxvZ2luOyAvKiBPSyAqL1xyXG5AbG9nb3V0OiBAaWNvbi10aGluLWxvZ291dDsgLyogT0sgKi9cclxuQG1haWxjaGltcDogQGNsYXNzaWMtbWFpbGNoaW1wO1xyXG5AbWVldGluZzogQGljb24tdGhpbi1tZWV0aW5nOyAvKiBPSyAqL1xyXG5AbW9uZXk6IEBpY29uLXRoaW4tbW9uZXk7IC8qIE9LICovXHJcbkBteS1hY2NvdW50OiBAaWNvbi10aGluLW15LWFjY291bnQ7IC8qIE9LICovXHJcbkBteS1wYWdlOiBAaWNvbi10aGluLW15LXBhZ2U7IC8qIE9LICovXHJcbkBuZXctb2JqZWN0OiBAaWNvbi10aGluLW5ldy1vYmplY3Q7IC8qIE9LICovXHJcbkBuZXdzOiBAaWNvbi10aGluLW5ld3M7IC8qIE9LICovXHJcbkBuZXh0OiBAaWNvbi10aGluLW5leHQ7IC8qIE9LICovXHJcbkBub3RlOiBAaWNvbi10aGluLW5vdGU7IC8qIE9LICovXHJcbkBvcGVuLWZvbGRlcjogQGljb24tdGhpbi1vcGVuLWZvbGRlcjsgLyogT0sgKi9cclxuQG9wZW4tc2lkZWJhci1ob3I6IEBpY29uLXRoaW4tb3Blbi1zaWRlYmFyLWhvcjsgLyogT0sgKi9cclxuQG9wZW4tc2lkZWJhcjogQGljb24tdGhpbi1vcGVuLXNpZGViYXI7IC8qIE9LICovXHJcbkBvcmRlcnM6IEBpY29uLXRoaW4tb3JkZXJzOyAvKiBPSyAqL1xyXG5Ab3ZlcnZpZXc6IEBpY29uLXRoaW4tb3ZlcnZpZXc7IC8qIE9LICovXHJcbkBwZGY6IEBpY29uLXRoaW4tcGRmOyAvKiBPSyAqL1xyXG5AcGVvcGxlOiBAaWNvbi10aGluLXBlb3BsZTsgLyogT0sgKi9cclxuQHBob25lOiBAaWNvbi10aGluLXBob25lOyAvKiBPSyAqL1xyXG5AcGhvdG86IEBpY29uLXRoaW4tcGhvdG87IC8qIE9LICovXHJcbkBwbGFubmluZzogQGljb24tdGhpbi1wbGFubmluZzsgLyogT0sgKi9cclxuQHBsdWdpbnM6IEBpY29uLXRoaW4tcGx1Z2luczsgLyogT0sgKi9cclxuQHBuZzogQGljb24tdGhpbi1wbmc7IC8qIE9LICovXHJcbkBwcmV2OiBAaWNvbi10aGluLXByZXY7IC8qIE9LICovXHJcbkBwcm9kdWN0czogQGljb24tdGhpbi1wcm9kdWN0czsgLyogT0sgKi9cclxuQHByb2plY3RzOiBAaWNvbi10aGluLXByb2plY3RzOyAvKiBPSyAqL1xyXG5AcXVlc3Rpb25zOiBAaWNvbi10aGluLXF1ZXN0aW9uczsgLyogT0sgKi9cclxuQHF1aWNrLXNlYXJjaDogQGljb24tdGhpbi1xdWljay1zZWFyY2g7XHJcbkByZWdpc3RlcjogQGljb24tdGhpbi1yZWdpc3RlcjsgLyogT0sgKi9cclxuQHJlbG9hZC0yOiBAaWNvbi10aGluLXJlbG9hZC0yOyAvKiBPSyAqL1xyXG5AcmVsb2FkOiBAaWNvbi10aGluLXJlbG9hZDsgLyogT0sgKi9cclxuQHJlcG9ydDogQGljb24tdGhpbi1yZXBvcnQ7IC8qIE9LICovXHJcbkByZXBvc2l0b3J5OiBAaWNvbi10aGluLXJlcG9zaXRvcnk7IC8qIE9LICovXHJcbkByZXNvdXJjZXM6IEBpY29uLXRoaW4tcmVzb3VyY2VzOyAvKiBPSyAqL1xyXG5Acm9hZG1hcDogQGljb24tdGhpbi1yb2FkbWFwOyAvKiBPSyAqL1xyXG5Acm9zZXR0ZTogQGljb24tdGhpbi1yb3NldHRlOyAvKiBPSyAqL1xyXG5Ac2F2ZS1uZXc6IEBpY29uLXRoaW4tc2F2ZS1uZXc7IC8qIE9LICovXHJcbkBzYXZlOiBAaWNvbi10aGluLXNhdmU7IC8qIE9LICovXHJcbkBzZWFyY2gtZG93bi1hcnJvdzogQGljb24tdGhpbi1zZWFyY2gtZG93bi1hcnJvdzsgLyogT0sgKi9cclxuQHNlYXJjaDogQGljb24tdGhpbi1zZWFyY2g7IC8qIE9LICovXHJcbkBzZXR0aW5nczogQGljb24tdGhpbi1zZXR0aW5nczsgLyogT0sgKi9cclxuQHNvcnQtaGFuZGxlOiBAaWNvbi10aGluLXNvcnQtaGFuZGxlOyAvKiBPSyAqL1xyXG5Ac3RhdHM6IEBpY29uLXRoaW4tc3RhdHM7IC8qIE9LICovXHJcbkBzdW1tYXJ5OiBAaWNvbi10aGluLXN1bW1hcnk7IC8qIE9LICovXHJcbkB0YWdzOiBAaWNvbi10aGluLXRhZ3M7IC8qIE9LICovXHJcbkB0aW1lLWVudHJpZXM6IEBpY29uLXRoaW4tdGltZS1lbnRyaWVzOyAvKiBPSyAqL1xyXG5AdHh0OiBAaWNvbi10aGluLXR4dDsgLyogT0sgKi9cclxuQHVubG9jazogQGljb24tdGhpbi11bmxvY2s7IC8qIE9LICovXHJcbkB1c2VyOiBAaWNvbi10aGluLXVzZXI7IC8qIE9LICovXHJcbkB2Y2Y6IEBpY29uLXRoaW4tdmNmOyAvKiBPSyAqL1xyXG5Adm90ZXM6IEBpY29uLXRoaW4tdm90ZXM7IC8qIE9LICovXHJcbkB3YXJuaW5nOiBAaWNvbi10aGluLXdhcm5pbmc7IC8qIE9LICovXHJcbkB3aWtpOiBAaWNvbi10aGluLXdpa2k7IC8qIE9LICovXHJcbkB3b3JrZmxvdzogQGljb24tdGhpbi13b3JrZmxvdzsgLyogT0sgKi9cclxuQHhsczogQGljb24tdGhpbi14bHM7IC8qIE9LICovXHJcbkB6b29tLWluOiBAaWNvbi10aGluLXpvb20taW47IC8qIE9LICovXHJcbkB6b29tLW91dDogQGljb24tdGhpbi16b29tLW91dDsgLyogT0sgKi9cclxuQGljb24tZ2xvc3Nhcnk6IEBpY29uLXRoaW4tZ2xvc3Nhcnk7XHJcbkBpY29uLWNyZWRlbnRpYWxzOiBAaWNvbi10aGluLWNyZWRlbnRpYWxzO1xyXG5AaWNvbi1zcHJpbnQta2FuYmFuOiBAaWNvbi10aGluLXNwcmludC1rYW5iYW47XHJcbkBpY29uLWF2YXRhcjogQGljb24tdGhpbi1hdmF0YXI7XHJcblxyXG5cclxuLyogRU5EIElDT04gRk9OVFMgKi9cclxuXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcblxyXG4vKiBTVEFSVCBESU5BTUlDIEVESVQgUExBR0lOICovXHJcbmJvZHkuY29udHJvbGxlci1pc3N1ZXMuYWN0aW9uLXNob3cge1xyXG5cclxuICAjbWFpbiB7XHJcbiAgICAuZHluYW1pY0VkaXQge1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1zbWFsbC1ib3gtc2hhZG93KTtcclxuICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1zbWFsbC1ib3gtc2hhZG93KTtcclxuICAgICAgYm94LXNoYWRvdzogdmFyKC0tc21hbGwtYm94LXNoYWRvdyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjY29udGVudCBkaXYuaXNzdWUuZGV0YWlscyB7XHJcbiAgICAuYnRuLXByaW1hcnkudmFsaWRhdGUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uLXNhdmUtYmcpO1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1zYXZlLWNvbG9yKTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Oy1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pY29uLXNhdmUtYmcpO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSkgc2tldygtNWRlZykgcm90YXRlKC01MGRlZyk7XHJcbiAgICAgICAgbWFyZ2luOiAtMXB4IDAgMDtcclxuICAgICAgICBoZWlnaHQ6IDRweDtcclxuICAgICAgICB3aWR0aDogMTBweDtcclxuICAgICAgICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1pY29uLXNhdmUtY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmZhIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLXNhdmUtY29sb3IpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb24tc2F2ZS1iZy1ob3Zlcik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tc2F2ZS1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pY29uLXNhdmUtYmctaG92ZXIpO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWNvbi1zYXZlLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYnRuLXByaW1hcnkuY2xvc2Uge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoKTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Oy1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1yZWQtc3VwZXJsaWdodCk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1yZWQtc3VwZXJsaWdodCkgIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmZhIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNsb3NlLWNvbG9yKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uLWNsb3NlLWJnLWhvdmVyKTtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWljb24tY2xvc2UtYmctaG92ZXIpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNsb3NlLWNvbG9yLWhvdmVyKSAhaW1wb3J0YW50O1xyXG5cclxuXHJcbiAgICAgICAgLmZhIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNsb3NlLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZHluYW1pY0VkaXQge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgICAgLmpjZi1zZWxlY3Qge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXHJcbiAgICAgIGlucHV0W3R5cGU9XCJkYXRlXCJde1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBmczE4O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICBtaW4td2lkdGg6IDE5MHB4O1xyXG4gICAgICAgIG91dGxpbmU6IDAgbm9uZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZmxleDogMTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuanN0QmxvY2sge1xyXG4gICAgICAgICYgKyBkaXYge1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIG1pbi13aWR0aDogNTBweDtcclxuXHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIDVweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIC5mYSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBidXR0b24uYWN0aW9uIHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgbWFyZ2luOjAgMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgei1pbmRleDoyO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGZvbnQtc2l6ZTowcHg7XHJcbiAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJi52YWxpZCB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLXNhdmUtY29sb3IpO1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBAY2hlY2tlZDtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1zYXZlLWNvbG9yKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb24tc2F2ZS1iZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLXNhdmUtY29sb3ItaG92ZXIpO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLXNhdmUtY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uLXNhdmUtYmctaG92ZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYucmVmdXNlIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY2xvc2UtY29sb3IpO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogQGNsb3NlLW5ldztcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jbG9zZS1jb2xvcik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uLWNsb3NlLWJnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY2xvc2UtY29sb3ItaG92ZXIpO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNsb3NlLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbi1jbG9zZS1iZy1ob3Zlcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaWNvbkVkaXQge1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIHBhZGRpbmc6MDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgbWFyZ2luOjA7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6MjtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBmb250LXNpemU6MHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6MHB4O1xyXG4gICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIG1pbi13aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IEBlZGl0O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLXBhZ2luYXRpb24tY29sb3ItaG92ZXIpO1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlcik7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5keW5hbWljRWRpdEZpZWxkIHtcclxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1zbWFsbC1ib3gtc2hhZG93KTtcclxuICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tc21hbGwtYm94LXNoYWRvdyk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1zbWFsbC1ib3gtc2hhZG93KTtcclxuICB9XHJcbn1cclxuLyogRU5EIERJTkFNSUMgRURJVCBQTEFHSU4gKi9cclxuXHJcbmJvZHkuY29udHJvbGxlci1pc3N1ZXMuYWN0aW9uLXNob3cgZGl2Lmlzc3VlLmRldGFpbHMgLnZhbHVlLmVkaXRlZCAuZHluYW1pY0VkaXQge1xyXG4gIHotaW5kZXg6IDk5OTk5O1xyXG59XHJcblxyXG5ib2R5LmNvbnRyb2xsZXItaXNzdWVzLmFjdGlvbi1zaG93IGRpdi5pc3N1ZS5kZXRhaWxzIC5hdHRyaWJ1dGU6aG92ZXIsXHJcbmJvZHkuY29udHJvbGxlci1pc3N1ZXMuYWN0aW9uLXNob3cgZGl2Lmlzc3VlLmRldGFpbHMgLnN1YmplY3Q6aG92ZXIsXHJcbmJvZHkuY29udHJvbGxlci1pc3N1ZXMuYWN0aW9uLXNob3cgZGl2Lmlzc3VlLmRldGFpbHMgLmRlc2NyaXB0aW9uOmhvdmVyIHtcclxuICAuaWNvbkVkaXQge1xyXG4gICAgY29sb3I6IHZhcigtLXBhZ2luYXRpb24tY29sb3ItYXZ0aXZlKTtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlcik7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpe1xyXG4gIGJvZHkuY29udHJvbGxlci1pc3N1ZXMuYWN0aW9uLXNob3cgLmljb25FZGl0IHtcclxuICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICBtaW4td2lkdGg6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgbWluLWhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUtc21hbGwpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBib2R5LmNvbnRyb2xsZXItaXNzdWVzLmFjdGlvbi1zaG93IGRpdi5pc3N1ZS5kZXRhaWxzLnNob3dQZW5jaWwgLmljb25FZGl0LFxyXG4gIGJvZHkuY29udHJvbGxlci1pc3N1ZXMuYWN0aW9uLXNob3cgZGl2Lmlzc3VlLmRldGFpbHMgLmF0dHJpYnV0ZSAuaWNvbkVkaXQsXHJcbiAgYm9keS5jb250cm9sbGVyLWlzc3Vlcy5hY3Rpb24tc2hvdyBkaXYuaXNzdWUuZGV0YWlscyAuZGVzY3JpcHRpb24gLmljb25FZGl0LFxyXG4gIGJvZHkuY29udHJvbGxlci1pc3N1ZXMuYWN0aW9uLXNob3cgZGl2Lmlzc3VlLmRldGFpbHMgLnN1YmplY3QgLmljb25FZGl0IHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gICNtYWluID4gI2NvbnRlbnQgLmpzdEJsb2NrIHtcclxuICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgfVxyXG4gICNtYWluIGRpdi5pc3N1ZSB7XHJcbiAgICAuYXR0cmlidXRlcyB7XHJcbiAgICAgIC5hdHRyaWJ1dGUge1xyXG4gICAgICAgIC52YWx1ZSB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgYm9keS5jb250cm9sbGVyLWlzc3Vlcy5hY3Rpb24tc2hvdyB7XHJcblxyXG4gICAgLmR5bmFtaWNFZGl0RmllbGQub3BlbixcclxuICAgIC5keW5hbWljRWRpdEZpZWxkIHtcclxuICAgICAgbGVmdDogLTE2MHB4O1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAxNjBweCcpO1xyXG4gICAgICBmbGV4LWZsb3c6IHdyYXA7XHJcbiAgICB9XHJcblxyXG4gICAgLmRlc2NyaXB0aW9uLFxyXG4gICAgLnN1YmplY3Qge1xyXG4gICAgICAuZHluYW1pY0VkaXRGaWVsZC5vcGVuLFxyXG4gICAgICAuZHluYW1pY0VkaXRGaWVsZCB7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBJQ09OIEZPTlRTICovXHJcblxyXG5AY2xhc3NpYy1hY2NvdW50LXByb2plY3RzOiBcIlxcRTAwMVwiO1xyXG5AY2xhc3NpYy1hY3Rpb24tbGF5b3V0czogXCJcXEUwMDJcIjtcclxuQGNsYXNzaWMtYWN0aXZpdHktbGlzdDogXCJcXEUwMDNcIjtcclxuQGNsYXNzaWMtYWN0aXZpdHk6IFwiXFxFMDA0XCI7XHJcbkBjbGFzc2ljLWFkZC1wYXltZW50OiBcIlxcRTAwNVwiO1xyXG5AY2xhc3NpYy1hZGRpdGlvbmFsczogXCJcXEUwMDZcIjtcclxuQGNsYXNzaWMtYWRtaW5pc3RyYXRpb246IFwiXFxFMDA3XCI7XHJcbkBjbGFzc2ljLWFnaWxlOiBcIlxcRTAwOFwiO1xyXG5AY2xhc3NpYy1hcmNoaXZlLTI6IFwiXFxFMDA5XCI7XHJcbkBjbGFzc2ljLWFyY2hpdmU6IFwiXFxFMDBBXCI7XHJcbkBjbGFzc2ljLWFycm93LWJvdHRvbTogXCJcXEUwMEJcIjtcclxuQGNsYXNzaWMtYXJyb3ctZG91YmxlLWRvd246IFwiXFxFMDBDXCI7XHJcbkBjbGFzc2ljLWFycm93LWRvdWJsZS11cDogXCJcXEUwMERcIjtcclxuQGNsYXNzaWMtYXJyb3ctZG93bjogXCJcXEUwMEVcIjtcclxuQGNsYXNzaWMtYXJyb3ctbGVmdDogXCJcXEUwMEZcIjtcclxuQGNsYXNzaWMtYXJyb3ctcmlnaHQ6IFwiXFxFMDEwXCI7XHJcbkBjbGFzc2ljLWFycm93LXRvcDogXCJcXEUwMTFcIjtcclxuQGNsYXNzaWMtYXJyb3ctd2lkZS1yaWdodDogXCJcXEUwMTJcIjtcclxuQGNsYXNzaWMtYXRvbTogXCJcXEUwMTNcIjtcclxuQGNsYXNzaWMtYXR0YWNobWVudDogXCJcXEUwMTRcIjtcclxuQGNsYXNzaWMtYmFjazogXCJcXEUwMTVcIjtcclxuQGNsYXNzaWMtYmFja2xvZzogXCJcXEUwMTZcIjtcclxuQGNsYXNzaWMtYmFza2V0OiBcIlxcRTAxN1wiO1xyXG5AY2xhc3NpYy1iYXR0ZXJ5OiBcIlxcRTAxOFwiO1xyXG5AY2xhc3NpYy1ib2FyZHM6IFwiXFxFMDE5XCI7XHJcbkBjbGFzc2ljLWJvb2ttYXJrOiBcIlxcRTAxQVwiO1xyXG5AY2xhc3NpYy1jYWxlbmRhcjogXCJcXEUwMUJcIjtcclxuQGNsYXNzaWMtY2FydDogXCJcXEUwMUNcIjtcclxuQGNsYXNzaWMtY2hhbmdlLXVzZXI6IFwiXFxFMDFEXCI7XHJcbkBjbGFzc2ljLWNoZWNrZWQ6IFwiXFxFMDFFXCI7XHJcbkBjbGFzc2ljLWNsaXA6IFwiXFxFMDFGXCI7XHJcbkBjbGFzc2ljLWNsb3NlLW5ldy1zbWFsbDogXCJcXEUwMjBcIjtcclxuQGNsYXNzaWMtY2xvc2UtbmV3OiBcIlxcRTAyMVwiO1xyXG5AY2xhc3NpYy1jbG9zZS1zZWFyY2g6IFwiXFxFMDIyXCI7XHJcbkBjbGFzc2ljLWNvbW1lbnQ6IFwiXFxFMDIzXCI7XHJcbkBjbGFzc2ljLWNvbW1lbnRzOiBcIlxcRTAyNFwiO1xyXG5AY2xhc3NpYy1jb21wYW55OiBcIlxcRTAyNVwiO1xyXG5AY2xhc3NpYy1jb250YWN0czogXCJcXEUwMjZcIjtcclxuQGNsYXNzaWMtY29weTogXCJcXEUwMjdcIjtcclxuQGNsYXNzaWMtY3BsdXM6IFwiXFxFMDI4XCI7XHJcbkBjbGFzc2ljLWNybTogXCJcXEUwMjlcIjtcclxuQGNsYXNzaWMtY3NoYXJwOiBcIlxcRTAyQVwiO1xyXG5AY2xhc3NpYy1jc3M6IFwiXFxFMDJCXCI7XHJcbkBjbGFzc2ljLWNzdjogXCJcXEUwMkNcIjtcclxuQGNsYXNzaWMtY3VzdG9tLWZpZWxkczogXCJcXEUwMkRcIjtcclxuQGNsYXNzaWMtZGF2OiBcIlxcRTAyRVwiO1xyXG5AY2xhc3NpYy1kZWFsczogXCJcXEUwMkZcIjtcclxuQGNsYXNzaWMtZGVsOiBcIlxcRTAzMFwiO1xyXG5AY2xhc3NpYy1kZXNjcmlwdGlvbjogXCJcXEUwMzFcIjtcclxuQGNsYXNzaWMtZGlhbW9uZDogXCJcXEUwMzJcIjtcclxuQGNsYXNzaWMtZGlmZjogXCJcXEUwMzNcIjtcclxuQGNsYXNzaWMtZG1zZjogXCJcXEUwMzRcIjtcclxuQGNsYXNzaWMtZG9jdW1lbnQ6IFwiXFxFMDM1XCI7XHJcbkBjbGFzc2ljLWRvY3VtZW50czogXCJcXEUwMzZcIjtcclxuQGNsYXNzaWMtZG9jeC0yOiBcIlxcRTAzN1wiO1xyXG5AY2xhc3NpYy1kb2N4LWZpbGU6IFwiXFxFMDM4XCI7XHJcbkBjbGFzc2ljLWRvY3g6IFwiXFxFMDM5XCI7XHJcbkBjbGFzc2ljLWRvbGxhcjogXCJcXEUwM0FcIjtcclxuQGNsYXNzaWMtZG93bi0xOiBcIlxcRTAzQlwiO1xyXG5AY2xhc3NpYy1kb3duLTI6IFwiXFxFMDNDXCI7XHJcbkBjbGFzc2ljLWRvd25sb2FkOiBcIlxcRTAzRFwiO1xyXG5AY2xhc3NpYy1kcml2ZTogXCJcXEUwM0VcIjtcclxuQGNsYXNzaWMtZWRpdDogXCJcXEUwM0ZcIjtcclxuQGNsYXNzaWMtZW1haWw6IFwiXFxFMDQwXCI7XHJcbkBjbGFzc2ljLWVudW1lcmF0aW9uczogXCJcXEUwNDFcIjtcclxuQGNsYXNzaWMtRVJQOiBcIlxcRTA0MlwiO1xyXG5AY2xhc3NpYy1FVk06IFwiXFxFMDQzXCI7XHJcbkBjbGFzc2ljLWV4cGVuc2VzOiBcIlxcRTA0NFwiO1xyXG5AY2xhc3NpYy1leHRlcm5hbDogXCJcXEUwNDVcIjtcclxuQGNsYXNzaWMtZXh0cmEtbWVudTogXCJcXEUwNDZcIjtcclxuQGNsYXNzaWMtZmF2LW9mZjogXCJcXEUwNDdcIjtcclxuQGNsYXNzaWMtZmF2OiBcIlxcRTA0OFwiO1xyXG5AY2xhc3NpYy1mYXZvcml0OiBcIlxcRTA0OVwiO1xyXG5AY2xhc3NpYy1maWxlczogXCJcXEUwNEFcIjtcclxuQGNsYXNzaWMtZmlsdGVyOiBcIlxcRTA0QlwiO1xyXG5AY2xhc3NpYy1maW5hbmNlOiBcIlxcRTA0Q1wiO1xyXG5AY2xhc3NpYy1mb2xkZXI6IFwiXFxFMDREXCI7XHJcbkBjbGFzc2ljLWZ1bGxzY3JlZW46IFwiXFxFMDRFXCI7XHJcbkBjbGFzc2ljLWdhbnR0OiBcIlxcRTA0RlwiO1xyXG5AY2xhc3NpYy1naWY6IFwiXFxFMDUwXCI7XHJcbkBjbGFzc2ljLWdpdC1uZXc6IFwiXFxFMDUxXCI7XHJcbkBjbGFzc2ljLWdpdDogXCJcXEUwNTJcIjtcclxuQGNsYXNzaWMtZ3JvdXA6IFwiXFxFMDUzXCI7XHJcbkBjbGFzc2ljLWhlYXJ0OiBcIlxcRTA1NFwiO1xyXG5AY2xhc3NpYy1oZWxwOiBcIlxcRTA1NVwiO1xyXG5AY2xhc3NpYy1oaXN0b3J5OiBcIlxcRTA1NlwiO1xyXG5AY2xhc3NpYy1ob21lOiBcIlxcRTA1N1wiO1xyXG5AY2xhc3NpYy1ob3VyZ2xhc3M6IFwiXFxFMDU4XCI7XHJcbkBjbGFzc2ljLWh0bWw6IFwiXFxFMDU5XCI7XHJcbkBjbGFzc2ljLWltcG9ydDogXCJcXEUwNUFcIjtcclxuQGNsYXNzaWMtaW52ZW50b3J5OiBcIlxcRTA1QlwiO1xyXG5AY2xhc3NpYy1pbnZvaWNlczogXCJcXEUwNUNcIjtcclxuQGNsYXNzaWMtaXNzdWVzOiBcIlxcRTA1RFwiO1xyXG5AY2xhc3NpYy1qYXZhOiBcIlxcRTA1RVwiO1xyXG5AY2xhc3NpYy1qcGc6IFwiXFxFMDVGXCI7XHJcbkBjbGFzc2ljLWpzOiBcIlxcRTA2MFwiO1xyXG5AY2xhc3NpYy1rYW5iYW46IFwiXFxFMDYxXCI7XHJcbkBjbGFzc2ljLWtleTogXCJcXEUwNjJcIjtcclxuQGNsYXNzaWMta2V5MjogXCJcXEUwNjNcIjtcclxuQGNsYXNzaWMta25vd2xlZGdlYmFzZTogXCJcXEUwNjRcIjtcclxuQGNsYXNzaWMtbGRhcC1hdXRoZW50aWNhdGlvbjogXCJcXEUwNjVcIjtcclxuQGNsYXNzaWMtbGlrZTogXCJcXEUwNjZcIjtcclxuQGNsYXNzaWMtbGluay1icmVhazogXCJcXEUwNjdcIjtcclxuQGNsYXNzaWMtbG9jazogXCJcXEUwNjhcIjtcclxuQGNsYXNzaWMtbG9naW46IFwiXFxFMDY5XCI7XHJcbkBjbGFzc2ljLWxvZ291dDogXCJcXEUwNkFcIjtcclxuQGNsYXNzaWMtbG9nczogXCJcXEUwNkJcIjtcclxuQGNsYXNzaWMtbWFpbGNoaW1wOiBcIlxcRTA2Q1wiO1xyXG5AY2xhc3NpYy1tZWV0aW5nOiBcIlxcRTA2RFwiO1xyXG5AY2xhc3NpYy1tZW51czogXCJcXEUwNkVcIjtcclxuQGNsYXNzaWMtbWVyZ2U6IFwiXFxFMDZGXCI7XHJcbkBjbGFzc2ljLW1vbmV5OiBcIlxcRTA3MFwiO1xyXG5AY2xhc3NpYy1tb25pdG9yaW5nLWNvbnRyb2xsaW5nOiBcIlxcRTA3MVwiO1xyXG5AY2xhc3NpYy1tb3ZlOiBcIlxcRTA3MlwiO1xyXG5AY2xhc3NpYy1teS1hY2NvdW50OiBcIlxcRTA3M1wiO1xyXG5AY2xhc3NpYy1teS1wYWdlOiBcIlxcRTA3NFwiO1xyXG5AY2xhc3NpYy1uZXctb2JqZWN0OiBcIlxcRTA3NVwiO1xyXG5AY2xhc3NpYy1uZXdzOiBcIlxcRTA3NlwiO1xyXG5AY2xhc3NpYy1uZXh0OiBcIlxcRTA3N1wiO1xyXG5AY2xhc3NpYy1uby1pbnZvaWNlczogXCJcXEUwNzhcIjtcclxuQGNsYXNzaWMtbm9ybWFsLWlzc3VlczogXCJcXEUwNzlcIjtcclxuQGNsYXNzaWMtbm90ZTogXCJcXEUwN0FcIjtcclxuQGNsYXNzaWMtbm90aWZpY2F0aW9uczogXCJcXEUwN0JcIjtcclxuQGNsYXNzaWMtb2R0OiBcIlxcRTA3Q1wiO1xyXG5AY2xhc3NpYy1vcGVuLWZvbGRlcjogXCJcXEUwN0RcIjtcclxuQGNsYXNzaWMtb3Blbi1zZWFyY2g6IFwiXFxFMDdFXCI7XHJcbkBjbGFzc2ljLW9wZW4tc2lkZWJhci1ob3I6IFwiXFxFMDdGXCI7XHJcbkBjbGFzc2ljLW9wZW4tc2lkZWJhcjogXCJcXEUwODBcIjtcclxuQGNsYXNzaWMtb3JkZXJzOiBcIlxcRTA4MVwiO1xyXG5AY2xhc3NpYy1vdmVydmlldzogXCJcXEUwODJcIjtcclxuQGNsYXNzaWMtcGFnZXM6IFwiXFxFMDgzXCI7XHJcbkBjbGFzc2ljLXBhc3N3ZDogXCJcXEUwODRcIjtcclxuQGNsYXNzaWMtcGF1c2U6IFwiXFxFMDg1XCI7XHJcbkBjbGFzc2ljLXBkZjogXCJcXEUwODZcIjtcclxuQGNsYXNzaWMtcGVvcGxlOiBcIlxcRTA4N1wiO1xyXG5AY2xhc3NpYy1wZXJpb2RpYy10YXNrczogXCJcXEUwODhcIjtcclxuQGNsYXNzaWMtcGhvbmU6IFwiXFxFMDg5XCI7XHJcbkBjbGFzc2ljLXBob3RvOiBcIlxcRTA4QVwiO1xyXG5AY2xhc3NpYy1waHA6IFwiXFxFMDhCXCI7XHJcbkBjbGFzc2ljLXBsYW5uaW5nOiBcIlxcRTA4Q1wiO1xyXG5AY2xhc3NpYy1wbGF5OiBcIlxcRTA4RFwiO1xyXG5AY2xhc3NpYy1wbHVnaW5zOiBcIlxcRTA4RVwiO1xyXG5AY2xhc3NpYy1wbmctMjogXCJcXEUwOEZcIjtcclxuQGNsYXNzaWMtcG5nOiBcIlxcRTA5MFwiO1xyXG5AY2xhc3NpYy1wcmV2OiBcIlxcRTA5MVwiO1xyXG5AY2xhc3NpYy1wcmV2aWV3LXNhbGFyeTogXCJcXEUwOTJcIjtcclxuQGNsYXNzaWMtcHJpbnQ6IFwiXFxFMDkzXCI7XHJcbkBjbGFzc2ljLXByb2R1Y3RzOiBcIlxcRTA5NFwiO1xyXG5AY2xhc3NpYy1wcm9qZWN0czogXCJcXEUwOTVcIjtcclxuQGNsYXNzaWMtcXVlc3Rpb25zOiBcIlxcRTA5NlwiO1xyXG5AY2xhc3NpYy1xdWljay1zZWFyY2g6IFwiXFxFMDk3XCI7XHJcbkBjbGFzc2ljLXJlZ2lzdGVyOiBcIlxcRTA5OFwiO1xyXG5AY2xhc3NpYy1yZWxvYWQtMjogXCJcXEUwOTlcIjtcclxuQGNsYXNzaWMtcmVsb2FkOiBcIlxcRTA5QVwiO1xyXG5AY2xhc3NpYy1yZW1pbmRlcjogXCJcXEUwOUJcIjtcclxuQGNsYXNzaWMtcmVwb3J0OiBcIlxcRTA5Q1wiO1xyXG5AY2xhc3NpYy1yZXBvcnRzOiBcIlxcRTA5RFwiO1xyXG5AY2xhc3NpYy1yZXBvc2l0b3J5OiBcIlxcRTA5RVwiO1xyXG5AY2xhc3NpYy1yZXNvdXJjZXM6IFwiXFxFMDlGXCI7XHJcbkBjbGFzc2ljLXJpc2tzOiBcIlxcRTBBMFwiO1xyXG5AY2xhc3NpYy1yb2FkbWFwOiBcIlxcRTBBMVwiO1xyXG5AY2xhc3NpYy1yb2xlczogXCJcXEUwQTJcIjtcclxuQGNsYXNzaWMtcm9zZXR0ZTogXCJcXEUwQTNcIjtcclxuQGNsYXNzaWMtcnVieTogXCJcXEUwQTRcIjtcclxuQGNsYXNzaWMtc2F2ZS1uZXc6IFwiXFxFMEE1XCI7XHJcbkBjbGFzc2ljLXNhdmU6IFwiXFxFMEE2XCI7XHJcbkBjbGFzc2ljLXNjcm9sbDogXCJcXEUwQTdcIjtcclxuQGNsYXNzaWMtc2NydW06IFwiXFxFMEE4XCI7XHJcbkBjbGFzc2ljLXNlYXJjaC1kb3duLWFycm93OiBcIlxcRTBBOVwiO1xyXG5AY2xhc3NpYy1zZWFyY2g6IFwiXFxFMEFBXCI7XHJcbkBjbGFzc2ljLXNldHRpbmdzOiBcIlxcRTBBQlwiO1xyXG5AY2xhc3NpYy1zbWFsbC1pc3N1ZXM6IFwiXFxFMEFDXCI7XHJcbkBjbGFzc2ljLXNuaXBwZXRzOiBcIlxcRTBBRFwiO1xyXG5AY2xhc3NpYy1zb3J0LWhhbmRsZTogXCJcXEUwQUVcIjtcclxuQGNsYXNzaWMtc3ByaW50LWJvYXJkOiBcIlxcRTBBRlwiO1xyXG5AY2xhc3NpYy1zcHJpbnQtYnVybmRvd246IFwiXFxFMEIwXCI7XHJcbkBjbGFzc2ljLXN0YXRpc3RpY3M6IFwiXFxFMEIxXCI7XHJcbkBjbGFzc2ljLXN0YXRzOiBcIlxcRTBCMlwiO1xyXG5AY2xhc3NpYy1zdG9wOiBcIlxcRTBCM1wiO1xyXG5AY2xhc3NpYy1zdW1tYXJ5OiBcIlxcRTBCNFwiO1xyXG5AY2xhc3NpYy1zdXJ2ZXk6IFwiXFxFMEI1XCI7XHJcbkBjbGFzc2ljLXRhZ3M6IFwiXFxFMEI2XCI7XHJcbkBjbGFzc2ljLXRlbXBsYXRlczogXCJcXEUwQjdcIjtcclxuQGNsYXNzaWMtdGV4dDogXCJcXEUwQjhcIjtcclxuQGNsYXNzaWMtdGlja2V0czogXCJcXEUwQjlcIjtcclxuQGNsYXNzaWMtdGltZS1lbnRyaWVzOiBcIlxcRTBCQVwiO1xyXG5AY2xhc3NpYy10aW1lcjogXCJcXEUwQkJcIjtcclxuQGNsYXNzaWMtdHh0OiBcIlxcRTBCQ1wiO1xyXG5AY2xhc3NpYy11bi1saWtlOiBcIlxcRTBCRFwiO1xyXG5AY2xhc3NpYy11bmxvY2s6IFwiXFxFMEJFXCI7XHJcbkBjbGFzc2ljLXVwLTE6IFwiXFxFMEJGXCI7XHJcbkBjbGFzc2ljLXVwLTI6IFwiXFxFMEMwXCI7XHJcbkBjbGFzc2ljLXVwbG9hZDogXCJcXEUwQzFcIjtcclxuQGNsYXNzaWMtdXNlcjogXCJcXEUwQzJcIjtcclxuQGNsYXNzaWMtdmFyaWFibGVzOiBcIlxcRTBDM1wiO1xyXG5AY2xhc3NpYy12Y2Y6IFwiXFxFMEM0XCI7XHJcbkBjbGFzc2ljLXZvdGVzOiBcIlxcRTBDNVwiO1xyXG5AY2xhc3NpYy13YXJuaW5nOiBcIlxcRTBDNlwiO1xyXG5AY2xhc3NpYy13YnM6IFwiXFxFMEM3XCI7XHJcbkBjbGFzc2ljLXdpa2k6IFwiXFxFMEM4XCI7XHJcbkBjbGFzc2ljLXdvcmtmbG93OiBcIlxcRTBDOVwiO1xyXG5AY2xhc3NpYy13cmVjazogXCJcXEUwQ0FcIjtcclxuQGNsYXNzaWMteGxzOiBcIlxcRTBDQlwiO1xyXG5AY2xhc3NpYy14bWw6IFwiXFxFMENDXCI7XHJcbkBjbGFzc2ljLXlvdXR1YmU6IFwiXFxFMENEXCI7XHJcbkBjbGFzc2ljLXppcDogXCJcXEUwQ0VcIjtcclxuQGNsYXNzaWMtem9vbS1pbjogXCJcXEUwQ0ZcIjtcclxuQGNsYXNzaWMtem9vbS1vdXQ6IFwiXFxFMEQwXCI7XHJcbkBpY29uLXRoaW4tYWNjb3VudC1wcm9qZWN0czogXCJcXEUwRDFcIjtcclxuQGljb24tdGhpbi1hY3Rpb24tbGF5b3V0czogXCJcXEUwRDJcIjtcclxuQGljb24tdGhpbi1hY3Rpdml0eS1saXN0OiBcIlxcRTBEM1wiO1xyXG5AaWNvbi10aGluLWFjdGl2aXR5OiBcIlxcRTBENFwiO1xyXG5AaWNvbi10aGluLWFkZC1wYXltZW50OiBcIlxcRTBENVwiO1xyXG5AaWNvbi10aGluLWFkZGl0aW9uYWxzOiBcIlxcRTBENlwiO1xyXG5AaWNvbi10aGluLWFkbWluaXN0cmF0aW9uOiBcIlxcRTBEN1wiO1xyXG5AaWNvbi10aGluLWFnaWxlOiBcIlxcRTBEOFwiO1xyXG5AaWNvbi10aGluLWFyY2hpdmU6IFwiXFxFMEQ5XCI7XHJcbkBpY29uLXRoaW4tYXJyb3ctYm90dG9tOiBcIlxcRTBEQVwiO1xyXG5AaWNvbi10aGluLWFycm93LWRvdWJsZS1kb3duOiBcIlxcRTBEQlwiO1xyXG5AaWNvbi10aGluLWFycm93LWRvdWJsZS11cDogXCJcXEUwRENcIjtcclxuQGljb24tdGhpbi1hcnJvdy1kb3duOiBcIlxcRTBERFwiO1xyXG5AaWNvbi10aGluLWFycm93LWxlZnQ6IFwiXFxFMERFXCI7XHJcbkBpY29uLXRoaW4tYXJyb3ctcmlnaHQ6IFwiXFxFMERGXCI7XHJcbkBpY29uLXRoaW4tYXJyb3ctdG9wOiBcIlxcRTBFMFwiO1xyXG5AaWNvbi10aGluLWFycm93LXdpZGUtcmlnaHQ6IFwiXFxFMEUxXCI7XHJcbkBpY29uLXRoaW4tYXRvbTogXCJcXEUwRTJcIjtcclxuQGljb24tdGhpbi1hdHRhY2htZW50OiBcIlxcRTBFM1wiO1xyXG5AaWNvbi10aGluLWF2YXRhcjogXCJcXEUwRTRcIjtcclxuQGljb24tdGhpbi1iYWNrOiBcIlxcRTBFNVwiO1xyXG5AaWNvbi10aGluLWJhY2tsb2ctMTogXCJcXEUwRTZcIjtcclxuQGljb24tdGhpbi1iYWNrbG9nOiBcIlxcRTBFN1wiO1xyXG5AaWNvbi10aGluLWJhc2tldDogXCJcXEUwRThcIjtcclxuQGljb24tdGhpbi1iYXR0ZXJ5OiBcIlxcRTBFOVwiO1xyXG5AaWNvbi10aGluLWJvYXJkczogXCJcXEUwRUFcIjtcclxuQGljb24tdGhpbi1ib29rbWFyay0xOiBcIlxcRTBFQlwiO1xyXG5AaWNvbi10aGluLWJvb2ttYXJrOiBcIlxcRTBFQ1wiO1xyXG5AaWNvbi10aGluLWNhbGVuZGFyOiBcIlxcRTBFRFwiO1xyXG5AaWNvbi10aGluLWNhcnQ6IFwiXFxFMEVFXCI7XHJcbkBpY29uLXRoaW4tY2hhbmdlLXVzZXI6IFwiXFxFMEVGXCI7XHJcbkBpY29uLXRoaW4tY2hlY2tlZC0xOiBcIlxcRTBGMFwiO1xyXG5AaWNvbi10aGluLWNoZWNrZWQ6IFwiXFxFMEYxXCI7XHJcbkBpY29uLXRoaW4tY2xpcDogXCJcXEUwRjJcIjtcclxuQGljb24tdGhpbi1jbG9zZS1uZXctc21hbGw6IFwiXFxFMEYzXCI7XHJcbkBpY29uLXRoaW4tY2xvc2UtbmV3OiBcIlxcRTBGNFwiO1xyXG5AaWNvbi10aGluLWNsb3NlLXNlYXJjaDogXCJcXEUwRjVcIjtcclxuQGljb24tdGhpbi1jb21tZW50OiBcIlxcRTBGNlwiO1xyXG5AaWNvbi10aGluLWNvbW1lbnRzOiBcIlxcRTBGN1wiO1xyXG5AaWNvbi10aGluLWNvbXBhbnk6IFwiXFxFMEY4XCI7XHJcbkBpY29uLXRoaW4tY29udGFjdHM6IFwiXFxFMEY5XCI7XHJcbkBpY29uLXRoaW4tY29weTogXCJcXEUwRkFcIjtcclxuQGljb24tdGhpbi1jcGx1czogXCJcXEUwRkJcIjtcclxuQGljb24tdGhpbi1jcmVkZW50aWFsczogXCJcXEUwRkNcIjtcclxuQGljb24tdGhpbi1jcm06IFwiXFxFMEZEXCI7XHJcbkBpY29uLXRoaW4tY3NoYXJwOiBcIlxcRTBGRVwiO1xyXG5AaWNvbi10aGluLWNzczogXCJcXEUwRkZcIjtcclxuQGljb24tdGhpbi1jc3Y6IFwiXFxFMTAwXCI7XHJcbkBpY29uLXRoaW4tY3VzdG9tLWZpZWxkczogXCJcXEUxMDFcIjtcclxuQGljb24tdGhpbi1kYXY6IFwiXFxFMTAyXCI7XHJcbkBpY29uLXRoaW4tZGVhbHM6IFwiXFxFMTAzXCI7XHJcbkBpY29uLXRoaW4tZGVsOiBcIlxcRTEwNFwiO1xyXG5AaWNvbi10aGluLWRlc2NyaXB0aW9uOiBcIlxcRTEwNVwiO1xyXG5AaWNvbi10aGluLWRpYW1vbmQ6IFwiXFxFMTA2XCI7XHJcbkBpY29uLXRoaW4tZGlmZjogXCJcXEUxMDdcIjtcclxuQGljb24tdGhpbi1kbXNmOiBcIlxcRTEwOFwiO1xyXG5AaWNvbi10aGluLWRvYzogXCJcXEUxMDlcIjtcclxuQGljb24tdGhpbi1kb2N1bWVudDogXCJcXEUxMEFcIjtcclxuQGljb24tdGhpbi1kb2N1bWVudHM6IFwiXFxFMTBCXCI7XHJcbkBpY29uLXRoaW4tZG9jeDogXCJcXEUxMENcIjtcclxuQGljb24tdGhpbi1kb2xsYXI6IFwiXFxFMTBEXCI7XHJcbkBpY29uLXRoaW4tZG93bi0xOiBcIlxcRTEwRVwiO1xyXG5AaWNvbi10aGluLWRvd24tMjogXCJcXEUxMEZcIjtcclxuQGljb24tdGhpbi1kb3dubG9hZDogXCJcXEUxMTBcIjtcclxuQGljb24tdGhpbi1kcml2ZTogXCJcXEUxMTFcIjtcclxuQGljb24tdGhpbi1lZGl0LTI6IFwiXFxFMTEyXCI7XHJcbkBpY29uLXRoaW4tZWRpdDogXCJcXEUxMTNcIjtcclxuQGljb24tdGhpbi1lbWFpbDogXCJcXEUxMTRcIjtcclxuQGljb24tdGhpbi1lbnVtZXJhdGlvbnM6IFwiXFxFMTE1XCI7XHJcbkBpY29uLXRoaW4tRVJQOiBcIlxcRTExNlwiO1xyXG5AaWNvbi10aGluLUVWTTogXCJcXEUxMTdcIjtcclxuQGljb24tdGhpbi1leHBlbnNlczogXCJcXEUxMThcIjtcclxuQGljb24tdGhpbi1leHRlcm5hbDogXCJcXEUxMTlcIjtcclxuQGljb24tdGhpbi1leHRyYS1tZW51OiBcIlxcRTExQVwiO1xyXG5AaWNvbi10aGluLWZhaWxzOiBcIlxcRTExQlwiO1xyXG5AaWNvbi10aGluLWZhdi1vZmY6IFwiXFxFMTFDXCI7XHJcbkBpY29uLXRoaW4tZmF2OiBcIlxcRTExRFwiO1xyXG5AaWNvbi10aGluLWZhdm9yaXQ6IFwiXFxFMTFFXCI7XHJcbkBpY29uLXRoaW4tZmlsZXM6IFwiXFxFMTFGXCI7XHJcbkBpY29uLXRoaW4tZmlsdGVyOiBcIlxcRTEyMFwiO1xyXG5AaWNvbi10aGluLWZpbmFuY2U6IFwiXFxFMTIxXCI7XHJcbkBpY29uLXRoaW4tZm9sZGVyOiBcIlxcRTEyMlwiO1xyXG5AaWNvbi10aGluLWZ1bGxzY3JlZW46IFwiXFxFMTIzXCI7XHJcbkBpY29uLXRoaW4tZ2FudHQ6IFwiXFxFMTI0XCI7XHJcbkBpY29uLXRoaW4tZ2lmOiBcIlxcRTEyNVwiO1xyXG5AaWNvbi10aGluLWdpdC1uZXc6IFwiXFxFMTI2XCI7XHJcbkBpY29uLXRoaW4tZ2l0OiBcIlxcRTEyN1wiO1xyXG5AaWNvbi10aGluLWdsb3NzYXJ5OiBcIlxcRTEyOFwiO1xyXG5AaWNvbi10aGluLWdyb3VwOiBcIlxcRTEyOVwiO1xyXG5AaWNvbi10aGluLWhlYXJ0OiBcIlxcRTEyQVwiO1xyXG5AaWNvbi10aGluLWhlbHA6IFwiXFxFMTJCXCI7XHJcbkBpY29uLXRoaW4taGlzdG9yeTogXCJcXEUxMkNcIjtcclxuQGljb24tdGhpbi1ob21lOiBcIlxcRTEyRFwiO1xyXG5AaWNvbi10aGluLWhvdXJnbGFzczogXCJcXEUxMkVcIjtcclxuQGljb24tdGhpbi1odG1sOiBcIlxcRTEyRlwiO1xyXG5AaWNvbi10aGluLWltcG9ydDogXCJcXEUxMzBcIjtcclxuQGljb24tdGhpbi1pbnZlbnRvcnk6IFwiXFxFMTMxXCI7XHJcbkBpY29uLXRoaW4taW52b2ljZXM6IFwiXFxFMTMyXCI7XHJcbkBpY29uLXRoaW4taXNzdWVzOiBcIlxcRTEzM1wiO1xyXG5AaWNvbi10aGluLWphdmE6IFwiXFxFMTM0XCI7XHJcbkBpY29uLXRoaW4tanBnOiBcIlxcRTEzNVwiO1xyXG5AaWNvbi10aGluLWpzOiBcIlxcRTEzNlwiO1xyXG5AaWNvbi10aGluLWthbmJhbjogXCJcXEUxMzdcIjtcclxuQGljb24tdGhpbi1rZXk6IFwiXFxFMTM4XCI7XHJcbkBpY29uLXRoaW4ta2V5MjogXCJcXEUxMzlcIjtcclxuQGljb24tdGhpbi1rZXlzLWNsb25lOiBcIlxcRTEzQVwiO1xyXG5AaWNvbi10aGluLWtub3dsZWRnZWJhc2U6IFwiXFxFMTNCXCI7XHJcbkBpY29uLXRoaW4tbGRhcC1hdXRoZW50aWNhdGlvbjogXCJcXEUxM0NcIjtcclxuQGljb24tdGhpbi1sZGFwLXdvcmtmbG93OiBcIlxcRTEzRFwiO1xyXG5AaWNvbi10aGluLWxpa2U6IFwiXFxFMTNFXCI7XHJcbkBpY29uLXRoaW4tbGluay1icmVhazogXCJcXEUxM0ZcIjtcclxuQGljb24tdGhpbi1sb2NrOiBcIlxcRTE0MFwiO1xyXG5AaWNvbi10aGluLWxvZ2luOiBcIlxcRTE0MVwiO1xyXG5AaWNvbi10aGluLWxvZ291dDogXCJcXEUxNDJcIjtcclxuQGljb24tdGhpbi1sb2dzOiBcIlxcRTE0M1wiO1xyXG5AaWNvbi10aGluLW1lZXRpbmc6IFwiXFxFMTQ0XCI7XHJcbkBpY29uLXRoaW4tbWVudXM6IFwiXFxFMTQ1XCI7XHJcbkBpY29uLXRoaW4tbWVyZ2U6IFwiXFxFMTQ2XCI7XHJcbkBpY29uLXRoaW4tbW9uZXk6IFwiXFxFMTQ3XCI7XHJcbkBpY29uLXRoaW4tbW9uaXRvcmluZy1jb250cm9sbGluZzogXCJcXEUxNDhcIjtcclxuQGljb24tdGhpbi1tb3ZlOiBcIlxcRTE0OVwiO1xyXG5AaWNvbi10aGluLW15LWFjY291bnQ6IFwiXFxFMTRBXCI7XHJcbkBpY29uLXRoaW4tbXktcGFnZTogXCJcXEUxNEJcIjtcclxuQGljb24tdGhpbi1uZXctb2JqZWN0LTI6IFwiXFxFMTRDXCI7XHJcbkBpY29uLXRoaW4tbmV3LW9iamVjdDogXCJcXEUxNERcIjtcclxuQGljb24tdGhpbi1uZXdzOiBcIlxcRTE0RVwiO1xyXG5AaWNvbi10aGluLW5leHQ6IFwiXFxFMTRGXCI7XHJcbkBpY29uLXRoaW4tbm8taW52b2ljZXM6IFwiXFxFMTUwXCI7XHJcbkBpY29uLXRoaW4tbm9ybWFsLWlzc3VlczogXCJcXEUxNTFcIjtcclxuQGljb24tdGhpbi1ub3RlOiBcIlxcRTE1MlwiO1xyXG5AaWNvbi10aGluLW5vdGlmaWNhdGlvbnM6IFwiXFxFMTUzXCI7XHJcbkBpY29uLXRoaW4tb2R0OiBcIlxcRTE1NFwiO1xyXG5AaWNvbi10aGluLW9wZW4tZm9sZGVyOiBcIlxcRTE1NVwiO1xyXG5AaWNvbi10aGluLW9wZW4tc2VhcmNoOiBcIlxcRTE1NlwiO1xyXG5AaWNvbi10aGluLW9wZW4tc2lkZWJhci1ob3I6IFwiXFxFMTU3XCI7XHJcbkBpY29uLXRoaW4tb3Blbi1zaWRlYmFyOiBcIlxcRTE1OFwiO1xyXG5AaWNvbi10aGluLW9yZGVyczogXCJcXEUxNTlcIjtcclxuQGljb24tdGhpbi1vdmVydmlldzogXCJcXEUxNUFcIjtcclxuQGljb24tdGhpbi1wYWdlczogXCJcXEUxNUJcIjtcclxuQGljb24tdGhpbi1wYXNzd2Q6IFwiXFxFMTVDXCI7XHJcbkBpY29uLXRoaW4tcGF1c2U6IFwiXFxFMTVEXCI7XHJcbkBpY29uLXRoaW4tcGRmOiBcIlxcRTE1RVwiO1xyXG5AaWNvbi10aGluLXBlb3BsZTogXCJcXEUxNUZcIjtcclxuQGljb24tdGhpbi1wZXJpb2RpYy10YXNrczogXCJcXEUxNjBcIjtcclxuQGljb24tdGhpbi1waG9uZTogXCJcXEUxNjFcIjtcclxuQGljb24tdGhpbi1waG90bzogXCJcXEUxNjJcIjtcclxuQGljb24tdGhpbi1waHA6IFwiXFxFMTYzXCI7XHJcbkBpY29uLXRoaW4tcGxhbm5pbmc6IFwiXFxFMTY0XCI7XHJcbkBpY29uLXRoaW4tcGxheTogXCJcXEUxNjVcIjtcclxuQGljb24tdGhpbi1wbHVnaW5zOiBcIlxcRTE2NlwiO1xyXG5AaWNvbi10aGluLXBuZzogXCJcXEUxNjdcIjtcclxuQGljb24tdGhpbi1wcmV2OiBcIlxcRTE2OFwiO1xyXG5AaWNvbi10aGluLXByZXZpZXctc2FsYXJ5OiBcIlxcRTE2OVwiO1xyXG5AaWNvbi10aGluLXByaW50OiBcIlxcRTE2QVwiO1xyXG5AaWNvbi10aGluLXByb2R1Y3RzOiBcIlxcRTE2QlwiO1xyXG5AaWNvbi10aGluLXByb2plY3RzOiBcIlxcRTE2Q1wiO1xyXG5AaWNvbi10aGluLXF1ZXN0aW9uczogXCJcXEUxNkRcIjtcclxuQGljb24tdGhpbi1xdWljay1zZWFyY2g6IFwiXFxFMTZFXCI7XHJcbkBpY29uLXRoaW4tcmVnaXN0ZXI6IFwiXFxFMTZGXCI7XHJcbkBpY29uLXRoaW4tcmVsb2FkLTI6IFwiXFxFMTcwXCI7XHJcbkBpY29uLXRoaW4tcmVsb2FkOiBcIlxcRTE3MVwiO1xyXG5AaWNvbi10aGluLXJlbWluZGVyOiBcIlxcRTE3MlwiO1xyXG5AaWNvbi10aGluLXJlcG9ydDogXCJcXEUxNzNcIjtcclxuQGljb24tdGhpbi1yZXBvcnRzOiBcIlxcRTE3NFwiO1xyXG5AaWNvbi10aGluLXJlcG9zaXRvcnk6IFwiXFxFMTc1XCI7XHJcbkBpY29uLXRoaW4tcmVzb3VyY2VzOiBcIlxcRTE3NlwiO1xyXG5AaWNvbi10aGluLXJpc2tzOiBcIlxcRTE3N1wiO1xyXG5AaWNvbi10aGluLXJvYWRtYXA6IFwiXFxFMTc4XCI7XHJcbkBpY29uLXRoaW4tcm9sZXM6IFwiXFxFMTc5XCI7XHJcbkBpY29uLXRoaW4tcm9zZXR0ZTogXCJcXEUxN0FcIjtcclxuQGljb24tdGhpbi1ydWJ5OiBcIlxcRTE3QlwiO1xyXG5AaWNvbi10aGluLXNhdmUtbmV3OiBcIlxcRTE3Q1wiO1xyXG5AaWNvbi10aGluLXNhdmU6IFwiXFxFMTdEXCI7XHJcbkBpY29uLXRoaW4tc2Nyb2xsOiBcIlxcRTE3RVwiO1xyXG5AaWNvbi10aGluLXNjcnVtOiBcIlxcRTE3RlwiO1xyXG5AaWNvbi10aGluLXNlYXJjaC1kb3duLWFycm93OiBcIlxcRTE4MFwiO1xyXG5AaWNvbi10aGluLXNlYXJjaDogXCJcXEUxODFcIjtcclxuQGljb24tdGhpbi1zZXR0aW5nczogXCJcXEUxODJcIjtcclxuQGljb24tdGhpbi1zbWFsbC1pc3N1ZXM6IFwiXFxFMTgzXCI7XHJcbkBpY29uLXRoaW4tc25pcHBldHM6IFwiXFxFMTg0XCI7XHJcbkBpY29uLXRoaW4tc29ydC1oYW5kbGU6IFwiXFxFMTg1XCI7XHJcbkBpY29uLXRoaW4tc3ByaW50LWJvYXJkOiBcIlxcRTE4NlwiO1xyXG5AaWNvbi10aGluLXNwcmludC1idXJuZG93bjogXCJcXEUxODdcIjtcclxuQGljb24tdGhpbi1zcHJpbnQta2FuYmFuOiBcIlxcRTE4OFwiO1xyXG5AaWNvbi10aGluLXN0YXRpc3RpY3M6IFwiXFxFMTg5XCI7XHJcbkBpY29uLXRoaW4tc3RhdHM6IFwiXFxFMThBXCI7XHJcbkBpY29uLXRoaW4tc3RvcC0xOiBcIlxcRTE4QlwiO1xyXG5AaWNvbi10aGluLXN0b3A6IFwiXFxFMThDXCI7XHJcbkBpY29uLXRoaW4tc3VtbWFyeTogXCJcXEUxOERcIjtcclxuQGljb24tdGhpbi1zdXJ2ZXk6IFwiXFxFMThFXCI7XHJcbkBpY29uLXRoaW4tdGFnczogXCJcXEUxOEZcIjtcclxuQGljb24tdGhpbi10ZW1wbGF0ZXM6IFwiXFxFMTkwXCI7XHJcbkBpY29uLXRoaW4tdGlja2V0czogXCJcXEUxOTFcIjtcclxuQGljb24tdGhpbi10aWZmOiBcIlxcRTE5MlwiO1xyXG5AaWNvbi10aGluLXRpbWUtZW50cmllczogXCJcXEUxOTNcIjtcclxuQGljb24tdGhpbi10eHQ6IFwiXFxFMTk0XCI7XHJcbkBpY29uLXRoaW4tdW4tbGlrZTogXCJcXEUxOTVcIjtcclxuQGljb24tdGhpbi11bmxvY2s6IFwiXFxFMTk2XCI7XHJcbkBpY29uLXRoaW4tdXAtMTogXCJcXEUxOTdcIjtcclxuQGljb24tdGhpbi11cC0yOiBcIlxcRTE5OFwiO1xyXG5AaWNvbi10aGluLXVwbG9hZDogXCJcXEUxOTlcIjtcclxuQGljb24tdGhpbi11c2VyOiBcIlxcRTE5QVwiO1xyXG5AaWNvbi10aGluLXZhcmlhYmxlczogXCJcXEUxOUJcIjtcclxuQGljb24tdGhpbi12YXVsdDogXCJcXEUxOUNcIjtcclxuQGljb24tdGhpbi12Y2Y6IFwiXFxFMTlEXCI7XHJcbkBpY29uLXRoaW4tdm90ZXM6IFwiXFxFMTlFXCI7XHJcbkBpY29uLXRoaW4td2FybmluZzogXCJcXEUxOUZcIjtcclxuQGljb24tdGhpbi13YnM6IFwiXFxFMUEwXCI7XHJcbkBpY29uLXRoaW4td2lraTogXCJcXEUxQTFcIjtcclxuQGljb24tdGhpbi13b3JrZmxvdzogXCJcXEUxQTJcIjtcclxuQGljb24tdGhpbi13cmVjazogXCJcXEUxQTNcIjtcclxuQGljb24tdGhpbi14bHM6IFwiXFxFMUE0XCI7XHJcbkBpY29uLXRoaW4teGxzeC0xOiBcIlxcRTFBNVwiO1xyXG5AaWNvbi10aGluLXhsc3g6IFwiXFxFMUE2XCI7XHJcbkBpY29uLXRoaW4teG1sOiBcIlxcRTFBN1wiO1xyXG5AaWNvbi10aGluLXlvdXR1YmU6IFwiXFxFMUE4XCI7XHJcbkBpY29uLXRoaW4temlwOiBcIlxcRTFBOVwiO1xyXG5AaWNvbi10aGluLXpvb20taW46IFwiXFxFMUFBXCI7XHJcbkBpY29uLXRoaW4tem9vbS1vdXQ6IFwiXFxFMUFCXCI7XHJcblxyXG5cclxuLyogRU5EIElDT04gRk9OVFMgKi9cciIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuLyogU1RBUlQgVkFSUyBCT1ggKi9cclxuLyogRU5EIFZBUlMgQk9YICovXHJcbi8qIFNUQVJUIEFERElUSU9OQUxTICovXHJcblxyXG4vKiBTVEVSVCBTRVRUSU5HUyAqL1xyXG5cclxuLmNvbnRyb2xsZXItc2V0dGluZ3Mge1xyXG4gICYuYWN0aW9uLXBsdWdpbiB7XHJcbiAgICAjY29udGVudCB7XHJcbiAgICAgIGZvcm0ge1xyXG4gICAgICAgIHRleHRhcmVhIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAgICYgKyAuaW5mbyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogNXB4IDAgMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgZGl2I3NldHRpbmdzIHtcclxuICAgICAgICBkaXYuc2V0dGluZ3Mge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaW5mbyB7XHJcbiAgICAgIGZsZXg6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgI3RhYi1jb250ZW50LXJ1bGVzIHtcclxuICAgICAgc2VsZWN0IHtcclxuICAgICAgICAmICsgLmpjZi1saXN0LWJveCxcclxuICAgICAgICAmICsgLmpjZi1zZWxlY3QsXHJcbiAgICAgICAgJiArIC5zZWxlY3QyIHtcclxuICAgICAgICAgIG1hcmdpbjogNXB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI3RhYi1jb250ZW50LW1lbnUge1xyXG4gICAgICBmaWVsZHNldCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgbGVnZW5kIHtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc3BhbltzdHlsZT1cInZlcnRpY2FsLWFsaWduOiB0b3A7IG1hcmdpbi1sZWZ0OiAxNXB4O1wiXSB7XHJcbiAgICAgIGZsZXg6IDE7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBTVEFSVCBNRU5VICovXHJcblxyXG4jaGVhZGVyICNhZG1pbi1tZW51IHtcclxuICBhLmFkZGl0aW9uYWxzIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBAaWNvbi1hZGRpdGlvbmFscztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiN3cmFwcGVyIC5mbHlvdXQtbWVudSB7XHJcbiAgI21haW4tbWVudSxcclxuICAjYWRtaW4tbWVudSB7XHJcbiAgICAuYWRkaXRpb25hbHMge1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogU1RBUlQgQURNSU4gUEFHRSAqL1xyXG5cclxuI2FkbWluLWluZGV4IHtcclxuXHJcbiAgI2FkbWluLW1lbnUge1xyXG5cclxuICAgIGEuYWRkaXRpb25hbHMge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBAaWNvbi1hZGRpdGlvbmFscztcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvYWRkaXRpb25hbHMuc3ZnKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8qIEVORCBBRE1JTiBQQUdFICovXHJcblxyXG4vKiBFTkQgTUVOVSAqL1xyXG4vKiBFTkQgU0VUVElOR1MgKi9cclxuXHJcbi8qIFNUUkFUIExPR0lOIFBBR0UgKi9cclxuXHJcbi5jb250cm9sbGVyLWFjY291bnQge1xyXG4gIC5hZGRpdGlvbmFscy1mb290ZXIge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuLmFkZGl0aW9uYWxzLWZvb3RlciB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnN0YXJ0IC5hZGRpdGlvbmFscy1mb290ZXIge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vKiBFTkQgTE9HSU4gUEFHRSAqL1xyXG4vKiBTVFJBVCBGT09URVIgKi9cclxuLmFkZGl0aW9uYWxzLWZvb3RlciB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogQGZzMTE7XHJcbiAgbGluZS1oZWlnaHQ6IEBmczExO1xyXG4gIHBhZGRpbmc6IDVweDtcclxuICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxufVxyXG4vKiBFTkQgRk9PVEVSICovXHJcblxyXG5ib2R5IHtcclxuICAuZ290b3RvcFtocmVmPVwiI2dvdG90b3BcIl0ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAtOTk5OTk5OTk5cHg7XHJcbiAgICBsZWZ0OiAtOTk5OTk5OTlweDtcclxuICB9XHJcbn1cclxuXHJcbiNjb250ZW50IHtcclxuICBmb3JtIHtcclxuICAgIC50YWJ1bGFyIHtcclxuICAgICAgI3RhYi1jb250ZW50LXdlYiB7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICBlbS5pbmZvIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZmx5b3V0LW1lbnUge1xyXG4gIC5zaWRlYmFyLWFkZGl0aW9uYWxzIHtcclxuICAgIHBhZGRpbmc6IDEwcHggIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XHJcbiAgdGFibGUubGlzdCB7XHJcbiAgICAuaGlkZWFibGUge1xyXG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8qIEVORCBBRERJVElPTkFMUyAqL1xyXG5cclxuLyogU1RBUlQgSVNTVUVTICovXHJcblxyXG5kaXYuaXNzdWUge1xyXG4gIC5hdHRyaWJ1dGVzIHtcclxuICAgICYgfiBmaWVsZHNldCB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgIHBhZGRpbmc6IDQ1cHggMzBweCAxNXB4O1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyA2MHB4JykgIWltcG9ydGFudDtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIG1hcmdpbjogMCAtMzBweCAyMHB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgbGVnZW5kIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAxNXB4O1xyXG4gICAgICAgIGxlZnQ6IDMwcHg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJiArIC50YWJ1bGFyIHtcclxuICAgICAgdGFibGUge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG5cclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIG1hcmdpbjogMCA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmF0dHJpYnV0ZXMge1xyXG4gICAgJiB+IGZpZWxkc2V0IHtcclxuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpIWltcG9ydGFudDtcclxuICAgICAgbWFyZ2luOiAtMXB4IC0xMHB4IDIwcHg7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIElTU1VFUyAqL1xyXG5cclxuLyogU1RBUlQgSVNTVUVTIEVESVQgKi9cclxuXHJcbi5jb250cm9sbGVyLWlzc3VlcyB7XHJcbiAgI3VwZGF0ZSB7XHJcbiAgICAuYXR0cmlidXRlcyB7XHJcblxyXG4gICAgICAmICsgLnRhYnVsYXIge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG5cclxuICAgICAgICAuYXV0b3Njcm9sbCB7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGFibGUge1xyXG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICAgICB0Ym9keSxcclxuICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIHRyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgIG1hcmdpbjogMCA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItaXNzdWVzIHtcclxuICAgICNjb250ZW50IHtcclxuICAgICAgI3VwZGF0ZSB7XHJcbiAgICAgICAgLmF0dHJpYnV0ZXMge1xyXG5cclxuICAgICAgICAgICYgKyAudGFidWxhciB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAuYXV0b3Njcm9sbCB7XHJcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGFibGUge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICB0ciB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgdGgge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgNXB4O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIElTU1VFUyBFRElUICovXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG4vKiBTVEFSVCBETVNGIFBMQUdJTiAqL1xyXG4vKiBTVEFSVCBBRE1JTiBQQVJUICovXHJcblxyXG4uaGFzLW1haW4tbWVudSAjaGVhZGVyICNtYWluLW1lbnUgdWwgYS5kbXNmIHtcclxuICAmOmFmdGVyIHtjb250ZW50OiBAaWNvbi1kbXNmO31cclxufVxyXG5cclxuYm9keSAjZG1zZl91c2Vyc19mb3JfZGVsZWdhdGUge1xyXG4gIGxhYmVsIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgfVxyXG59XHJcbiNhamF4LW1vZGFsIHtcclxuICAuZWRpdF9kbXNmX3dvcmtmbG93IHtcclxuICAgICNzZWxlY3RlZF9zdGVwLFxyXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuYnV0dG9ucyB7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgI2FkZC1zdGVwLWFuZCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIH1cclxuXHJcbiAgICAjYWRkLXN0ZXAtb3Ige1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI2FkbWluLWluZGV4IHtcclxuICAjYWRtaW4tbWVudSB7XHJcbiAgICBhLmRtc2YtYXBwcm92YWx3b3JrZmxvd3Mge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1jb2xvci9kbXNmLWFwcHJvdmFsd29ya2Zsb3dzLnN2Z1wiKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItZG1zZl93b3JrZmxvd3Mge1xyXG4gICNtYWluIHtcclxuICAgICYgPiNjb250ZW50IHtcclxuICAgICAgJiA+IGgyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1jb2xvci9kbXNmLWFwcHJvdmFsd29ya2Zsb3dzLnN2Z1wiKTtcclxuICAgICAgICBvcmRlcjogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItZG1zZl93b3JrZmxvd3Mge1xyXG4gICYuYWN0aW9uLW5ldyB7XHJcbiAgICAuZm9ybS1hY3Rpb25zIHtcclxuICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmFjdGlvbi1pbmRleCB7XHJcbiAgICBmb3JtIHtcclxuICAgICAgLmZpZWxkc2V0IHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O2JveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgcGFkZGluZzoyMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmF1dG9zY3JvbGwge1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI2NvbnRlbnQge1xyXG4gIGZvcm1bYWN0aW9uKj1cIi9zZXR0aW5ncy9wbHVnaW4vcmVkbWluZV9kbXNmXCJdIHtcclxuICAgIGVtLmluZm8ge1xyXG4gICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIG1hcmdpbjoxMHB4IDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItZG1zZl93b3JrZmxvd3Mge1xyXG4gICAgJi5hY3Rpb24taW5kZXgge1xyXG4gICAgICBmb3JtIHtcclxuICAgICAgICBmaWVsZHNldCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmFjdGlvbi1zaG93IHtcclxuICAgICAgLmVkaXRfZG1zZl93b3JrZmxvdyB7XHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0gfiBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgIG1hcmdpbjogMTBweCAwIDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNjb250ZW50IHtcclxuICAgIGZvcm1bYWN0aW9uKj1cIi9zZXR0aW5ncy9wbHVnaW4vcmVkbWluZV9kbXNmXCJdIHtcclxuICAgICAgLmpjZi1zZWxlY3Qge1xyXG4gICAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogU0VUIE1BR1JJTiBGT1IgLkJPWCArIFNVQk1JVCAqL1xyXG5cclxuLmNvbnRyb2xsZXItZG1zZi5hY3Rpb24tZWRpdF9yb290LFxyXG4uY29udHJvbGxlci1kbXNmX3dvcmtmbG93cy5hY3Rpb24tbmV3IHtcclxuICAjY29udGVudCB7XHJcbiAgICBmb3JtIHtcclxuICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvcik7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYm94IHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogU1RBUlQgTUFJTiBQQUdFUyAqL1xyXG5cclxuLmNvbnRyb2xsZXItZG1zZl91cGxvYWQgI21haW4+I2NvbnRlbnQ+aDIsXHJcbi5jb250cm9sbGVyLWRtc2YgI21haW4+I2NvbnRlbnQ+aDJ7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWNvbG9yL2Rtc2Yuc3ZnKTtcclxuICBwYWRkaW5nOiAxNXB4IDE0MHB4IDE1cHggNDVweDtcclxufVxyXG5cclxuLmNvbnRyb2xsZXItZG1zZl91cGxvYWQge1xyXG4gICYuYWN0aW9uLW11bHRpX3VwbG9hZCB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuXHJcbiAgICAjY29udGVudCB7XHJcbiAgICAgIGZvcm0ge1xyXG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2Rtc2ZfYXR0YWNobWVudHNfZmllbGRzIHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgc3BhbiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRtc2YtdXBsb2FkZXIge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgICAgbWluLWhlaWdodDogMzBweDtcclxuXHJcbiAgICAgIC5pbmZvIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiA0cHg7XHJcbiAgICAgICAgbGVmdDogMzVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5hY3Rpb24tdXBsb2FkX2ZpbGVzIHtcclxuICAgIC5qY2Ytc2VsZWN0LWRtc2Ytc2VsZWN0LXZlcnNpb24gfiAuamNmLXNlbGVjdC1kbXNmLXNlbGVjdC12ZXJzaW9uIHtcclxuICAgICAgbWFyZ2luOiA1cHggMTBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI2NvbnRleHQtbWVudSB7XHJcbiAgYS5kbXNmLWljb24tZmlsZSB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogQGVkaXQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGEuaWNvbi1lbWFpbC1hZGQge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IEBlZGl0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItZG1zZiB7XHJcbiAgJi5hY3Rpb24tc2hvdyB7XHJcbiAgICAuYXV0b3Njcm9sbCB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgI21haW4ge1xyXG4gICAgICAubGlzdC5kbXNmIHtcclxuICAgICAgICAuaWNvbi1mb2xkZXIsXHJcbiAgICAgICAgLmljb24tZmlsZSB7XHJcbiAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDMwcHg7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSxcclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pY29uLWZpbGUge1xyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IEBkb3dubG9hZDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pY29uLWZvbGRlciB7XHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogQHByb2plY3RzO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRtc2YtZmlsZW5hbWUge1xyXG4gICAgICAgICAgbWluLWhlaWdodDogMjZweDtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuYWN0aW9uLW5ldyB7XHJcbiAgICBzcGFuLnNlYXJjaF9mb3Jfd2F0Y2hlcnMsXHJcbiAgICBzcGFuLmFkZF9hdHRhY2htZW50IHtcclxuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLWRtc2ZfbGlua3Mge1xyXG4gICYuYWN0aW9uLW5ldyB7XHJcbiAgICAjbWFpbiB7XHJcbiAgICAgICNjb250ZW50IHtcclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBmb250LXNpemU6IEAxMDI0X2gyO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDQ1cHg7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyA2MHB4Jyk7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgbWFyZ2luOiAwIC0zMHB4IDcwcHg7XHJcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAgMzBweCAzMHB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCA1MCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvbGluay5zdmcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJveCB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtLWFjdGlvbnMge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAuY29udHJvbGxlci1kbXNmX2xpbmtzIHtcclxuICAgICYuYWN0aW9uLW5ldyB7XHJcbiAgICAgICNtYWluIHtcclxuICAgICAgICAjY29udGVudCB7XHJcbiAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggNTAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHggMjVweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIC0xMHB4IDIwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjBweCAxNXB4IDQ1cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyMHB4KTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gIC5jb250cm9sbGVyLWRtc2ZfbGlua3Mge1xyXG4gICAgJi5hY3Rpb24tbmV3IHtcclxuICAgICAgI21haW4ge1xyXG4gICAgICAgICNjb250ZW50IHtcclxuICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIC0xMHB4IDIwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoMjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zZWxlY3QyIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICYgfiAqIHtcclxuICAgICAgICAgIG1hcmdpbjogNXB4IDAgNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8qIEVORCBNQUlOIFBBR0VTICovXHJcblxyXG4vKiBTVEFSVCBNT0RBTCAqL1xyXG5cclxuZGl2Lm1vZGFsLFxyXG5kaXYudWktZGlhbG9nIHtcclxuICBmb3JtW2FjdGlvbio9XCJkbXNmX2ZvbGRlcl9wZXJtaXNzaW9uc1wiXSB7XHJcbiAgICAuZm9ybS1hY3Rpb25zIHtcclxuICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgbWFyZ2luOiAwIC0yMHB4IC0yMHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cykgdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKSB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogMCAwIHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKSB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvcik7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnKTtcclxuICAgICAgcGFkZGluZzogOHB4IDMwcHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICBtYXJnaW46IDAgMjBweCAwIDA7XHJcbiAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgKyBhW29uY2xpY2tdLFxyXG4gICAgICAmICsgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvcik7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzogOHB4IDMwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgTU9EQUwgKi9cclxuXHJcbiNtYWluIHtcclxuICAmID4gI2NvbnRlbnQge1xyXG4gICAgI25ld19yZXZpc2lvbl9mb3JtX2NvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nOiAyMHB4IDAgMDtcclxuXHJcbiAgICAgIGJyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDVweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgI2N1c3RvbV92ZXJzaW9uX21ham9yIHtcclxuICAgICAgICAmIH4gLnNlbGVjdDIge1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiA3MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiB+IHNlbGVjdCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICNmaWxlX3VwbG9hZF9ib3gge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIHdpZHRoOiAyOTVweDtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIC0yOTVweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgcCB7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMjk1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjY3VzdG9tX3ZlcnNpb25fbWFqb3IgKyAuc2VsZWN0MiB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIH1cclxuICAgICNjdXN0b21fdmVyc2lvbl9taW5vciArIC5zZWxlY3QyIHtcclxuICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLWRtc2ZfZmlsZXMge1xyXG4gICYuYWN0aW9uLXNob3cge1xyXG5cclxuICAgICNtYWluIHtcclxuICAgICAgLmljb24tYWN0aW9ucyB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRtc2YtaWQtYm94IHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWFyZ2luOjAgMCAyMHB4O1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAuZG1zZi1yZXZpc2lvbi1ib3gge1xyXG4gICAgICBtYXJnaW46IDAgMCAzMHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG5cclxuICAgICAgLmRtc2Ytd2lkZ2V0LWhlYWRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMDtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5kbXNmLXJldmlzaW9uLWlubmVyLWJveCB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5kbXNmLXJldmlzaW9uLWFjY2VzcyB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gICNtYWluIHtcclxuICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICNuZXdfcmV2aXNpb25fZm9ybV9jb250ZW50IHtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMDtcclxuXHJcbiAgICAgICAgI2ZpbGVfdXBsb2FkX2JveCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDBweDtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYnIge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogNXB4O1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICNjdXN0b21fdmVyc2lvbl9tYWpvciB7XHJcbiAgICAgICAgICAmIH4gLnNlbGVjdDIge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDcwcHg7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJiB+IHNlbGVjdCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjY3VzdG9tX3ZlcnNpb25fbWFqb3IgKyAuc2VsZWN0MiB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICAgICNjdXN0b21fdmVyc2lvbl9taW5vciArIC5zZWxlY3QyIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gICNtYWluIHtcclxuICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICNuZXdfcmV2aXNpb25fZm9ybV9jb250ZW50IHtcclxuICAgICAgICAjY3VzdG9tX3ZlcnNpb25fbWFqb3Ige1xyXG4gICAgICAgICAgJiB+IC5zZWxlY3QyIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmIH4gc2VsZWN0IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgI2N1c3RvbV92ZXJzaW9uX21pbm9yIHtcclxuICAgICAgICAgICYgKyAuc2VsZWN0MiB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogNXB4IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLWRtc2ZfdXBsb2FkIHtcclxuICAgICYuYWN0aW9uLW11bHRpX3VwbG9hZCB7XHJcbiAgICAgICNjb250ZW50IHtcclxuICAgICAgICBmb3JtIHtcclxuICAgICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5kbXNmX2FkZF9hdHRhY2htZW50IHtcclxuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItZG1zZl91cGxvYWQgI21haW4+I2NvbnRlbnQ+aDIsXHJcbiAgLmNvbnRyb2xsZXItZG1zZiAjbWFpbj4jY29udGVudD5oMntcclxuICAgIHBhZGRpbmc6IDE1cHggMTQwcHggMTVweCA0NXB4O1xyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xyXG4gIC5jb250cm9sbGVyLWRtc2ZfdXBsb2FkICNtYWluPiNjb250ZW50PmgyLFxyXG4gIC5jb250cm9sbGVyLWRtc2YgI21haW4+I2NvbnRlbnQ+aDJ7XHJcbiAgICBwYWRkaW5nOiA0NXB4IDEwcHggMTVweCA0NXB4O1xyXG4gIH1cclxufVxyXG4vKiBFTkQgRE1TRiBQTEFHSU4gICovXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuLyogU1RBUlQgVkFVTFQgKi9cclxuXHJcbiN0YWItY29udGVudC1rZXlzIHtcclxuICAmID4gYnIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5wdWJsaWNfa2V5X3ZpZXcge1xyXG4gIHAge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmstZ3JleSk7XHJcbiAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiAwIDAgMCAyOTVweDtcclxuXHJcbiAgICAmID4gbGFiZWwge1xyXG4gICAgICBtYXJnaW46IDAgMTBweCAwIDAgIWltcG9ydGFudDtcclxuICAgICAgZmxleDogMCAxIGF1dG87XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG5cclxuICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIC0yOTVweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHdpZHRoOiAyOTVweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAucHVibGljX2tleV92aWV3IHtcclxuICAgIHAge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgbGFiZWwge1xyXG5cclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDVweCAwIWltcG9ydGFudDtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29udHJvbGxlci12YXVsdF9zZXR0aW5ncyB7XHJcbiAgI2NvbnRlbnQge1xyXG4gICAgI3NldHRpbmdzIHtcclxuICAgICAgZm9ybVthY3Rpb249XCIvdmF1bHRfc2V0dGluZ3Mvc2F2ZVwiXSB7XHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4Oy8qMjBweCAwOyovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjc2V0dGluZ3NfZW5jcnlwdGlvbl9rZXkge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgZm9ybVthY3Rpb249XCIvdmF1bHRfc2V0dGluZ3MvYmFja3VwXCJdIHtcclxuICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGZvcm1bYWN0aW9uPVwiL3ZhdWx0X3NldHRpbmdzL3Jlc3RvcmVcIl0ge1xyXG4gICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBmb3JtIHtcclxuICAgICAgLmJveCB7XHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0YWJsZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICB0aCB7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jY29udGVudCB7XHJcbiAgLmhvbGRlci1rZXktZm9ybSB7XHJcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xyXG5cclxuICAgIGZvcm0ge1xyXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXS5hdXRvY29tcGxldGUge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmF1dG9zY3JvbGwge1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXIta2V5cyAjY29udGVudCB7XHJcbiAgLmhvbGRlci1rZXktZm9ybSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIGZvcm0ge1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuXHJcbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgIG1hcmdpbjogNXB4IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuI3ZhdWx0X3doaXRlbGlzdCB7XHJcbiAgLndoaXRlbGlzdF91c2VycyB7XHJcbiAgICBiciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgdGQge1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gIC5jb250cm9sbGVyLWtleXMgI2NvbnRlbnQge1xyXG4gICAgLmhvbGRlci1rZXktZm9ybSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgZm9ybSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgIG1hcmdpbjogMTBweCAwIDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5idXR0b25fdG8ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgLmNvbnRyb2xsZXIta2V5cyAjY29udGVudCB7XHJcbiAgICAuaG9sZGVyLWtleS1mb3JtIHtcclxuICAgICAgZm9ybSB7XHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0uYXV0b2NvbXBsZXRlIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgVkFVTFQgKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcbi8qIFNUQVJUIENVU1RPTSBXT1JLRkxPV1MgKi9cclxuI2NvbnRlbnQge1xyXG4gICNuZXdfY3VzdG9tX3dvcmtmbG93IHtcclxuICAgIGRpdi5ib3gge1xyXG4gICAgICAmID4gZmllbGRzZXQsXHJcbiAgICAgICYgPiBmaWVsZHNldC50YWJ1bGFyIHtcclxuXHJcbiAgICAgICAgLmNvbGxhcHNpYmxlIHtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBwYWRkaW5nOiA1MHB4IDMwcHggMTVweDtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAgICAgICBsZWdlbmQge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggMCA1MHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgIHRvcDogNXB4O1xyXG4gICAgICAgICAgICAgIGxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLWljb24td2lkdGgpIHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICAgIGNvbnRlbnQ6IEBvcGVuLWZvbGRlcjtcclxuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLmNvbGxhcHNlZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMzBweCAxNXB4O1xyXG5cclxuICAgICAgICAgICAgbGVnZW5kIHtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuXHJcbiAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgI2NvbnRlbnQge1xyXG4gICAgI25ld19jdXN0b21fd29ya2Zsb3cge1xyXG4gICAgICBkaXYuYm94IHtcclxuICAgICAgICAmID4gZmllbGRzZXQsXHJcbiAgICAgICAgJiA+IGZpZWxkc2V0LnRhYnVsYXIge1xyXG4gICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XHJcblxyXG4gICAgICAgICAgbGVnZW5kIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB0b3A6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgIGxlZnQ6IC0xMHB4O1xyXG4gICAgICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctbW9iaWxlKTtcclxuICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgQ1VTVE9NIFdPUktGTE9XUyAqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIFNQRUNUQVRPUiBQTEFHSU4gKi9cclxuXHJcbi5jb250cm9sbGVyLXNwZWN0YXRvciB7XHJcbiAjbWFpbiA+ICNjb250ZW50IHtcclxuICAgIGgxIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBmb250LXNpemU6IEAxMDI0X2gyO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgcGFkZGluZzogMTVweCA0NXB4O1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyA2MHB4Jyk7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBtYXJnaW46IDAgLTMwcHggNzBweDtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6ICAzMHB4IDMwcHg7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgNTAlO1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgaDMge1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIHBhZGRpbmc6MjBweDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgI2NoYW5nZV91c2VyX2Zvcm0ge1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzEwMCUgLSAyOTVweCcpO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItc3BlY3RhdG9yIHtcclxuICAgICYuYmlnLW1lbnUge1xyXG4gICAgICAjbWFpbiA+ICNjb250ZW50IHtcclxuICAgICAgICAjY2hhbmdlX3VzZXJfZm9ybSB7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgLSAyMDBweCcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAuY29udHJvbGxlci1zcGVjdGF0b3Ige1xyXG4gICAgI21haW4gPiAjY29udGVudCB7XHJcbiAgICAgIGgxIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggNTAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjVweCAyNXB4O1xyXG4gICAgICAgIG1hcmdpbjogMCAtMTBweCAyMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweCAxNXB4IDQ1cHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAuY29udHJvbGxlci1zcGVjdGF0b3Ige1xyXG4gICAgI21haW4gPiAjY29udGVudCB7XHJcbiAgICAgIGgxIHtcclxuICAgICAgICBtYXJnaW46IDAgLTEwcHggMjBweDtcclxuICAgICAgICBmb250LXNpemU6IEBmczE2O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoMjtcclxuICAgICAgfVxyXG5cclxuICAgICAgaDMge1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTBweCAxNXB4O1xyXG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICBtYXJnaW46IDAgLTEwcHg7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAjY2hhbmdlX3VzZXJfZm9ybSB7XHJcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XHJcbiAgICAgICAgbWFyZ2luOiA1cHggMCAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAxNXB4IDAgMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgU1BFQ1RBVE9SIFBMQUdJTiAqL1xyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcbi8qIFNUQVJUIEdJVCBIT1NUSU5HICovXHJcblxyXG5mb3JtW2FjdGlvbj1cIi9zZXR0aW5ncy9wbHVnaW4vcmVkbWluZV9naXRfaG9zdGluZ1wiXSB7XHJcblxyXG4gIC5naXRfaG9zdGluZ19hY2Nlc3NfYm94IHtcclxuICAgIGJvcmRlci13aWR0aDogMXB4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5vdGljZS1zdWNjZXNzZnUtYmcpO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ub3RpY2Utc3VjY2Vzc2Z1LW1haW4pO1xyXG4gICAgY29sb3I6IHZhcigtLW5vdGljZS1zdWNjZXNzZnUtYmctdGV4dCk7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gIH1cclxuXHJcbiAgLmxhYmVsIHtcclxuICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItZGlzYWJsZWQpO1xyXG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ1dHRvbi1iZy1kaXNhYmxlZCk7XHJcbiAgfVxyXG5cclxuICAubGFiZWwtaW1wb3J0YW50IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcclxuICB9XHJcblxyXG4gIC5sYWJlbC1lcnJvciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XHJcbiAgfVxyXG5cclxuICAubGFiZWwtd2FybmluZyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13YXJuaW5nKTtcclxuICB9XHJcblxyXG4gIC5sYWJlbC1zdWNjZXNzIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuICB9XHJcblxyXG4gIC5sYWJlbC1pbmZvIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWUpO1xyXG4gIH1cclxuXHJcbiAgLmdpdF9ob3N0aW5nX2FjY2Vzc19ib3ggZW0ge1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsdWUpO1xyXG4gIH1cclxuICAudGh1bWJuYWlsIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgfVxyXG4gICNzdGF0aXN0aWNzLWdsb2JhbCAudGh1bWJuYWlsIHtcclxuICAgIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICB9XHJcbiAgLnRodW1ibmFpbCBoNSB7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lIHJlcGVhdCBzY3JvbGwgMCAwIHZhcigtLW5vdGljZS1zdWNjZXNzZnUtbWFpbik7XHJcbiAgICBjb2xvcjogdmFyKC0tbm90aWNlLXN1Y2Nlc3NmdS1tYWluLXRleHQpO1xyXG4gIH1cclxufVxyXG5cclxuI3RhYi1jb250ZW50LWdpdG9saXRlX3JlY3ljbGVfYmluIHtcclxuICAubm9kYXRhIHtcclxuICAgIHBhZGRpbmc6IDEwcHggMDtcclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBHSVQgSE9TVElORyAqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIFNJREVCQVIgUFJPSkVDVFMgKi9cclxuXHJcbiNtYWluIHtcclxuICAjc2lkZWJhciB7XHJcbiAgICAucHJvamVjdHMucm9vdCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgd2lkdGg6IGNhbGMoficxMDAlIC0gMTBweCcpO1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG5cclxuICAgICAgZGl2LnJvb3Qge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBsaS5yb290IHtcclxuICAgICAgICBtYXJnaW46IDVweCAwIDA7XHJcblxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBhLnByb2plY3Qge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIG1pbi13aWR0aDogYXV0bztcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnKTtcclxuXHJcbiAgICAgICAgJjphZnRlcixcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5saW5rX2NoaWxkIHtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDoyO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBmb250LXNpemU6MHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OjBweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICBtaW4td2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgbWluLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OiBAbmV4dDtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZS1zbWFsbCk7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlKTtcclxuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmICsgYS5wcm9qZWN0IHtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSAtIDM2cHgnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaWNvbi1hcnJvdy1kb3duIHtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAucm9vdC5hY3RpdmUgPiAucm9vdCA+IGEucHJvamVjdCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5oYXMtc2lkZWJhciB7XHJcbiAgI3dyYXBwZXIge1xyXG4gICAgI3NpZGViYXIge1xyXG4gICAgICB1bC5wcm9qZWN0cyB7XHJcbiAgICAgICAgdWwucHJvamVjdHMge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCAzNnB4O1xyXG5cclxuICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luOiA1cHggMCAwIDA7XHJcblxyXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIFNJREVCQVIgUFJPSkVDVFMgKi9cclxuXHJcbi8qIFNUQVJUIEZMWU9VVCBNRU5VICovXHJcbiN3cmFwcGVyIHtcclxuICAuZmx5b3V0LW1lbnUge1xyXG4gICAgdWwge1xyXG4gICAgICBsaS5oYXMtY2hpbGQsXHJcbiAgICAgIGxpOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAmLmhhcy1jaGlsZCB7XHJcbiAgICAgICAgICAucm9vdCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1mbHlvdXRfbWVudV9ib3JkZXIpO1xyXG5cclxuICAgICAgICAgICAgJiA+IGEge1xyXG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5wcm9qZWN0IHtcclxuICAgICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xyXG4gICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgYS5saW5rX2NoaWxkIHtcclxuICAgICAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCA1cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWZseW91dF9tZW51X2J1dHRvbl9iZyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1mbHlvdXRfbWVudV9idXR0b25fY29sb3IpO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgY29udGVudDogQG5leHQ7XHJcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZmx5b3V0X21lbnVfYnV0dG9uX2NvbG9yKTtcclxuICAgICAgICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZS1zbWFsbCk7XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICAgIHdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuaWNvbi1hcnJvdy1kb3duIHtcclxuICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIHdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxuICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAgICAgICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgYS5wcm9qZWN0IHtcclxuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAucm9vdCB7XHJcbiAgICAgICAgICAgICYgPiBhLnByb2plY3Qge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWZseW91dF9tZW51X2JnX3NlbGVjdGVkKTtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZmx5b3V0X21lbnVfY29sb3Jfc2VsZWN0ZWQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgRkxZT1VUIE1FTlUgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuIiwiLmNvbnRyb2xsZXIta2V5cyB7XHJcbiAgI2tleXNfdGFibGUge1xyXG4gICAgYS5rZXlzLWFjdGlvbnMge1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgIHBhZGRpbmc6MDtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICBtYXJnaW46MDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgei1pbmRleDoyO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgZm9udC1zaXplOjBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6MHB4O1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmU7IC8qY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7Ki9cclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IG5vbmU7IC8qY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7Ki9cclxuICAgICAgICB0cmFuc2l0aW9uOiBub25lOyAvKmNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0OyovXHJcbiAgICAgIH1cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWxpc3QpICFpbXBvcnRhbnQ7IC8qdmFyKC0taWNvbi1jb2xvci1ob3ZlcikgIWltcG9ydGFudDsqL1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBpbWcsXHJcbiAgICAgIC5mYSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJltocmVmKj1cIi9lZGl0XCJdOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBAZWRpdDtcclxuICAgICAgfVxyXG4gICAgICAmW2hyZWYqPVwiL2NvcHlcIl06YWZ0ZXIsXHJcbiAgICAgICYuY29weS1rZXk6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IEBjb3B5O1xyXG4gICAgICB9XHJcbiAgICAgICZbZGF0YS1tZXRob2Q9XCJkZWxldGVcIl06YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IEBkZWw7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuYWN0aW9uLWluZGV4e1xyXG4gICAgI21haW4ge1xyXG4gICAgICAjY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDc2cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNjb250ZXh0LW1lbnUgI3ZhdWx0X2NvbnRleHRfbWVudSAuY29uZXh0X21lbnUge1xyXG4gIHBhZGRpbmc6IDAgMCAwIDIwcHg7XHJcblxyXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZmZmKTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZm9udC1zaXplOiBAZnMxMjtcclxuICBsaW5lLWhlaWdodDogQGdsaDtcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgbWluLWhlaWdodDogYXV0bztcclxuICB3aWR0aDogMTAwJTtcclxuICBjb2xvcjogdmFyKC0tZHJvcC10ZXh0LWNvbG9yKTtcclxuICBwYWRkaW5nOiA0cHggNXB4IDRweCAzMHB4O1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcclxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgei1pbmRleDogMjtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbWFyZ2luOiAtMTBweCAwIDA7XHJcbiAgICBsZWZ0OiA1cHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplLXNtYWxsKTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgIGNvbG9yOiB2YXIoLS1kcm9wLXRleHQtY29sb3IpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gIH1cclxuXHJcbiAgJjpiZWZvcmUge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogYXV0bztcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodC1iZyk7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgYm9yZGVyOiAwO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQtYmcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5kaXNhYmxlZCB7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICBib3JkZXI6IDA7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuZGlzYWJsZWQge1xyXG4gICAgY29sb3I6IHZhcigtLW5vdGljZS1lcnJvci1tYWluLXRleHQpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbm90aWNlLWVycm9yLWJnKTtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLW5vdGljZS1lcnJvci1tYWluLXRleHQpO1xyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLW5vdGljZS1lcnJvci1iZyk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1ub3RpY2UtZXJyb3ItbWFpbi10ZXh0KTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tbm90aWNlLWVycm9yLWJnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZbaHJlZio9XCIvZWRpdFwiXTphZnRlciB7XHJcbiAgICBjb250ZW50OiBAZWRpdDtcclxuICB9XHJcbiAgJltocmVmKj1cIi9jb3B5XCJdOmFmdGVyLFxyXG4gICZbZGF0YS1jb3B5dGFyZ2V0XTphZnRlciB7XHJcbiAgICBjb250ZW50OiBAY29weTtcclxuICB9XHJcblxyXG4gIGltZyxcclxuICAuZmEge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5uZXdfdmF1bHRfa2V5ICN2YXVsdF93aGl0ZWxpc3Qge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICBsYWJlbC53aGl0ZWxpc3RfdXNlcnMge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICB0YWJsZS53aGl0ZWxpc3RfdXNlcnMge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG5cclxuICAgIGJyIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBsYWJlbC5uby1jc3Mge1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4uY29udHJvbGxlci1rZXlzIHtcclxuICAmLmFjdGlvbi1uZXcge1xyXG4gICAgI21haW4gPiAjY29udGVudCBoMSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgZm9udC1zaXplOiBAMTAyNF9oMjtcclxuICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggNDVweDtcclxuICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgNjBweCcpO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgbWFyZ2luOiAwIC0zMHB4IDIwcHg7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6ICAzMHB4IDMwcHg7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgNTAlO1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICB9XHJcblxyXG4gICAgYVtocmVmKj1cIi9rZXlzXCJdIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIHBhZGRpbmc6IDhweCAxNXB4O1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgICBtYXJnaW46IDEwcHggMCAwO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yKTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmctaG92ZXIpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jbWFpbiB7XHJcbiAgI2NvbnRlbnQge1xyXG4gICAgZm9ybSNuZXdfZ2l0b2xpdGVfcHVibGljX2tleSB7XHJcbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgICYgKyBhIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItYmcpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWJnKTtcclxuXHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvci1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlci1iZyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRhYi1jb250ZW50IHtcclxuICAgICAgLmVkaXRfdXNlciB7XHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmNvbnRyb2xsZXIta2V5cyB7XHJcbiAgICAmLmFjdGlvbi1uZXcge1xyXG4gICAgICAjbWFpbiA+ICNjb250ZW50IGgxIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggNTAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjVweCAyNXB4O1xyXG4gICAgICAgIG1hcmdpbjogMCAtMTBweCAyMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweCAxNXB4IDQ1cHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAuY29udHJvbGxlci1rZXlzIHtcclxuICAgICYuYWN0aW9uLW5ldyB7XHJcbiAgICAgICNtYWluID4gI2NvbnRlbnQgaDEge1xyXG4gICAgICAgIG1hcmdpbjogMCAtMTBweCAyMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGgyO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBhW2hyZWYqPVwiL2tleXNcIl0ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjY29udGVudCAudGFiLWNvbnRlbnQjdGFiLWNvbnRlbnQta2V5cyBmaWVsZHNldCB7XHJcbiAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICB9XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLWdpdG9saXRlX3B1YmxpY19rZXlze1xyXG4gICYuYWN0aW9uLWluZGV4IHtcclxuICAgICNtYWluIHtcclxuICAgICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBmb250LXNpemU6IEAxMDI0X2gyO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDQ1cHg7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyA2MHB4Jyk7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgbWFyZ2luOiAwIC0zMHB4IDIwcHg7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogIDMwcHggMzBweDtcclxuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgNTAlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wdWJsaWNfa2V5X3ZpZXcge1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIHBhZGRpbmc6IDUycHggMjBweCAyMHB4O1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG5cclxuICAgICAgbGVnZW5kIHtcclxuICAgICAgICBsZWZ0OiAyMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDE3cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gIC5jb250cm9sbGVyLWdpdG9saXRlX3B1YmxpY19rZXlzIHtcclxuICAgICYuYWN0aW9uLWluZGV4IHtcclxuICAgICAgI21haW4ge1xyXG4gICAgICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggNTAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHggMjVweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIC0xMHB4IDIwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjBweCAxNXB4IDQ1cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyMHB4KTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItZ2l0b2xpdGVfcHVibGljX2tleXMge1xyXG4gICAgJi5hY3Rpb24taW5kZXgge1xyXG4gICAgICAjbWFpbiB7XHJcbiAgICAgICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIC0xMHB4IDIwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoMjtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAucHVibGljX2tleV92aWV3IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcblxyXG4gICAgICAgICAgICBsZWdlbmQge1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xyXG4gICAgICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1tb2JpbGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuLyogU1RBUlQgUkVNSU5ERVIgKi9cclxuXHJcbi5jb250cm9sbGVyLW1haWxfcmVtaW5kZXJzIHtcclxuICAmLmFjdGlvbi1pbmRleCB7XHJcbiAgICBmaWVsZHNldCB7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBwYWRkaW5nOjUycHggMjBweCAxNXB4O1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLW90aGVyKTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcblxyXG4gICAgICBsZWdlbmQge1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDoxN3B4O1xyXG4gICAgICAgIGxlZnQ6MjBweDtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBwLFxyXG4gICAgICAjaW50ZXJ2YWxfdmFsdWVzLW5ldyxcclxuICAgICAgI3JlbWluZGVyX2ludGVydmFsLW5ldyB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIGZsZXg6IDAgMSBhdXRvO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgICAgICAmW2Zvcj1cInJlbWluZGVyX1F1ZXJ5XCJdIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgI2ludGVydmFsX3ZhbHVlLFxyXG4gICAgICAjcmVtaW5kZXJfaW50ZXJ2YWwge1xyXG4gICAgICAgICYgfiAuc2VsZWN0MiB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjcmVwb3J0ZXIgKyBsYWJlbCxcclxuICAgICAgI2RldmVsb3BlciArIGxhYmVsLFxyXG4gICAgICAjbWFuYWdlciArIGxhYmVsIHtcclxuICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAjcmVtaW5kZXJfcXVlcnlfaWQgfiAuc2VsZWN0MiB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlIC0gNDBweCcpICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjY29udGVudCB7XHJcbiAgICAgIGZvcm0ge1xyXG4gICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItbWFpbF9yZW1pbmRlcnMge1xyXG4gICAgJi5hY3Rpb24taW5kZXgge1xyXG4gICAgICBmaWVsZHNldCB7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAxMHB4IDE1cHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuXHJcbiAgICAgICAgbGVnZW5kIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctbW9iaWxlKTtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zcGxpdGNvbnRlbnRsZWZ0IHtcclxuICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5jb250cm9sbGVyLXJlbWluZGVyX2NvbmZpZ3VyYXRpb24ge1xyXG4gICYuYWN0aW9uLWVkaXQge1xyXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIH4gKiB7XHJcbiAgICAgIG1hcmdpbjoxMHB4IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB+IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgICAgIG1hcmdpbjogMTBweCAxMHB4IDEwcHggMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5lZGl0X3JlbWluZGVyX2NvbmZpZ3VyYXRpb24ge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgcGFkZGluZzoxNXB4IDIwcHggMTVweDtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLW90aGVyKTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gIC5jb250cm9sbGVyLXJlbWluZGVyX2NvbmZpZ3VyYXRpb24ge1xyXG4gICAgJi5hY3Rpb24tZWRpdCB7XHJcbiAgICAgICNtYWluID4gI2NvbnRlbnQgPiAuZWRpdF9yZW1pbmRlcl9jb25maWd1cmF0aW9uIHtcclxuICAgICAgICBwYWRkaW5nOjE1cHggMTBweCAxNXB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIH4gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgICAgICBtYXJnaW46IDAgMTBweCAxMHB4IDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgUkVNSU5ERVIgKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcbi8qIFNUQVJUIENBTk5FRCBSRVNQT05TRVMgKi9cclxuXHJcbi5jb250cm9sbGVyLWNhbm5lZF9yZXNwb25zZXMge1xyXG4gICYuYWN0aW9uLWluZGV4IHtcclxuICAgICNtYWluIHtcclxuICAgICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBmb250LXNpemU6IEAxMDI0X2gyO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDQ1cHg7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyA2MHB4Jyk7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgbWFyZ2luOiAwIC0zMHB4IDIwcHg7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogIDMwcHggMzBweDtcclxuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgNTAlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAuY29udHJvbGxlci1jYW5uZWRfcmVzcG9uc2VzIHtcclxuICAgICYuYWN0aW9uLWluZGV4IHtcclxuICAgICAgI21haW4ge1xyXG4gICAgICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAuY29udHJvbGxlci1jYW5uZWRfcmVzcG9uc2VzIHtcclxuICAgICYuYWN0aW9uLWluZGV4IHtcclxuICAgICAgI21haW4ge1xyXG4gICAgICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMTBweCAyMHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IEBmczE2O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogQGdsaDI7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8qIEVORCBDQU5ORUQgUkVTUE9OU0VTICovXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG4vKiBTVEFSVCBJU1NVRVMgSU5MSU5FIEVESVQgKi9cclxuXHJcbi5jb250cm9sbGVyLWlzc3VlcyB7XHJcbiAgI21haW4ge1xyXG4gICAgLmxpc3QtaW5uZXItYm94IHtcclxuICAgICAgLmlubmVyLWJveCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuaWNvbi5pY29uLWVkaXQge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBtYXJnaW46IC0xM3B4IDAgMDtcclxuICAgICAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIC5pY29uLmljb24tZWRpdCB7XHJcbiAgICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0YWJsZS5saXN0IHtcclxuICAgIC5wcmlvcml0eS0xLFxyXG4gICAgLnByaW9yaXR5LTIsXHJcbiAgICAucHJpb3JpdHktMyxcclxuICAgIC5wcmlvcml0eS00LFxyXG4gICAgLnByaW9yaXR5LTUge1xyXG4gICAgICAucHJpb3JpdHkge1xyXG4gICAgICAgIG9wdGlvbiB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcC10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG5cclxufVxyXG5cclxuLyogRU5EIElTU1VFUyBJTkxJTkUgRURJVCAqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcbiJdfQ== */

/*START VARIABLES FOR THEME*/
/* 20.3.2022 */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ICON FONTS */
/* END ICON FONTS */
/* 20.03.2022 */
/* START FONT VARIABLES */
/* END FONT VARIABLES */
/* VARS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ALL VARIABLES FOR WORK LESS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START BORDER RADIUS VARIABLES */
/* END BORDER RADIUS VARIABLES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START FONT SISE + LINE HIGHT */
/* START 1024*/
/*  START 768*/
/*  START 500*/
/* END FONT SISE + LINE HIGHT */
/* --------------------- https://redmine-evolution.com/ -- */
/* START JCF */
/* END JCF */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ANIMATE TIME*/
/* hover */
/* Main big bloks animated */
/* --------------------- https://redmine-evolution.com/ -- */
/* START OPACITY */
/* END OPACITY*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START ICONS VAR */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ICON FONTS */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/*  ----  */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* OK */
/* END ICON FONTS */
/*END VARIABLES FOR THEME*/
/*START COLOUR-VARIABLES GLOBAL FOR THEME*/
/* --------------------- https://redmine-evolution.com/ -- */
/* START COLOR VARIABLES */
/* END COLOR VARIABLES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START NOTICE */
/*D9E8FF*/
/* END NOTICE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MOBILE MENU */
/* END MOBILE MENU */
/* --------------------- https://redmine-evolution.com/ -- */
/* START BOX-SHADOWS */
/* END BOX-SHADOWS */
/* START tables */
/* END tables*/
/* START pagination */
/* END pagination*/
/* START TOP MENU */
/* HOVER */
/* END TOP MENU */
/* START MAIN MENU */
/* MOBILE */
/* END MAIN MENU */
/* new  */
/* START TOP MENU */
/* HOVER */
/* END TOP MENU */
/* START MAIN MENU */
/* MOBILE */
/* END MAIN MENU */
/* CONTENT COLOR SETTINGS  */
/* --------------------- https://redmine-evolution.com/ -- */
:root {
  /* START GENERAL COLOR */
  --color-fff: #fff;
  --color-dark: #10131e;
  --color-blue: #654EFF;
  --color-darck-blue: #8A78D0;
  --color-blue-light: #cce5ff;
  --color-red: #FF5757;
  --color-red-errof: #BE4646;
  --color-red-superlight: #FFD1D1;
  --color-green: #66C8AB;
  --color-green-dark: #5caa93;
  --color-green-super-light: #CFFFF1;
  --color-purple: #E284FE;
  --color-purple-dark: #C072D8;
  --color-yellow: #FFCF69;
  --color-yellow-light: #FFF1D3;
  --color-error: #FF5757;
  --color-orange: #FE9A51;
  --color-grey: #cccccc;
  --super_grey_light: #ebebec;
  --suder-dark-grey: #BBBFCD;
  --main-bg-box: #ECEDF0;
  --menu-grey: #6a6e82;
  --icon-grey: #676879;
  --icon-grey-dark: #323338;
  --menu-bg: #2E314F;
  --color-main-color: #9D89EE;
  --color-main-color-activety: #8E7DD6;
  --bg-box-activety: #cce5ff;
  --color-main-color-text: #ffffff;
  --grey: #cccccc;
  --color-dark-grey: #A5A5A5;
  --icon-bg: #cce5ff;
  /*--main-background: url("../images/login-bg01.jpg") repeat;*/
  --main-background: var(--color-fff);
  --border-color: var(--border-color-content);
  --text-color-main: var(--color-dark);
  --bg-in-content: var(--color-blue-light);
  --bg-body: var(--bg-fff);
  --bg-mobile: #fff;
  --bg-box: #ECEDF0;
  --bg-other: #ECEDF0;
  --bg-other-in: #ffffff;
  --bg-fff: #ffffff;
  --light-bg: #ece1fc;
  --select-bg-redmineup: #5f5bfa;
  --all-hover-bg: var(--color-blue-light);
  --all-hover-bg-color: var(--color-dark);
  --scroll-bg: #ECEDF0;
  --scroll-handle: #BBBFCD;
  --jcf-drop-active: var(--text-color-main);
  /* END GENERAL COLOR */
  /* START TABS */
  --tab-color-text: var(--border-color-content);
  --tab-color-text-seleced: var(--color-main-color);
  /* END TABS */
  /* START NOTICE */
  --notice-error-bg: var(--color-red-superlight);
  --notice-error-main: var(--color-red);
  --notice-error-main-text: var(--color-red);
  --notice-successfu-main: var(--color-green);
  --notice-successfu-main-text: var(--color-fff);
  --notice-successfu-bg: var(--color-green-super-light);
  --notice-successfu-bg-text: var(--color-green-dark);
  --notice-worning-main: var(--color-yellow);
  --notice-worning-bg: var(--color-yellow-light);
  --notice-worning-color: var(--color-dark);
  --red_border_error: var(--color-red);
  --red_error_text: var(--color-fff);
  /* END NOTICE */
  /* START BORDER RADIUS */
  --border-radius: 8px;
  --border-radius-full: 100%;
  --border-radius-small: 3px;
  --border-radius-midle: 5px;
  --icon-border-radius: 8px;
  /* START BORDER RADIUS */
  /* START ANIMATE TIME*/
  --time-hover: 0.2s;
  --time-main: 0.5s;
  --time-hover-null: 0s;
  /* END ANIMATE TIME*/
  /* START ICONS */
  --icon-width: 30px;
  --icon-font-size: 30px;
  --icon-smaller-width: 26px;
  --icon-smaller-font-size: 26px;
  --icon-width-small: 20px;
  --icon-font-size-small: 20px;
  --icon-font: "WFS-RM-font";
  --icon-color: var(--icon-grey);
  --icon-color-hover: #444444;
  --icon_color_active: #444444;
  --icon_bg: #bfd6fd;
  --icon_bg_hover: #bfd6fd;
  --icon_bg_active: #bfd6fd;
  --icon-color-disabled: var(--icon-grey);
  --icon_bg-disabled: var(--color-grey);
  --icon-color-bg: var(--icon-grey);
  --icon-color-hover-bg: var(--icon-grey-dark);
  --icon_color_active-bg: var(--icon-grey-dark);
  --icon_bg-bg: var(--color-blue-light);
  --icon_bg_hover-bg: var(--color-blue-light);
  --icon_bg_active-bg: var(--color-blue-light);
  --icon-color-list: var(--icon-grey);
  --icon-color-hover-list: var(--bg-fff);
  --icon_color_active-list: var(--bg-fff);
  --icon_bg-list: var(--color-main-color);
  --icon_bg_hover-list: var(--color-main-color);
  --icon_bg_active-list: var(--color-main-color);
  --icon-color-: var(--icon-grey);
  --icon-content-color: var(--color-orange);
  --icon-content-color-hover: #fff;
  --icon-content_bg: var(--color-orange);
  --icon-content_bg_hover: var(--color-orange);
  --icon-content_bg_active: var(--color-orange);
  --icon-star: var(--color-orange);
  --button-main-color: var(--color-fff);
  --button-main-bg: var(--color-purple);
  --button-main-color-hover: var(--color-fff);
  --button-main-bg-hover: var(--color-purple-dark);
  --button-main-color-disabled: var(--color-dark);
  --button-main-bg-disabled: var(--color-grey);
  --button-color: #654EFF;
  --button-bg: #ebe7fc;
  --button-color-hover: #654EFF;
  --button-bg-hover: #d8d0f8;
  --button-color-disabled: var(--color-dark);
  --button-bg-disabled: var(--color-grey);
  --button-color-disabled: #fff;
  --button-bg-disabled: var(--color-dark-grey);
  --button-grey-color: var(--color-dark);
  --button-grey-bg: var(--super_grey_light);
  --button-grey-color-hover: var(--color-dark);
  --button-grey-bg-hover: var(--color-grey);
  --button-font-weight: 600;
  --button-border-radius: 8px;
  --bg-disabled: var(--color-dark-grey);
  --color-disabled: var(--color-fff);
  --button-main-color-bg: #fff;
  --button-main-bg-bg: var(--color-purple-dark);
  --button-main-color-hover-bg: #fff;
  --button-main-bg-hover-bg: var(--color-purple-dark);
  --button-main-color-disabled-bg: var(--color-dark);
  --button-main-bg-disabled-bg: var(--color-grey);
  --button-color-bg: var(--color-dark);
  --button-bg-bg: var(--color-blue-light);
  --button-color-hover-bg: #fff;
  --button-bg-hover-bg: var(--color-blue);
  /* END ICONS */
  --table-bg-hover: #afd6fd;
  --popup-overlay: rgba(41, 47, 76, 0.7);
  --popup-overlay-fancy: var(--menu-bg);
  --main-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  --small-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.1);
  --box-shadow-null: 0 10px 10px rgba(0, 0, 0, 0);
  --table-shadow: rgba(0, 0, 0, 0.1) 0px 3px 5px;
  --big-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
  --big-shadow-hover: 0 10px 10px rgba(101, 154, 244, 0.5);
  --popup-close-color: var(--color-red);
  --popup-close-bg: var(--color-red);
  --popup-close-color-hover: var(--color-fff);
  --popup-close-bg-hover: var(--color-red);
  --popup-close-color-2: var(--color-red);
  --popup-close-bg-2: var(--color-fff);
  --popup-close-color-hover-2: var(--color-fff);
  --popup-close-bg-hover-2: var(--color-red);
  /* START PRIORITY COLOR */
  --color-warning: var(--color-orange);
  --priority-1: var(--color-blue);
  --priority-2: var(--color-green);
  --priority-3: var(--color-yellow);
  --priority-4: var(--color-purple);
  --priority-5: var(--color-error);
  --priority-color: var(--color-fff);
  /* END PRIORITY COLOR */
  /* START TRACKER COLOR */
  --tracker-1: var(--color-red);
  --tracker-2: var(--color-green);
  --tracker-3: var(--color-blue);
  /* END TRACKER COLOR */
  /* START DROPDOWN */
  --drop-text-color: var(--color-dark);
  --drop-text-color-hover: var(--color-dark);
  --drop-icon-color: var(--color-dark);
  --drop-icon-color-hover: var(--color-dark);
  --drop-border-color: var(--color-grey);
  --drop-bg: var(--color-blue-light);
  --drop-bg-hover: var(--color-blue-light);
  --drop-shadow: var(--box-shadow-null);
  /* START DROPDOWN */
  /* START ISSUES */
  --icon-save-color: var(--color-green);
  --icon-save-color-hover: var(--color-fff);
  --icon-save-bg: var(--color-green-super-light);
  --icon-save-bg-hover: var(--color-green);
  --icon-close-color: var(--color-error);
  --icon-close-color-hover: var(--color-fff);
  --icon-close-bg: var(--color-red-superlight);
  --icon-close-bg-hover: var(--color-error);
  --icon-dell-bg: var(--color-red);
  --icon-dell-bg-hover: var(--color-error);
  --icon-dell-color: var(--color-fff);
  --icon-dell-color-hover: var(--color-fff);
  --color-link: var(--color-main-color);
  --border-color-content: #BBBFCD;
  /* END ISSUES */
  /* START PAGINATION */
  --pagination-color: var(--icon-color);
  --pagination-color-hover: var(--icon-color-hover);
  --pagination-color-avtive: var(--icon_color_active);
  --pagination-bg: var(--color-fff);
  --pagination-bg-hover: var(--icon_bg_hover);
  --pagination-bg-active: var(--icon_bg_active);
  --pagination-font-weight: 700;
  /* END PAGINATION */
  /* START FLYOUT MENU */
  --flyout_menu_bg: var(--color-main-color);
  --flyout_menu_color: var(--color-fff);
  --flyout_menu_border: var(--color-fff);
  --flyout_menu_button_bg: var(--color-fff);
  --flyout_menu_button_color: var(--color-main-color);
  --flyout_menu_bg_selected: var(--color-red);
  --flyout_menu_color_selected: var(--color-fff);
  --flyout_menu_title_bg: #0067c3;
  --flyout_menu_title_color: var(--color-fff);
  --flyout_menu_admin_menu_bg: #6b8eff;
  --flyout_menu_admin_menu_color: var(--color-fff);
  --flyout_menu_general-menu_bg: #817eff;
  --flyout_menu_general-menu_color: var(--color-fff);
  --flyout_menu_profile-menu_bg: #5DCA86;
  --flyout_menu_profile-menu_color: var(--color-fff);
  --flyout_menu_watchers-menu_bg: var(--color-green);
  --flyout_menu_watchers-menu_color: var(--color-fff);
  --flyout-text-color: var(--color-dark);
  /* END FLYOUT MENU */
  /* START TOOLTIP */
  --tooltip-bg: var(--color-main-color);
  --tooltip-bg-hover: var(--color-main-color);
  --tooltip-color: var(--color-fff);
  --tooltip-color-hover: var(--color-fff);
  /* END TOOLTIP */
  /* START SCROLLBAR */
  --scrollbar: var(--color-grey);
  --scrollbar_handle: var(--color-main-color);
  /* END SCROLLBAR */
}
/* START FOOTER */
#footer {
  --bg: var(--color-fff);
  --text-color-main: var(--color-grey);
  --border-color: var(--color-grey);
}
/* END FOOTER */
/* START SIDEBAR */
#sidebar {
  --bg: var(--main-bg-box);
  --main_color: var(--color-main-color);
  --text-color-main: var(--color-dark);
  --border-color: #BBBFCD;
  --icon-color: var(--icon-grey);
  --icon-color-hover: var(--icon-grey-dark);
  --icon_color_active: var(--icon-grey-dark);
  --icon_bg: var(--color-blue-light);
  --icon_bg_hover: var(--color-blue-light);
  --icon_bg_active: var(--color-blue-light);
  --button-main-color: var(--bg-fff);
  --button-main-bg: var(--color-purple);
  --button-main-color-hover: var(--bg-fff);
  --button-main-bg-hover: var(--color-purple-dark);
  --button-color: var(--bg-fff);
  --button-bg: var(--color-purple);
  --button-color-hover: var(--bg-fff);
  --button-bg-hover: var(--color-purple-dark);
  --scroll-bg: #ECEDF0;
  --scroll-handle: #BBBFCD;
}
#main {
  --sidebar-main_color: var(--color-main-color);
  --sidebar-main_color_text: var(--bg-fff);
  --sidebar-main_color_hover: #292f4c;
  --sidebar-main_color_text_hover: var(--bg-fff);
  --sidebar-open-button-bg: #fff;
  --sidebar-open-button-border: var(--border-color);
  --sidebar-open-button-color: var(--color-dark);
  --sidebar-open-button-bg-hover: #9D89EE;
  --sidebar-open-button-border-hover: #9D89EE;
  --sidebar-open-button-color-hover: #fff;
}
/* END SIDEBAR */
#admin-menu,
#main-menu,
.mod-obj {
  --bg: #20233D;
  --border-color: #20233D;
  --border-color-logo: #484C78;
  --link-color: #C7B8FF;
  --link-color-hover: #E182FF;
  --link-color-active: #C7B8FF;
  --scrollbar: #20233D;
  --scrollbar_handle: #C7B8FF;
  --icon-color: #C7B8FF;
  --icon-color-hover: #E182FF;
  --icon_color_active: #C7B8FF;
  --icon_bg: var(--menu-bg);
  --icon_bg_hover: var(--color-dark);
  --icon_bg_active: var(--menu-grey);
  --main-menu-font-weight: 700;
  --menu-children-font-weight: 500;
  --flyout-menu-font-weight: 600;
  --submit-font-weight: 600;
}
#admin-index {
  --admin-color-text: var(--color-dark);
  --admin-color-after: var(--menu-bg);
  --admin-color-after-hover: var(--menu-bg);
  --admin-color-text-hover: var(--color-dark);
}
#top-menu {
  --bg: var(--main-bg-box);
  --icon-color: var(--icon-grey);
  --icon-color-hover: var(--icon-grey-dark);
  --icon_color_active: var(--icon-grey-dark);
  --border-color: var(--color-grey);
  --icon_bg: var(--color-blue-light);
  --icon_bg_hover: var(--color-blue-light);
  --icon_bg_active: var(--color-blue-light);
  --top-notification: var(--tracker-1);
  --top-notification-color: var(--color-fff);
  --link-color: var(--color-dark);
  --link-color-hover: var(--color-blue);
  --link-bg: var(--color-fff);
  --link-bg-hover: var(--color-blue-light);
  --text-color: var(--color-dark);
  --start-time-bg-time: var(--menu-bg);
  --start-time-text-color: var(--color-fff);
}
.revo-modal-badge {
  --bg: var(--bg-box);
  --bg-title: var(--color-fff);
  --text-color: var(--color-dark);
  --link-color: var(--color-dark);
  --link-color-hover: var(--color-dark);
  --link-bg: var(--color-fff);
  --link-bg-hover: var(--all-hover-bg);
  --border-color: var(--color-dark);
}
/*END COLOUR-VARIABLES GLOBAL FOR THEME*/
/* if you do not have plugins from REDMINEUP - You can delete or comment out the lines below*/
/* START REDMINEUP CSS */
/* --------------------- https://redmine-evolution.com/ -- */
table .expander {
  vertical-align: middle;
  color: var(--icon-color-bg);
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  min-width: var(--icon-smaller-width);
  margin: -3px 5px 0 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  -webkit-transform: rotate(0);
  -moz-transform: rotate(0);
  -ms-transform: rotate(0);
  -o-transform: rotate(0);
  transform: rotate(0);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
  background: none !important;
}
table .expander:after {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 26px;
  line-height: 26px;
  color: var(--icon-color-bg);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
table .expander:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
table .expander:hover {
  color: var(--icon-color-hover-bg);
}
table .expander:hover:after {
  color: var(--icon-color-hover-bg);
}
table .expander:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
table .open .expander {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#main #content table.contacts.index,
#main #content .contact.details,
#main #content .person.details {
  background: none;
  border: none;
  margin: 0;
  color: var(--color-main-color);
}
#main #content table.contacts.index .tag_list,
#main #content .contact.details .tag_list,
#main #content .person.details .tag_list {
  color: var(--color-main-color-text);
}
#main #content table.contacts.index td,
#main #content .contact.details td,
#main #content .person.details td {
  padding: 15px 10px;
  vertical-align: middle;
  background: var(--bg-fff);
  border-bottom: 1px solid var(--border-color-content);
  border-right: none;
  -webkit-transition: background var(--time-hover) ease-in-out;
  -moz-transition: background var(--time-hover) ease-in-out;
  -ms-transition: background var(--time-hover) ease-in-out;
  -o-transition: background var(--time-hover) ease-in-out;
  transition: background var(--time-hover) ease-in-out;
}
#main #content table.contacts.index td.info,
#main #content .contact.details td.info,
#main #content .person.details td.info {
  text-align: right;
}
#main #content table.contacts.index td.subject_info,
#main #content .contact.details td.subject_info,
#main #content .person.details td.subject_info {
  border: none;
}
#main #content table.contacts.index td .name,
#main #content .contact.details td .name,
#main #content .person.details td .name {
  font-size: 0.85714286rem;
}
#main #content table.contacts.index tr:last-child td,
#main #content .contact.details tr:last-child td,
#main #content .person.details tr:last-child td {
  border-bottom: none;
}
#main #content table.contacts.index tr.total th,
#main #content .contact.details tr.total th,
#main #content .person.details tr.total th {
  background: var(--bg-box);
  border-top: 0;
}
#main #content table.contacts.index h1,
#main #content .contact.details h1,
#main #content .person.details h1 {
  font-size: 1.1428rem;
  line-height: 1.2;
  margin: 0 0 3px ;
}
#main #content table.contacts.index h1 a,
#main #content .contact.details h1 a,
#main #content .person.details h1 a {
  color: var(--text-color-main);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main #content table.contacts.index h1 a:hover,
#main #content .contact.details h1 a:hover,
#main #content .person.details h1 a:hover {
  color: var(--color-main-color);
}
#main #content table.contacts.index .context-menu-selection a:not([href*="tags"]),
#main #content .contact.details .context-menu-selection a:not([href*="tags"]),
#main #content .person.details .context-menu-selection a:not([href*="tags"]) {
  color: var(--text-color-main) !important;
}
#main #content table.contacts.index .context-menu-selection a:hover,
#main #content .contact.details .context-menu-selection a:hover,
#main #content .person.details .context-menu-selection a:hover {
  color: var(--color-main-color) !important;
}
#main #content table.contacts.index table.contacts.index tr.context-menu-selection td,
#main #content .contact.details table.contacts.index tr.context-menu-selection td,
#main #content .person.details table.contacts.index tr.context-menu-selection td {
  color: var(--text-color-main) !important;
}
#main #content table.contacts.index h1 + p,
#main #content .contact.details h1 + p,
#main #content .person.details h1 + p {
  margin: 0 0 5px;
}
#main #content table.contacts.index h2,
#main #content .contact.details h2,
#main #content .person.details h2 {
  font-size: 0.85714286rem;
  font-weight: normal;
}
#main #content table.contacts.index h2 a,
#main #content .contact.details h2 a,
#main #content .person.details h2 a {
  text-decoration: underline;
}
#main #content table.contacts.index .tags,
#main #content .contact.details .tags,
#main #content .person.details .tags {
  display: inline-flex;
  justify-content: flex-end;
  vertical-align: middle;
}
#main #content table.contacts.index .title_and_company,
#main #content .contact.details .title_and_company,
#main #content .person.details .title_and_company {
  display: inline-flex;
  vertical-align: middle;
}
#main #content table.contacts.index tr:hover td,
#main #content .contact.details tr:hover td,
#main #content .person.details tr:hover td {
  background-color: var(--bg-box);
}
#main #content table.contacts.index tr:hover td h1 a,
#main #content .contact.details tr:hover td h1 a,
#main #content .person.details tr:hover td h1 a {
  color: var(--text-color-main);
}
#main #content table.contacts.index tr:hover td h2 a,
#main #content .contact.details tr:hover td h2 a,
#main #content .person.details tr:hover td h2 a {
  color: var(--color-main-color);
}
#main #content table.contacts.index tr:hover td.name,
#main #content .contact.details tr:hover td.name,
#main #content .person.details tr:hover td.name {
  color: var(--text-color-main);
}
#main #content table.contacts.index tr:hover td.name p a,
#main #content .contact.details tr:hover td.name p a,
#main #content .person.details tr:hover td.name p a {
  color: var(--color-main-color);
}
#main #content table.contacts.index tr.context-menu-selection td,
#main #content .contact.details tr.context-menu-selection td,
#main #content .person.details tr.context-menu-selection td {
  background-color: var(--bg-box);
}
.subject_header {
  border-collapse: collapse;
}
#main #content .contact.details,
#main #content .person.details {
  margin: 0;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  padding: 0;
}
#main #content .contact.details .subject_header td,
#main #content .person.details .subject_header td {
  background: none;
}
#main #content .contact.details #note_attributes,
#main #content .person.details #note_attributes {
  margin: 0 0 15px;
}
#main span.tag_list,
#main div.tags,
#main .questions-tags {
  margin: 0;
  background-position: 0 50%;
  font-size: 0;
  line-height: 0 !important;
  min-height: auto;
  overflow: hidden;
}
#main span.tag_list .tag-label,
#main div.tags .tag-label,
#main .questions-tags .tag-label,
#main span.tag_list li,
#main div.tags li,
#main .questions-tags li {
  display: inline-block;
  vertical-align: top;
  margin: 2px 5px 2px 0 !important;
  padding: 0;
  border: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  background: none;
  float: left;
}
#main span.tag_list .tag-label a,
#main div.tags .tag-label a,
#main .questions-tags .tag-label a,
#main span.tag_list li a,
#main div.tags li a,
#main .questions-tags li a {
  display: block;
  padding: 4px 4px;
  font-size: 0.7857rem;
  background: var(--color-main-color);
  border: 1px solid var(--color-main-color);
  line-height: 0.7857rem;
  color: var(--color-main-color-text);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
#main span.tag_list .tag-label a:hover,
#main div.tags .tag-label a:hover,
#main .questions-tags .tag-label a:hover,
#main span.tag_list li a:hover,
#main div.tags li a:hover,
#main .questions-tags li a:hover {
  color: var(--color-main-color);
  text-decoration: none;
  background: var(--color-main-color-text);
}
#main span.tag_list .tag-label-color,
#main div.tags .tag-label-color,
#main .questions-tags .tag-label-color {
  display: inline-block;
  vertical-align: top;
  margin: 2px 5px 2px 0 !important;
  padding: 0;
  border: 0;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  line-height: 1.28571429rem !important;
  background: none;
}
#main span.tag_list .tag-label-color a,
#main div.tags .tag-label-color a,
#main .questions-tags .tag-label-color a {
  display: block;
  margin: 0 !important;
  padding: 3px 4px;
  font-size: 0.7857rem;
  line-height: 0.7857rem;
  background: var(--color-main-color);
  color: var(--color-main-color-text);
  border: 1px solid var(--color-main-color);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
#main span.tag_list .tag-label-color a:hover,
#main div.tags .tag-label-color a:hover,
#main .questions-tags .tag-label-color a:hover {
  background: var(--color-main-color-text);
  color: var(--color-main-color);
}
#main span.tag_list .tag-count,
#main div.tags .tag-count,
#main .questions-tags .tag-count {
  font-size: 0.7857rem;
  line-height: 0.7857rem;
  display: inline-block;
  margin: 0 2px;
}
#main .questions-tags span.count {
  font-size: 0.7857rem;
  line-height: 0.7857rem;
  margin: 0 0 0 5px;
}
#main .questions-tags span.count:after {
  content: ')';
}
#main .questions-tags span.count:before {
  content: '(';
}
#main > #content #query_form .contacts_header {
  padding-right: 50px;
}
#main > #content #query_form .contacts_header .tags:after {
  display: none;
}
#main > #content .tags {
  display: inline-flex;
  flex-wrap: wrap;
}
#main > #content .tag_list {
  background-image: none !important;
  position: relative;
  padding-left: 30px;
  font-size: 0;
}
#main > #content .tag_list:after {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  clear: both;
  height: var(--icon-width-small);
  width: var(--icon-width-small);
  margin: -13px 0 0;
  overflow: hidden;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  color: var(--icon-color-bg);
}
#main > #content .tag_list:empty {
  display: none;
}
#wrapper #tab-placeholder-notes {
  margin: 0 0 30px;
}
#wrapper #notes > div {
  padding: 0 0 5px;
  border-bottom: 1px solid var(--border-color-content);
  margin: 0 0 5px;
}
#wrapper #notes > div:last-of-type {
  padding: 0;
  margin: 0;
  border-bottom: 0;
}
#wrapper table.note_data td.name h4 {
  margin: 0 0 10px !important;
  font-size: 1rem;
}
#comments .contextual a {
  border: none;
  margin: 0 0 0;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  opacity: 1;
}
#comments .contextual a img {
  display: none;
}
#comments .contextual a:after {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
}
#comments .contextual a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#comments .contextual a:hover {
  color: var(--icon-color-hover);
}
#comments .contextual a:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#comments .contextual a.selected {
  color: var(--icon_color_active);
}
#comments .contextual a.selected:before {
  background: var(--icon_bg_active);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#people_settings_workday_length {
  margin: 0 10px 0 0 !important;
}
#content table.contacts.index tr.context-menu-selection h2 {
  color: var(--text-color-main) !important;
}
#content table.contacts.index tr.context-menu-selection td {
  color: var(--text-color-main) !important;
}
#content table.contacts.index tr.context-menu-selection .overdue-days {
  color: var(--text-color-main);
}
#content .subject_header .icon {
  padding: 0 0 0 25px;
  min-height: var(--icon-width-small);
  line-height: var(--icon-width-small);
}
#content .subject_header .icon:after {
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#content .subject_header .icon.icon-phone:after {
  color: var(--icon-color-bg);
}
#content .subject_header .tag_list:after {
  color: var(--icon-color-bg) !important;
}
#content .subject_info ul {
  margin: 0;
}
#content .subject_info ul li {
  margin: 3px 0;
  min-height: auto;
}
#content #edit_tags_form form input[type="submit"] {
  margin: 0 !important;
}
#content #edit_tags_form form input[type="submit"] + a {
  background: var(--button-bg-bg);
  color: var(--button-color-bg);
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
#content #edit_tags_form form input[type="submit"] + a:hover {
  background: var(--button-bg-hover-bg);
  color: var(--button-color-hover-bg);
}
#main > #content #company_contacts h4 {
  margin: 0 0 10px;
}
#main > #content div.contact {
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  border: 0;
  background: var(--bg-box);
}
#main > #content div.contact .name h2 {
  margin-bottom: 10px;
  padding-right: 10px;
}
#main > #content div.contact .icon:after {
  color: var(--icon-color-bg);
}
.tab-content #note_attributes {
  margin: 0 0 20px;
}
.tab-content #deals {
  overflow: hidden;
}
.tab-content #company_contacts {
  overflow: hidden;
}
.tab-content a[href*='contacts/new'],
.tab-content a[href*='deals/new'],
.tab-content a[href*='invoices/new'],
.tab-content a[href*='orders/new'] {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color);
  vertical-align: middle;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.tab-content a[href*='contacts/new']:after,
.tab-content a[href*='deals/new']:after,
.tab-content a[href*='invoices/new']:after,
.tab-content a[href*='orders/new']:after {
  content: "\E14D";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.tab-content a[href*='contacts/new']:before,
.tab-content a[href*='deals/new']:before,
.tab-content a[href*='invoices/new']:before,
.tab-content a[href*='orders/new']:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.tab-content a[href*='contacts/new']:hover,
.tab-content a[href*='deals/new']:hover,
.tab-content a[href*='invoices/new']:hover,
.tab-content a[href*='orders/new']:hover {
  color: var(--icon-color-hover);
}
.tab-content a[href*='contacts/new']:hover:before,
.tab-content a[href*='deals/new']:hover:before,
.tab-content a[href*='invoices/new']:hover:before,
.tab-content a[href*='orders/new']:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.tab-content a[href*='contacts/new'].selected,
.tab-content a[href*='deals/new'].selected,
.tab-content a[href*='invoices/new'].selected,
.tab-content a[href*='orders/new'].selected {
  color: var(--icon_color_active);
}
.tab-content a[href*='contacts/new'].selected:before,
.tab-content a[href*='deals/new'].selected:before,
.tab-content a[href*='invoices/new'].selected:before,
.tab-content a[href*='orders/new'].selected:before {
  background: var(--icon_bg_active);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.tab-content a[href*='contacts/new'].disabled,
.tab-content a[href*='deals/new'].disabled,
.tab-content a[href*='invoices/new'].disabled,
.tab-content a[href*='orders/new'].disabled {
  opacity: 0.3;
  color: var(--button-main-color-disabled);
}
.tab-content a[href*='contacts/new'].disabled:hover,
.tab-content a[href*='deals/new'].disabled:hover,
.tab-content a[href*='invoices/new'].disabled:hover,
.tab-content a[href*='orders/new'].disabled:hover {
  color: var(--button-main-color-disabled);
}
.tab-content a[href*='contacts/new'].disabled:hover:before,
.tab-content a[href*='deals/new'].disabled:hover:before,
.tab-content a[href*='invoices/new'].disabled:hover:before,
.tab-content a[href*='orders/new'].disabled:hover:before {
  background: var(--button-main-bg-disabled);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
}
#contact_data #watchers .gravatar {
  margin: 0 10px 0 0;
}
#content table.note_data td.avatar {
  padding-top: 0;
}
.controller-contacts.action-contacts_notes #main > #content .filters {
  margin: 0 -30px 70px;
  width: calc(100% + 60px);
}
.controller-contacts.action-contacts_notes #main > #content .filters h2 {
  background-position: 0 50%;
  background-repeat: no-repeat;
  padding: 15px 45px;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
  background-size: 30px auto;
  margin: 0 !important;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START SIDEBAR */
#main div#sidebar #issue_contacts a.delete {
  opacity: 1;
}
#main div#sidebar div.contact.card {
  margin: 0 0 15px;
  border: 0;
  background: var(--bg-fff);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#main div#sidebar div.contact.card .icon:not(td),
#main div#sidebar div.contact.card a[href*="questions_sections/new"] {
  padding: 0 0 0 26px;
  line-height: var(--icon-width-small);
  min-height: var(--icon-width-small);
}
#main div#sidebar div.contact.card .icon:not(td):after,
#main div#sidebar div.contact.card a[href*="questions_sections/new"]:after {
  font-size: var(--icon-font-size-small);
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  top: 50%;
  margin: -10px 0 0;
  color: var(--icon-color);
}
#main div#sidebar div.contact.card .icon:not(td):hover:after,
#main div#sidebar div.contact.card a[href*="questions_sections/new"]:hover:after {
  color: var(--icon-color-hover);
}
#main div#sidebar div.contact.card .tag_list {
  position: relative;
}
#main div#sidebar div.contact.card .tag_list:after {
  display: block !important;
  position: absolute;
  top: 50%;
  left: 0;
  clear: both;
  height: var(--icon-width-small);
  width: var(--icon-width-small);
  margin: -10px 0 0;
  overflow: hidden;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 20px;
  line-height: 1;
  color: var(--icon-color);
  content: "\E18F";
}
/* END SIDEBAR */
#content form #note_attributes p.extended-attributes {
  padding: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  max-width: 700px;
}
#content form #note_attributes p.extended-attributes label {
  margin: 0 0 0 10px !important;
}
#content form #note_attributes fieldset.extended-attributes {
  margin: 0 !important;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#content form #note_attributes #note_attachments {
  padding: 0;
  margin: 0;
}
#content div.invoice-card {
  height: auto;
}
.controller-contacts_duplicates.action-index #main > #content:after {
  top: 0;
  height: 100%;
}
.controller-contacts_duplicates.action-index .contact_data_header {
  margin: 20px 0 0;
}
.controller-contacts_duplicates.action-index .contact_data_header .note_title {
  margin: 0 0 10px !important;
}
.controller-contacts_duplicates.action-index #principal_search {
  margin: 0 0 20px;
}
.controller-contacts_duplicates.action-index .flash {
  margin: 0 0 20px !important;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START MODAL */
div.modal #contacts_for_issue {
  height: auto;
  padding-bottom: 10px;
  max-height: 200px;
}
div.modal #contacts_for_issue label {
  margin: 0 0 5px;
}
div.modal #add-contact-form #contact_search {
  margin-top: 5px !important;
}
/* END MODAL */
/* --------------------- https://redmine-evolution.com/ -- */
body #content .contacts-tags-edit ul.tagit,
body .modal .contacts-tags-edit ul.tagit {
  margin: 0 !important;
}
#content .contacts-tags-edit ul.tagit,
.modal .contacts-tags-edit ul.tagit {
  margin: 0 !important;
  padding: 5px 10px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
#content .contacts-tags-edit ul.tagit li.tagit-choice,
.modal .contacts-tags-edit ul.tagit li.tagit-choice {
  color: var(--text-color-main);
  vertical-align: top;
  border-radius: 3px;
  padding: 2px 4px 2px 21px;
  font-size: 0.7857rem;
  line-height: 1.1;
  margin: 2px 10px 2px 0;
  background: var(--bg-box);
  min-height: 20px;
  display: flex;
  align-items: center;
  -webkit-transition: all var(--time-hover) ease;
  -moz-transition: all var(--time-hover) ease;
  -ms-transition: all var(--time-hover) ease;
  -o-transition: all var(--time-hover) ease;
  transition: all var(--time-hover) ease;
  border: 1px solid var(--color-main-color);
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  max-width: calc(100% - 4px);
}
#content .contacts-tags-edit ul.tagit li.tagit-choice .tagit-close,
.modal .contacts-tags-edit ul.tagit li.tagit-choice .tagit-close {
  background-image: none !important;
  position: absolute;
  top: 50%;
  right: auto;
  left: 5px;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
  color: var(--color-main-color-text);
  width: 12px;
  height: 12px;
  padding: 0;
  margin: -6px 0 0;
  overflow: hidden;
  text-align: center;
  background: var(--color-main-color);
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 1px;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  display: inline-block;
}
#content .contacts-tags-edit ul.tagit li.tagit-choice .tagit-close:hover,
.modal .contacts-tags-edit ul.tagit li.tagit-choice .tagit-close:hover {
  color: var(--color-main-color);
  background: var(--color-main-color-text);
}
#content .contacts-tags-edit ul.tagit li.tagit-choice .tagit-close:hover .text-icon,
.modal .contacts-tags-edit ul.tagit li.tagit-choice .tagit-close:hover .text-icon {
  color: var(--color-main-color);
}
#content .contacts-tags-edit ul.tagit li.tagit-choice .tagit-close .text-icon,
.modal .contacts-tags-edit ul.tagit li.tagit-choice .tagit-close .text-icon {
  color: var(--color-main-color-text);
}
#content .contacts-tags-edit ul.tagit .tagit-new,
.modal .contacts-tags-edit ul.tagit .tagit-new {
  margin: 0;
}
.controller-contacts.action-index #main > #content #query_form > h2 .live_search {
  right: 50px;
}
/* START EMAIL TEMPLATE */
#customer_address_add_link {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color);
  vertical-align: middle;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#customer_address_add_link:after {
  content: "\E14D";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#customer_address_add_link:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#customer_address_add_link img {
  display: none;
}
#customer_address_add_link:hover {
  color: var(--icon-color-hover);
}
#customer_address_add_link:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#customer_address_add_link.selected {
  color: var(--icon_color_active);
}
#customer_address_add_link.selected:before {
  background: var(--icon_bg_active);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#customer_address_add_link.disabled {
  opacity: 0.3;
  color: var(--button-main-color-disabled);
}
#customer_address_add_link.disabled:hover {
  color: var(--button-main-color-disabled);
}
#customer_address_add_link.disabled:hover:before {
  background: var(--button-main-bg-disabled);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
}
#main form.new_issue .email-template {
  background: var(--color-yellow-light);
  border-color: var(--border-color);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#main form.new_issue .email-template #issue_helpdesk_ticket_attributes_ticket_time {
  margin-top: 10px;
}
/* END EMAIL TEMPLATE */
/* START MRDIA */
@media screen and (max-width: 1024px) {
  table.contacts .expander:before {
    display: none;
  }
  #contact_list {
    margin-bottom: 10px;
  }
  #main #edit_tags_link {
    opacity: 1;
  }
  #main > #content #tags_data .contextual {
    position: static;
    margin: 5px 0;
    flex: 1 0 auto;
  }
  #main > #content h2 .tag_list {
    margin-top: 5px;
  }
  #wrapper #edit_tags_form .select2-container--default {
    margin: 0 0 10px 0 !important;
    min-width: 100%;
  }
  .controller-contacts_duplicates.action-index .contact_data_header {
    margin: 0 0 10px;
  }
  .controller-contacts_duplicates.action-index .contact_data_header .note_title {
    margin: 0 0 10px !important;
  }
  .controller-contacts_duplicates.action-index #principal_search {
    margin: 0 0 10px;
  }
  .controller-contacts_duplicates.action-index .flash {
    margin: 0 0 10px !important;
  }
  .tab-content a[href*='contacts/new'],
  .tab-content a[href*='deals/new'],
  .tab-content a[href*='invoices/new'],
  .tab-content a[href*='orders/new'] {
    color: var(--icon-color-bg);
  }
  .tab-content a[href*='contacts/new']:before,
  .tab-content a[href*='deals/new']:before,
  .tab-content a[href*='invoices/new']:before,
  .tab-content a[href*='orders/new']:before {
    background: var(--icon_bg-bg);
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
  .tab-content a[href*='contacts/new']:hover,
  .tab-content a[href*='deals/new']:hover,
  .tab-content a[href*='invoices/new']:hover,
  .tab-content a[href*='orders/new']:hover {
    color: var(--icon-color-hover-bg);
  }
  .tab-content a[href*='contacts/new']:hover:before,
  .tab-content a[href*='deals/new']:hover:before,
  .tab-content a[href*='invoices/new']:hover:before,
  .tab-content a[href*='orders/new']:hover:before {
    background: var(--icon_bg_hover-bg);
  }
  #comments .contextual a {
    color: var(--icon-color-bg);
    margin: 0 0 0 5px;
  }
  #comments .contextual a:before {
    background: var(--icon_bg-bg);
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
  #comments .contextual a:hover {
    color: var(--icon-color-hover-bg);
  }
  #comments .contextual a:hover:before {
    background: var(--icon_bg_hover-bg);
  }
  #main #content table.contacts.index td,
  #main #content .contact.details td {
    padding: 10px;
  }
  .controller-contacts .action-show #main > #content > h2 {
    padding: 15px 180px 15px 45px;
  }
  #wrapper #tab-placeholder-notes {
    margin: 0 0 10px;
  }
}
@media screen and (max-width: 768px) {
  #content form #note_attributes p.extended-attributes .jcf-select {
    width: 100%;
    margin: 0 0 10px;
    flex: 1 0 auto;
  }
  #content form #note_attributes p.extended-attributes input[type="text"] {
    min-width: 50px;
  }
  #content form #note_attributes fieldset.extended-attributes {
    width: 100%;
  }
}
@media screen and (max-width: 650px) {
  #content #edit_tags_form form input[type="submit"] {
    margin-bottom: 10px !important;
  }
  .controller-contacts_duplicates.action-index .contact_data_header .note_title {
    margin: 0 0 10px !important;
    padding: 0;
    font-size: 1.1428rem;
    line-height: 1.1428rem;
  }
  .controller-contacts_duplicates.action-index .flash {
    font-size: 1rem;
    line-height: 1.4;
  }
  .controller-contacts #main > #content #query_form > h2 {
    flex-wrap: wrap;
  }
  .controller-contacts #main > #content #query_form > h2 .revo-icon-info {
    margin-left: 0;
    margin-top: 5px;
  }
  .controller-contacts #main > #content #query_form > h2 .revo-icon-info {
    order: 1;
  }
  .controller-contacts #main > #content #query_form > h2 #scope_header {
    width: 100%;
    flex: 1 0 auto;
  }
  .controller-contacts #main > #content #query_form > h2 .live_search {
    position: static;
    width: 100%;
    flex: 1 0 auto;
    margin: 10px 0 0;
    order: 2;
  }
  .controller-contacts #main > #content #query_form > h2 .live_search input[type="text"] {
    margin: 0;
    min-width: 50px;
  }
  .controller-contacts.action-show #main > #content > h2 {
    padding: 15px 15px 15px 45px;
  }
  #main > #content .contact.details,
  #main > #content .person.details {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #main > #content .contact.details tr,
  #main > #content .person.details tr {
    display: flex;
    flex-wrap: wrap;
  }
  #main > #content .contact.details tr td,
  #main > #content .person.details tr td {
    width: 100%;
    flex: 1 0 auto;
    padding: 0 10px 10px;
  }
  #main > #content .contact.details tr td.avatar,
  #main > #content .person.details tr td.avatar {
    padding-top: 10px;
    text-align: left;
  }
  #main > #content .contact.details tr td.subject_info,
  #main > #content .person.details tr td.subject_info {
    width: 100%;
    flex: 1 0 auto;
  }
  #main > #content div.contact {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #main > #content div.contact h2 {
    font-size: 1.1428rem;
    line-height: 1.2;
  }
  #main > #content div.contact h2 a {
    font-size: 1.1428rem;
    line-height: 1.2;
  }
  .has-footer #main #content {
    display: flex;
  }
  #content .contacts-tags-edit {
    width: 100%;
  }
  #content #add_note_form .contextual {
    margin: 10px 0 ;
  }
  .tab-content #note_attributes {
    margin: 0 0 10px;
  }
  #contact_list {
    margin: 0 0 10px;
  }
  #main #content table.contacts.index h1,
  #main #content .contact.details h1 {
    min-width: 200px;
  }
}
/* END MRDIA */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START INVOICE */
body #invoice-templates {
  height: auto;
  max-height: 200px;
  margin: 0 0 20px;
}
#main h4 img.gravatar {
  margin: -2px 4px 0px 0;
}
#main #invoice_payments {
  position: relative;
  border-top: 1px solid var(--border-color-content);
  border-bottom: 1px solid var(--border-color-content);
  background: var(--bg-box);
  padding: 15px 30px 10px;
  margin: 0 -30px 20px;
  width: calc(100% + 60px);
}
#main #invoice_payments h4 {
  margin-bottom: 10px;
}
#main #invoice_payments .invoice-payment {
  border-bottom: 1px solid var(--border-color-content);
  margin-bottom: 10px;
}
#main #invoice_payments .invoice-payment:last-of-type {
  border: 0;
}
#main #invoice_payments .invoice-payment p {
  margin: 10px 0;
}
#main #invoice_payments .invoice-payment .contextual a {
  color: var(--icon-color-bg);
}
#main #invoice_payments .invoice-payment .contextual a:before {
  background: var(--icon_bg-bg);
}
#main #invoice_payments .invoice-payment .contextual a:hover {
  color: var(--icon-color-hover-bg);
}
#main #invoice_payments .invoice-payment .contextual a:hover:before {
  background: var(--icon_bg_hover-bg);
}
#main div.issue.order.details #invoices p {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
#main div.issue.order.details #invoices .icon-invoice {
  margin: 0 5px 0 0;
}
#main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"] {
  margin: 0 5px 0 0;
}
#main div.issue.order.details #invoices .icon-invoice + a[href*="invoices"] img {
  display: none;
}
#main #content #comments .contextual a[href*="order_comments"] img {
  display: none;
}
#main #content .recurring_attributes .splitcontent .splitcontentleft {
  padding: 0 !important;
}
#main #content .recurring_attributes .splitcontent .splitcontentright {
  padding: 0 !important;
  float: right;
}
#main a.current-from-address {
  margin: 0 0 0 10px;
}
#main a.current-from-address:after {
  content: "\E113";
}
#main a.current-from-address img {
  display: none;
}
#main #message-form .box .icon-invoice {
  font-weight: bold;
  font-size: 0.85714286rem;
  line-height: 26px;
  width: auto;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  padding: 0 0 0 35px;
  margin: 0 10px 0 0;
  display: flex;
  align-items: center;
  text-decoration: none;
}
#main #message-form .box .icon-invoice:before,
#main #message-form .box .icon-invoice:after {
  top: 50%;
  left: 0;
  margin: -13px 0 0;
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
}
#main #message-form .box .amount {
  color: var(--icon-color-bg);
  margin: 0 10px 0 0;
}
#main #message-form .box .contact {
  color: var(--icon-color-bg);
}
#main #message-form a[href*=".pdf"] {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  vertical-align: middle;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main #message-form a[href*=".pdf"]:after {
  content: "\E15E";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-width);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main #message-form a[href*=".pdf"]:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main #message-form a[href*=".pdf"]:hover {
  color: var(--icon-color-hover-bg);
}
#main #message-form a[href*=".pdf"]:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main #message-form a[href*=".pdf"].selected {
  color: var(--icon_color_active-bg);
}
#main #message-form a[href*=".pdf"].selected:before {
  background: var(--icon_bg_active-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main #message-form a[href*=".pdf"].disabled {
  opacity: 0.3;
}
#main #message-form a[href*=".pdf"].disabled:hover {
  color: var(--icon-color-disabled);
}
#main #message-form a[href*=".pdf"].disabled:hover:before {
  background: var(--icon_bg-disabled);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
}
#main #message-form a[href*=".pdf"] img {
  display: none;
}
#main #message-form .jstBlock {
  margin: 0 0 10px;
  min-width: 100%;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START ONE INVOICE */
.controller-invoices #main div.issue.details {
  padding: 0;
}
.controller-invoices #main div.issue.details #operations {
  border-top: 1px solid var(--border-color-content);
  border-bottom: 1px solid var(--border-color-content);
  position: relative;
  background: var(--bg-box);
  padding: 15px 30px 0;
  margin: 0 -30px 20px;
}
.controller-invoices #main .list.invoice-lines {
  margin: 0 0 30px;
  border: 1px solid var(--border-color);
}
.controller-invoices #main .list.invoice-lines thead th {
  border-bottom: 1px solid var(--border-color);
}
.controller-invoices #main .list.invoice-lines td {
  border: 0;
  border-left: 1px solid var(--border-color);
}
.controller-invoices #main .list.invoice-lines td:first-child {
  border-left: 0;
}
.controller-invoices #main .list.invoice-lines .line-data td {
  border-bottom: 1px solid var(--border-color);
}
.controller-invoices #main .list.invoice-lines th {
  background-color: var(--bg-box);
}
.controller-invoices #main .list.invoice-lines .total {
  padding: 5px 10px;
}
.controller-invoices #main .list.invoice-lines .total.delimiter th:empty {
  display: none;
}
.controller-invoices #comments h4 {
  font-size: 1rem;
  line-height: 1.4;
  font-weight: 600;
  border-bottom: 1px solid var(--border-color-content) !important;
}
.controller-invoices #comments h4 .gravatar {
  margin: 0 5px 8px 0;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
}
.controller-invoices table.invoice-lines.form td.product-image {
  vertical-align: middle;
  padding: 10px;
}
/* END ONE INVOICE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START INVOICE MAILS */
.invoice-info .invoice-sum,
.invoice-info .invoice-date {
  padding: 0 0 0 25px;
  display: block;
  position: relative;
  margin: 3px 0;
  line-height: 22px;
  white-space: nowrap;
  color: var(--icon-color-bg);
  text-align: left;
}
.invoice-info .invoice-sum:after,
.invoice-info .invoice-date:after {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  margin: 0;
  overflow: hidden;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 22px;
  line-height: 1;
  color: var(--icon-color-bg);
  width: var(--icon-width-small);
  height: var(--icon-width-small);
}
.invoice-info .invoice-sum {
  color: var(--text-color-main);
}
.invoice-info .invoice-sum:after {
  color: var(--text-color-main);
  content: "\E147";
}
.invoice-info .invoice-date {
  font-weight: bold;
}
.invoice-info .invoice-date:after {
  content: "\E0ED";
}
#main > #content .invoice-card {
  display: flex;
  align-items: center;
  width: 100%;
  flex-wrap: wrap;
}
#main > #content .invoice-card .name.invoice-name {
  order: 1;
  flex: 1 0 auto;
}
#main > #content .invoice-card .name.invoice-name h3 {
  margin: 0 10px 0 0;
}
#main > #content .invoice-card .invoice-info {
  order: 2;
}
.controller-invoices.action-index #content #query_form {
  display: block;
}
.controller-invoices.action-index #content #query_form:after {
  content: '';
  display: block;
  clear: both;
}
/* END INVOICE MAILS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  #main div.issue table.list.invoice-lines {
    border: 1px solid var(--border-color);
  }
}
@media screen and (max-width: 650px) {
  #main #message-form .jstBlock {
    min-width: 100%;
  }
  div.invoice-card .invoice-info {
    width: 100%;
  }
  .controller-invoices #main div.issue.details hr {
    margin: 10px 0;
  }
  #content div.box > fieldset.tabular#company_profile {
    padding: 15px 10px !important;
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 0 !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    width: calc(100% + 20px);
  }
  #content div.box > fieldset.tabular#company_profile legend {
    display: flex;
    position: relative;
    left: 0 !important;
    top: 0;
    margin: 0 !important;
    width: 100%;
    padding: 0;
    z-index: 2;
  }
  #content div.box > fieldset.tabular#company_profile legend:before {
    content: '';
    display: block;
    clear: both;
    position: absolute;
    top: 0;
    left: -10px;
    width: calc(100% + 20px);
    height: 100%;
    background: var(--bg-mobile);
    z-index: -1;
  }
}
/* END INVOCE */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START PEOPLE PAGES */
#main table.people.index tr.context-menu-selection h2,
#main .context-menu-selection a,
#main .context-menu-selection a:hover {
  color: inherit !important;
}
#main table.people.index tr.context-menu-selection h2 a {
  color: var(--color-main-color) !important;
}
#main #people-tags-edit {
  width: 100%;
}
table.people.index {
  border: none !important;
  margin: 0 0 10px 0 !important;
}
table.people.index td {
  padding: 15px 10px !important;
  vertical-align: middle !important;
  background: var(--bg-fff);
  border-bottom: 1px solid var(--border-color-content) !important;
  border-right: none !important;
  -webkit-transition: background var(--time-hover) ease-in-out;
  -moz-transition: background var(--time-hover) ease-in-out;
  -ms-transition: background var(--time-hover) ease-in-out;
  -o-transition: background var(--time-hover) ease-in-out;
  transition: background var(--time-hover) ease-in-out;
}
table.people.index td.avatar {
  position: relative;
}
table.people.index td.avatar img {
  position: relative;
  z-index: 2;
}
table.people.index td.info {
  text-align: right;
}
table.people.index tr:last-child td {
  border-bottom: none !important;
}
table.people.index h1 {
  font-size: 1rem !important;
  line-height: 1.2;
  margin: 0 0 3px !important;
}
table.people.index h1 a {
  color: var(--text-color-main);
}
table.people.index h1 a:hover {
  text-decoration: none;
}
table.people.index h2 {
  font-size: 0.85714286rem !important;
  font-weight: normal !important;
}
table.people.index h2 a {
  text-decoration: underline;
}
table.people.index .tags {
  display: inline-flex;
  justify-content: flex-end;
}
table.people.index tr:hover td,
table.people.index tr.context-menu-selection td {
  background-color: var(--bg-box);
}
table.people.index tr:hover td h1 a,
table.people.index tr.context-menu-selection td h1 a {
  color: var(--text-color-main);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
table.people.index tr:hover td h1 a:hover,
table.people.index tr.context-menu-selection td h1 a:hover {
  color: var(--color-main-color);
}
table.people.index .tag_list {
  display: flex;
  align-items: center;
  font-size: 0;
  line-height: 0;
  padding: 0 0 0 25px;
}
table.people.index .tag_list span.tag-label-color {
  padding: 0;
  transition: all var(--time-hover) ease;
  border: 1px solid inherit;
  margin: 0 0 0 5px;
  font-size: 0.7857rem;
  line-height: 1.1;
}
table.people.index .tag_list span.tag-label-color a {
  font-family: sans-serif;
  padding: 2px 4px;
  display: block;
  transition: all var(--time-hover) ease;
}
table.people.index .tag_list span.tag-label-color:hover {
  background: var(--color-main-color-text) !important;
  border-color: var(--color-main-color);
}
table.people.index .tag_list span.tag-label-color:hover a {
  color: var(--color-main-color);
}
table.people.index h2 {
  margin: 0 !important;
}
.resource-subjects span.icon {
  background-image: none !important;
  padding: 0 0 0 25px;
  height: 16px;
  width: 16px;
}
.resource-subjects span.icon:after {
  color: var(--icon-color);
  position: absolute;
  top: 50%;
  left: 0px;
  display: block;
  clear: both;
  height: 16px;
  width: 16px;
  margin: -8px 0 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 14px;
  line-height: 16px;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.resource-subjects span.icon img.gravatar {
  margin: 0 5px 0 0;
}
.user-resource-bookings span.expander {
  background-image: none !important;
  display: inline-block;
  position: relative;
  width: 16px;
  height: 16px;
  min-height: 16px;
  min-width: 16px;
  line-height: 16px;
  padding: 0 !important;
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
.user-resource-bookings span.expander:before {
  display: none;
}
.user-resource-bookings span.expander:after {
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 16px;
  height: 16px;
  margin: 0;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 14px;
  line-height: 16px;
  color: var(--icon-color);
}
.user-resource-bookings.open span.expander {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#main table.subject_header #edit_tags_form form input[type="submit"]:hover {
  clor: var(--button-main-color-hover);
  background: var(--button-main-bg-hover);
}
#main div.person.details {
  background: none;
  border: none;
  margin: 0;
  padding: 0;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#main div.person.details table.subject_header td.subject_info {
  border: none;
}
#main div.person.details table.subject_header td.subject_info li.icon-email {
  padding: 0;
}
#main div.person.details table.subject_header td.subject_info li.icon-email:after {
  display: none;
}
#main div.person.details table.subject_header td.subject_info a[href^="mailto"] {
  display: block;
  position: relative;
  padding: 0 0 0 25px;
  min-height: 20px;
  color: var(--icon-color-bg);
  text-decoration: none;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main div.person.details table.subject_header td.subject_info a[href^="mailto"]:after {
  content: "\E114";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-family: "WFS-RM-font";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 20px;
  line-height: 1;
  color: var(--icon-color-bg);
}
#main div.person.details table.subject_header td.subject_info a[href^="mailto"]:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 20px;
  height: 20px;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 0;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main div.person.details table.subject_header td.subject_info a[href^="mailto"]:empty {
  display: none;
}
#main div.person.details table.subject_header td.subject_info a[href^="mailto"]:hover {
  color: var(--icon-color-hover-bg);
}
#main div.person.details table.subject_header td.subject_info a[href^="mailto"]:hover:after {
  color: var(--icon-color-hover-bg);
}
#main div.person.details table.subject_header td.subject_info a[href^="mailto"]:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main div.person.details table.subject_header td {
  padding: 15px 10px;
  vertical-align: middle;
  border-right: none;
}
#main div.person.details .tag_list {
  padding: 0 0 0 30px;
}
#main div.person.details .tag_list:empty {
  display: none;
}
#main div.person.details .tag-label-color {
  padding: 0;
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
  border: 1px solid inherit;
  margin: 0 5px 0 0;
  font-size: 0.7857rem;
  line-height: 1.1;
}
#main div.person.details .tag-label-color a {
  font-family: sans-serif;
  padding: 2px 4px;
  display: block;
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
#main .attachments table .icon-download,
#main .attachments table .icon-del {
  margin: -4px 0 0;
}
#main .attachments table .delete {
  float: right;
}
#main .tab-content > ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
#main .tab-content > ul li {
  margin: 0 0 10px;
  padding: 0 0 0 15px;
  position: relative;
}
#main .tab-content > ul li:before {
  content: "";
  position: absolute;
  top: 4px;
  left: 0;
  height: 6px;
  width: 6px;
  background: var(--color-main-color);
  border-radius: 50%;
}
#main .tab-content > ul li a[href^='/projects'] {
  font-weight: 600;
}
#main .metrics .num {
  font-size: 1.42857143rem;
  font-weight: 500;
}
#main .autoscroll {
  clear: both;
}
#main > #content .contextual #edit_tags_link {
  display: inline-block;
  padding: 5px 8px;
  color: var(--button-main-color);
  background: var(--button-main-bg);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  font-weight: var(--button-font-weight);
  width: auto;
  height: auto;
  min-height: auto;
  font-size: 0.7857rem;
  line-height: 0.7857rem;
  opacity: 1;
  -webkit-transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: opacity var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main > #content .contextual #edit_tags_link:hover {
  text-decoration: none;
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#main > #content .contextual #edit_tags_link:before,
#main > #content .contextual #edit_tags_link:after {
  display: none;
}
table.list.issues tr.group span.totals {
  font-size: inherit;
}
table.list.issues tr.group span.count {
  background: var(--color-main-color);
  padding: 2px 6px 2px 6px;
  color: var(--color-main-color-text);
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
table.list.issues tr.group span.count:empty {
  display: none;
}
table.list.people {
  margin: 0 0 30px;
}
table.list.people td {
  font-size: inherit;
}
#tab-placeholder-activity #activity ~ a {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 ;
  text-decoration: none;
}
#tab-placeholder-activity #activity ~ a:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#wrapper #tags_data {
  display: flex;
  align-items: center;
  margin: 5px 0 10px;
  flex-wrap: wrap;
}
#wrapper #tags_data .tag_list {
  margin: 0 10px 0 0;
}
#wrapper #edit_tags_form {
  margin: 5px 0 0;
}
#wrapper #edit_tags_form .select2-container--default {
  width: auto !important;
  margin: 0 10px 0 0;
}
body #content .people-tags-edit ul.tagit,
body .modal .people-tags-edit ul.tagit {
  margin: 0 !important;
}
#content .people-tags-edit ul.tagit,
.modal .people-tags-edit ul.tagit {
  margin: 0 !important;
  padding: 5px 10px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
#content .people-tags-edit ul.tagit li.tagit-choice,
.modal .people-tags-edit ul.tagit li.tagit-choice {
  color: var(--text-color-main);
  vertical-align: top;
  border-radius: 3px;
  padding: 2px 4px 2px 21px;
  font-size: 0.7857rem;
  line-height: 1.1;
  margin: 2px 10px 2px 0;
  background: var(--light-bg);
  min-height: 20px;
  display: flex;
  align-items: center;
  -webkit-transition: all var(--time-hover) ease;
  -moz-transition: all var(--time-hover) ease;
  -ms-transition: all var(--time-hover) ease;
  -o-transition: all var(--time-hover) ease;
  transition: all var(--time-hover) ease;
  border: 1px solid var(--color-main-color);
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  max-width: calc(100% - 4px);
}
#content .people-tags-edit ul.tagit li.tagit-choice .tagit-close,
.modal .people-tags-edit ul.tagit li.tagit-choice .tagit-close {
  background-image: none !important;
  position: absolute;
  top: 50%;
  right: auto;
  left: 5px;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
  color: var(--color-main-color-text);
  width: 12px;
  height: 12px;
  padding: 0;
  margin: -6px 0 0;
  overflow: hidden;
  text-align: center;
  background: var(--color-main-color);
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 1px;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  display: inline-block;
}
#content .people-tags-edit ul.tagit li.tagit-choice .tagit-close:hover,
.modal .people-tags-edit ul.tagit li.tagit-choice .tagit-close:hover {
  color: var(--color-main-color);
  background: var(--color-main-color-text);
}
#content .people-tags-edit ul.tagit li.tagit-choice .tagit-close:hover .text-icon,
.modal .people-tags-edit ul.tagit li.tagit-choice .tagit-close:hover .text-icon {
  color: var(--color-main-color);
}
#content .people-tags-edit ul.tagit li.tagit-choice .tagit-close .text-icon,
.modal .people-tags-edit ul.tagit li.tagit-choice .tagit-close .text-icon {
  color: var(--color-main-color-text);
}
#content .people-tags-edit ul.tagit .tagit-new,
.modal .people-tags-edit ul.tagit .tagit-new {
  margin: 0;
}
#content .people-tags-edit .jcf-list-box,
.modal .people-tags-edit .jcf-list-box {
  margin: 0 0 5px;
}
.ui-widget-content.tagit-autocomplete {
  background: var(--bg-fff);
}
.ui-widget-content.tagit-autocomplete li {
  font-size: 1rem;
  line-height: 1.4;
  color: var(--text-color-main);
  font-weight: normal !important;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.ui-widget-content.tagit-autocomplete li:hover {
  background: var(--all-hover-bg);
}
#content .tab-content #add_attachment_form fieldset {
  padding: 20px;
  margin: 0;
}
#content .tab-content #add_attachment_form fieldset input[type="submit"] + a {
  background: var(--button-bg);
  color: var(--button-color);
}
#content .tab-content #add_attachment_form fieldset input[type="submit"] + a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#content .tab-content #add_attachment_form p {
  color: var(--color-main-color);
  font-weight: bold;
}
#content .tab-content #add_attachment_form .attachments_form {
  display: block;
  margin: 20px 0 0;
  width: 100%;
}
#content .tab-content #activity {
  margin: 0 0 20px !important;
}
#content .tab-content .attachments {
  margin-bottom: 0;
}
#content #work_experience_description_and_toolbar {
  width: 100%;
  display: block;
}
#content form#work_experience #all_attributes > p {
  margin: 0;
}
#content #tab-placeholder-performance .date_period_block {
  display: flex;
}
#content #tab-placeholder-performance .date_period_block .select2 ~ .select2 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
#content #person_information_attributes_workday_length {
  margin: 0 10px 0 0;
}
#content #tab-placeholder-rates .chart_table:not(.histogram),
#content #tab-placeholder-performance .chart_table:not(.histogram) {
  margin: 20px -30px;
  width: calc(100% + 60px);
  background: var(--bg-box);
}
#content #tab-placeholder-rates .chart_table:not(.histogram) td,
#content #tab-placeholder-performance .chart_table:not(.histogram) td {
  padding: 10px 30px;
}
.controller-people .autoscroll {
  margin: 0;
}
.controller-people #main > #content h1 {
  font-size: 1.42857143rem;
  line-height: 1.2;
  margin: 0 0 3px ;
}
#main > #content #query_form .people_header {
  padding-right: 80px;
}
#main > #content #query_form .people_header .tags {
  margin: 0 0 0 10px;
}
#main > #content #query_form .people_header .tags:after {
  display: none;
}
/* END PEOPLE PAGE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ADMIN SETTINGS FOR PEOPLE PAGE */
#tab-content-departments h2 {
  font-size: 1.1428rem;
}
table.list.members td.acls label {
  display: block;
  margin: 0 0 5px;
}
table.list.members td.acls br {
  display: none;
}
table.list.members td.acls p {
  margin: 15px 0;
}
.select-users #principals,
.select-users #people {
  margin: 0 0 20px;
}
.select-users #principals label,
.select-users #people label {
  margin: 0 0 5px;
  overflow: hidden;
  display: flex;
  align-items: center;
}
.select-users #principals label .icon,
.select-users #people label .icon {
  margin-left: 0 !important;
  color: var(--icon-color);
}
.select-users fieldset p {
  font-weight: bold;
}
.select-users fieldset p label {
  margin: 0 0 5px;
  font-weight: normal;
}
.select-users fieldset p label:first-child {
  margin-top: 20px;
}
.select-users fieldset legend + p {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 0;
  margin: 0 0 20px;
  font-weight: normal;
}
.select-users fieldset legend + p label {
  margin: 0 10px 0 0 !important;
  flex: 0 1 auto;
  text-align: left;
  font-weight: bold;
}
.select-users input[type='checkbox'] {
  margin-right: 10px;
}
/* END ADMIN SETTINGS FOR PEOPLE PAGE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MRDIA */
@media screen and (max-width: 1024px) {
  #content .tab-content #add_attachment_form fieldset {
    padding: 10px;
  }
  #content .tab-content #person_files tr .icon-only:before {
    background: var(--bg-box) !important;
  }
  #main .chart_table {
    margin-bottom: 20px !important;
  }
  #main > #content .contextual #edit_tags_link {
    color: var(--bg-fff) !important;
  }
}
@media screen and (max-width: 650px) {
  #wrapper #edit_tags_form .select2-container--default {
    margin-right: 0;
    width: 100% !important;
  }
  #content #tab-placeholder-rates > .chart_table,
  #content #tab-placeholder-performance > .chart_table {
    margin-left: -30px !important;
    margin-right: -30px !important;
  }
  #content .people-tags-edit {
    width: 100%;
  }
  #content .tab-content #add_attachment_form fieldset {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #content #tab-placeholder-performance .date_period_block {
    width: 100%;
    margin: 0 0 20px;
  }
  #tab-placeholder-activity #activity ~ a {
    display: block;
    text-align: center;
  }
  #main .chart_table {
    width: 100%;
    margin: 0 0 20px;
    border-bottom: 1px solid var(--border-color);
  }
  #main .chart_table .metrics {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    border-top: 1px solid var(--border-color);
  }
  #main .chart_table .metrics td {
    border: 0;
    width: 100%;
    padding: 10px 0;
  }
  #main .chart_table .metrics td.delimiter {
    border-top: 1px solid var(--border-color);
  }
  #content #tab-placeholder-performance .date_period_block {
    flex-wrap: wrap;
  }
  #content #tab-placeholder-performance .date_period_block .jcf-select {
    width: 100%;
    flex: 1 0 auto;
  }
  #content #tab-placeholder-performance .date_period_block .jcf-select + .jcf-select {
    margin: 10px 0 0 !important;
  }
}
body select[url*="contacts"] ~ .select2 .select2-selection--single,
body select[url*="people"] ~ .select2 .select2-selection--single {
  padding: 0 30px;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START REDMINEUP PLAGINS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START GENERAL FOR CONTACTS + DEALS + INVOICES + EXPENSES + OPERATIONS + PRODUCTS + ORDERS +  OPERATIONS */
#main #issue-form .tabular {
  position: relative;
}
#main #issue_tags {
  position: relative;
  z-index: 10;
}
#main #checklist-menu {
  top: auto !important;
  bottom: 32px !important;
  left: auto !important;
  right: 0 !important;
  font-size: 0.85714286rem;
  line-height: 1.4;
  z-index: 10;
}
#main #checklist-menu .add-checklist-item {
  font-size: 0.85714286rem;
  line-height: 1.4;
  min-height: 0;
}
#main #checklist-menu .add-checklist-item:after {
  display: none;
}
#main #checklist-menu li {
  background: none !important;
}
#main #checklist-menu a {
  font-size: 0.85714286rem;
  line-height: 1.4;
  padding: 2px 0px 2px 10px;
  font-weight: normal;
  color: var(--text-color-main);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  position: relative;
  display: block;
  background: none !important;
}
#main #checklist-menu a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  width: 0;
  height: 100%;
  background: var(--all-hover-bg);
  z-index: -1;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-transition: width var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out;
}
#main #checklist-menu a:hover {
  color: var(--color-main-color);
}
#main #checklist-menu a:hover:before {
  width: 100%;
  background: var(--all-hover-bg);
}
#main #checklist-menu li:hover > a {
  color: var(--color-main-color);
}
#main #checklist-menu li:hover > a:before {
  width: 100%;
  background: var(--all-hover-bg);
}
#main #content table.contacts.index tr.context-menu-selection span.tag-label-color {
  padding: 3px 4px;
  border-color: var(--border-color);
  color: var(--bg-fff);
}
#main #content table.contacts.index tr.context-menu-selection span.tag-label-color a {
  color: var(--color-main-color-text) !important;
}
#main #content table.contacts.index tr.context-menu-selection span.tag-label-color a:hover {
  color: var(--color-main-color) !important;
}
#main form[action*="_imports"] .box p {
  padding: 0;
}
#main #unsaved-items.list th:first-child {
  -webkit-border-top-left-radius: var(--border-radius);
  -moz-border-top-left-radius: var(--border-radius);
  border-top-left-radius: var(--border-radius);
}
#main #unsaved-items.list th:last-child {
  -webkit-border-top-right-radius: var(--border-radius);
  -moz-border-top-right-radius: var(--border-radius);
  border-top-right-radius: var(--border-radius);
}
#main #unsaved-items.list tbody tr,
#main #unsaved-items.list tr {
  background: none;
}
#main #unsaved-items.list tbody tr:last-child td:first-child,
#main #unsaved-items.list tr:last-child td:first-child {
  -webkit-border-bottom-left-radius: var(--border-radius);
  -moz-border-bottom-left-radius: var(--border-radius);
  border-bottom-left-radius: var(--border-radius);
}
#main #unsaved-items.list tbody tr:last-child td:last-child,
#main #unsaved-items.list tr:last-child td:last-child {
  -webkit-border-bottom-right-radius: var(--border-radius);
  -moz-border-bottom-right-radius: var(--border-radius);
  border-bottom-right-radius: var(--border-radius);
}
#main .deal-lines .list,
#main .deal_list .list,
#main .invoice_list .list,
#main #contact_list .list {
  margin: 0 !important;
  border: 1px solid var(--border-color);
}
#main .deal-lines .list th,
#main .deal_list .list th,
#main .invoice_list .list th,
#main #contact_list .list th {
  background: var(--bg-box);
}
#main .deal-lines .list td.price,
#main .deal_list .list td.price,
#main .invoice_list .list td.price,
#main #contact_list .list td.price {
  text-align: right;
}
#main .deal-lines .list tr.total > th,
#main .deal_list .list tr.total > th,
#main .invoice_list .list tr.total > th,
#main #contact_list .list tr.total > th {
  border-bottom: 0;
}
#main .deal-lines .list tr.total > th tr.total > th,
#main .deal_list .list tr.total > th tr.total > th,
#main .invoice_list .list tr.total > th tr.total > th,
#main #contact_list .list tr.total > th tr.total > th {
  padding: 15px 10px;
}
#main .deal-lines .list tr.total > th table.total,
#main .deal_list .list tr.total > th table.total,
#main .invoice_list .list tr.total > th table.total,
#main #contact_list .list tr.total > th table.total {
  margin: 0;
}
#main .deal-lines .list tr.total > th table.total th,
#main .deal_list .list tr.total > th table.total th,
#main .invoice_list .list tr.total > th table.total th,
#main #contact_list .list tr.total > th table.total th {
  padding: 15px 10px;
}
#main .deal-lines .list.orders tr.total > th,
#main .deal_list .list.orders tr.total > th,
#main .invoice_list .list.orders tr.total > th,
#main #contact_list .list.orders tr.total > th {
  border-top: 1px solid var(--border-color);
}
#main .deal-lines .list.product-lines thead th,
#main .deal_list .list.product-lines thead th,
#main .invoice_list .list.product-lines thead th,
#main #contact_list .list.product-lines thead th {
  border-bottom: 1px solid var(--border-color);
}
#main .deal-lines .list.product-lines td,
#main .deal_list .list.product-lines td,
#main .invoice_list .list.product-lines td,
#main #contact_list .list.product-lines td {
  padding: 7px 14px;
  border: 0;
  border-left: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
}
#main .deal-lines .list.product-lines td:first-child,
#main .deal_list .list.product-lines td:first-child,
#main .invoice_list .list.product-lines td:first-child,
#main #contact_list .list.product-lines td:first-child {
  border-left: 0;
}
#main .deal-lines .list.product-lines td:last-child,
#main .deal_list .list.product-lines td:last-child,
#main .invoice_list .list.product-lines td:last-child,
#main #contact_list .list.product-lines td:last-child {
  border-right: 0;
}
#main .deal-lines table.contacts.orders.index,
#main .deal_list table.contacts.orders.index,
#main .invoice_list table.contacts.orders.index,
#main #contact_list table.contacts.orders.index,
#main .deal-lines table.contacts.deals,
#main .deal_list table.contacts.deals,
#main .invoice_list table.contacts.deals,
#main #contact_list table.contacts.deals,
#main .deal-lines table.contacts.invoices,
#main .deal_list table.contacts.invoices,
#main .invoice_list table.contacts.invoices,
#main #contact_list table.contacts.invoices {
  margin: 0;
}
#main .deal-lines table.contacts.orders.index tr:last-child td,
#main .deal_list table.contacts.orders.index tr:last-child td,
#main .invoice_list table.contacts.orders.index tr:last-child td,
#main #contact_list table.contacts.orders.index tr:last-child td,
#main .deal-lines table.contacts.deals tr:last-child td,
#main .deal_list table.contacts.deals tr:last-child td,
#main .invoice_list table.contacts.deals tr:last-child td,
#main #contact_list table.contacts.deals tr:last-child td,
#main .deal-lines table.contacts.invoices tr:last-child td,
#main .deal_list table.contacts.invoices tr:last-child td,
#main .invoice_list table.contacts.invoices tr:last-child td,
#main #contact_list table.contacts.invoices tr:last-child td {
  border-bottom: 1px solid var(--border-color-content);
}
#main .deal-lines table.contacts.orders.index .total th,
#main .deal_list table.contacts.orders.index .total th,
#main .invoice_list table.contacts.orders.index .total th,
#main #contact_list table.contacts.orders.index .total th,
#main .deal-lines table.contacts.deals .total th,
#main .deal_list table.contacts.deals .total th,
#main .invoice_list table.contacts.deals .total th,
#main #contact_list table.contacts.deals .total th,
#main .deal-lines table.contacts.invoices .total th,
#main .deal_list table.contacts.invoices .total th,
#main .invoice_list table.contacts.invoices .total th,
#main #contact_list table.contacts.invoices .total th {
  background: var(--bg-box);
  border: 0;
  vertical-align: middle;
  padding: 15px 10px;
  -webkit-transition: background-color var(--time-hover) ease-in-out;
  -moz-transition: background-color var(--time-hover) ease-in-out;
  -ms-transition: background-color var(--time-hover) ease-in-out;
  -o-transition: background-color var(--time-hover) ease-in-out;
  transition: background-color var(--time-hover) ease-in-out;
}
#main .deal-lines table.contacts.orders.index .total > th,
#main .deal_list table.contacts.orders.index .total > th,
#main .invoice_list table.contacts.orders.index .total > th,
#main #contact_list table.contacts.orders.index .total > th,
#main .deal-lines table.contacts.deals .total > th,
#main .deal_list table.contacts.deals .total > th,
#main .invoice_list table.contacts.deals .total > th,
#main #contact_list table.contacts.deals .total > th,
#main .deal-lines table.contacts.invoices .total > th,
#main .deal_list table.contacts.invoices .total > th,
#main .invoice_list table.contacts.invoices .total > th,
#main #contact_list table.contacts.invoices .total > th {
  border-top: 1px solid var(--border-color);
}
#main .deal-lines table.contacts.orders.index .total .total th,
#main .deal_list table.contacts.orders.index .total .total th,
#main .invoice_list table.contacts.orders.index .total .total th,
#main #contact_list table.contacts.orders.index .total .total th,
#main .deal-lines table.contacts.deals .total .total th,
#main .deal_list table.contacts.deals .total .total th,
#main .invoice_list table.contacts.deals .total .total th,
#main #contact_list table.contacts.deals .total .total th,
#main .deal-lines table.contacts.invoices .total .total th,
#main .deal_list table.contacts.invoices .total .total th,
#main .invoice_list table.contacts.invoices .total .total th,
#main #contact_list table.contacts.invoices .total .total th {
  border-top: 0;
}
#main .deal-lines table.contacts.orders.index .total tr:hover,
#main .deal_list table.contacts.orders.index .total tr:hover,
#main .invoice_list table.contacts.orders.index .total tr:hover,
#main #contact_list table.contacts.orders.index .total tr:hover,
#main .deal-lines table.contacts.deals .total tr:hover,
#main .deal_list table.contacts.deals .total tr:hover,
#main .invoice_list table.contacts.deals .total tr:hover,
#main #contact_list table.contacts.deals .total tr:hover,
#main .deal-lines table.contacts.invoices .total tr:hover,
#main .deal_list table.contacts.invoices .total tr:hover,
#main .invoice_list table.contacts.invoices .total tr:hover,
#main #contact_list table.contacts.invoices .total tr:hover {
  background: none;
}
#main .deal-lines table.contacts.orders.index .total tr:hover th,
#main .deal_list table.contacts.orders.index .total tr:hover th,
#main .invoice_list table.contacts.orders.index .total tr:hover th,
#main #contact_list table.contacts.orders.index .total tr:hover th,
#main .deal-lines table.contacts.deals .total tr:hover th,
#main .deal_list table.contacts.deals .total tr:hover th,
#main .invoice_list table.contacts.deals .total tr:hover th,
#main #contact_list table.contacts.deals .total tr:hover th,
#main .deal-lines table.contacts.invoices .total tr:hover th,
#main .deal_list table.contacts.invoices .total tr:hover th,
#main .invoice_list table.contacts.invoices .total tr:hover th,
#main #contact_list table.contacts.invoices .total tr:hover th {
  background-color: var(--bg-box);
}
#main .deal-lines table.contacts.orders.index .total > th,
#main .deal_list table.contacts.orders.index .total > th,
#main .invoice_list table.contacts.orders.index .total > th,
#main #contact_list table.contacts.orders.index .total > th {
  border-top: 0;
}
.controller-people #watchers .delete {
  opacity: 1;
}
.controller-people .delete {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.controller-people .delete:after {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
}
.controller-people .delete:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.controller-people .delete:hover {
  color: var(--icon-color-hover-bg);
}
.controller-people .delete:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-people .delete img {
  display: none;
}
.controller-people .delete:after {
  content: "\E104";
}
/* END GENERAL FOR CONTACTS + DEALS + INVOICES + EXPENSES + OPERATIONS + PRODUCTS + ORDERS +  OPERATIONS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START BORD BOX */
#main #contact_list.deal_list .list.deal-board {
  margin: 0 !important;
  -webkit-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  -moz-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}
#main #contact_list.deal_list .list.deal-board th {
  background: none;
  text-transform: uppercase;
  color: var(--text-color-main);
  padding: 15px 10px;
  border-bottom: 0;
  font-size: 1.28571429rem;
  line-height: 1.28571429rem;
  min-width: 250px;
}
#main #contact_list.deal_list .list.deal-board td {
  padding: 0 10px;
  background: var(--bg-fff) !important;
}
#main #contact_list.deal_list .list.deal-board .total th {
  border-bottom: 0;
}
#main #contact_list.deal_list .list.sales-funnel {
  font-size: 1rem;
  line-height: 1.4;
}
#main #contact_list.deal_list .list.sales-funnel td {
  font-size: 1rem;
  line-height: 1.4;
}
#main #contact_list.deal_list .list.sales-funnel .sales-funnel {
  text-align: left;
}
#main #contact_list.deal_list .list.sales-funnel .sales-funnel span.tag-label-color {
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
  margin: 5px 0;
  padding: 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#main #contact_list.deal_list .list.sales-funnel th {
  padding: 15px 10px;
}
#main #contact_list.deal_list .list.sales-funnel .total th {
  padding: 15px 10px;
  border-bottom: 0;
  border-top: 1px solid var(--border-color);
}
#main #contact_list.deal_list .list.sales-funnel .total th:first-child {
  -webkit-border-radius: 0 0 0 var(--border-radius);
  -moz-border-radius: 0 0 0 var(--border-radius);
  border-radius: 0 0 0 var(--border-radius);
}
#main #contact_list.deal_list .list.sales-funnel .total th:last-child {
  -webkit-border-radius: 0 0 var(--border-radius) 0;
  -moz-border-radius: 0 0 var(--border-radius) 0;
  border-radius: 0 0 var(--border-radius) 0;
}
#main #contact_list.deal_list .list.deal-board {
  margin: 0 !important;
}
#main #contact_list.deal_list .list.deal-board th {
  background: none;
}
#query_form p[style="float:right;"] {
  font-size: 0px;
  line-height: 0px;
  color: var(--bg-fff);
  position: relative;
  z-index: 2;
}
#query_form p[style="float:right;"] a {
  display: inline-block;
  vertical-align: top;
  height: var(--icon-width);
  width: var(--icon-width);
  position: relative;
  text-indent: -99999px;
  color: var(--icon-color);
}
#query_form p[style="float:right;"] a:after {
  text-indent: 0;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#query_form p[style="float:right;"] a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#query_form p[style="float:right;"] a:hover {
  color: var(--icon-color-hover);
}
#query_form p[style="float:right;"] a:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#query_form p[style="float:right;"] a:first-child:after {
  content: "\E168";
}
#query_form p[style="float:right;"] a:last-child:after {
  content: "\E14F";
}
#query_form .holder-buttons-filter {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  max-width: 570px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 570px;
  z-index: 1;
  overflow: hidden;
}
#query_form .holder-buttons-filter .buttons {
  display: flex;
  align-items: center;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
}
#query_form .holder-buttons-filter .buttons.hide-when-print {
  margin: 0 0 0 10px;
}
#query_form .holder-buttons-filter .buttons.hide-when-print a {
  margin: 0 5px 0 0;
}
#query_form .holder-buttons-filter label[for="month"],
#query_form .holder-buttons-filter label[for="year"] {
  margin: 0 10px 0 0;
}
#contact_list table.cal tr:last-child td {
  border-bottom: 0;
}
#contact_list table.cal tr td:last-child {
  border-right: 0;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START BORD TABLE */
.deal-board .deal-status-col .deal-card {
  border: 0;
  border-left: 4px solid var(--color-main-color);
  padding: 10px;
  margin: 0 0 4px;
  font-size: 1rem;
  line-height: 1.4;
}
.deal-board .deal-status-col .deal-card p {
  margin: 0 0 5px;
}
.deal-board .deal-status-col.open .deal-card {
  border-color: var(--color-main-color);
  background-color: var(--light-bg);
}
.deal-board .deal-status-col.open .deal-card .info {
  border-color: var(--border-color-content);
}
.deal-board .deal-status-col.won .deal-card {
  border-color: var(--icon-save-color);
  background-color: var(--icon-save-bg);
}
.deal-board .deal-status-col.won .deal-card .info {
  border-color: var(--border-color-content);
}
.deal-board .deal-status-col.lost .deal-card {
  border-color: var(--notice-error-main);
  background-color: var(--notice-error-bg);
}
.deal-board .deal-status-col.lost .deal-card .info {
  border-color: var(--border-color-content);
}
/* END BORD TABLE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START CALENDAR TABLE */
#main .cal .issue.deal,
#main .cal .issue.invoice,
#main .cal .issue.operation,
#main .cal .issue.order {
  padding: 10px !important;
  border-color: var(--notice-successfu-main) !important;
  background: var(--notice-successfu-bg) !important;
  font-size: 1rem;
  line-height: 1.4;
  display: flex;
  flex-flow: column;
  margin-right: 4px !important;
}
#main .cal .issue.deal:before,
#main .cal .issue.invoice:before,
#main .cal .issue.operation:before,
#main .cal .issue.order:before {
  display: none;
}
#main .cal .issue.deal a,
#main .cal .issue.invoice a,
#main .cal .issue.operation a,
#main .cal .issue.order a,
#main .cal .issue.deal a.icon,
#main .cal .issue.invoice a.icon,
#main .cal .issue.operation a.icon,
#main .cal .issue.order a.icon {
  min-height: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  margin: 5px -10px 10px;
  padding: 6px 6px 6px 10px !important;
  width: 100%;
  background: var(--notice-successfu-main);
  height: auto;
  font-size: 1rem;
  line-height: 1.4;
  color: var(--notice-successfu-main-text) !important;
  text-decoration: none;
  border: 4px solid var(--notice-successfu-main);
  border-left: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main .cal .issue.deal a:after,
#main .cal .issue.invoice a:after,
#main .cal .issue.operation a:after,
#main .cal .issue.order a:after,
#main .cal .issue.deal a.icon:after,
#main .cal .issue.invoice a.icon:after,
#main .cal .issue.operation a.icon:after,
#main .cal .issue.order a.icon:after,
#main .cal .issue.deal a:before,
#main .cal .issue.invoice a:before,
#main .cal .issue.operation a:before,
#main .cal .issue.order a:before,
#main .cal .issue.deal a.icon:before,
#main .cal .issue.invoice a.icon:before,
#main .cal .issue.operation a.icon:before,
#main .cal .issue.order a.icon:before {
  display: none !important;
}
#main .cal .issue.deal a:hover,
#main .cal .issue.invoice a:hover,
#main .cal .issue.operation a:hover,
#main .cal .issue.order a:hover,
#main .cal .issue.deal a.icon:hover,
#main .cal .issue.invoice a.icon:hover,
#main .cal .issue.operation a.icon:hover,
#main .cal .issue.order a.icon:hover {
  background: var(--notice-successfu-bg);
  color: var(--notice-successfu-bg-text) !important;
}
#main .cal .issue.deal:after,
#main .cal .issue.invoice:after,
#main .cal .issue.operation:after,
#main .cal .issue.order:after,
#main .cal .issue.deal:before,
#main .cal .issue.invoice:before,
#main .cal .issue.operation:before,
#main .cal .issue.order:before {
  display: none !important;
}
/* end CALENDAR TABLE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START  DEALS */
#deal_form .deal_items {
  padding: 40px 0 0;
  border: 0;
  position: relative;
}
#deal_form .deal_items legend {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: bold;
  color: var(--text-color-main);
}
#deal_form .deal_items table.product-lines.form {
  border-spacing: 0;
}
#deal_form .deal_items table.product-lines.form .product-image {
  vertical-align: middle;
}
#deal_form .deal_items table.product-lines.form tr.line-total td.add-link {
  padding: 10px 5px 10px 0;
  vertical-align: top;
}
#deal_form .deal_items table.product-lines.form tr.line-total td.add-link a {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-bg);
  border: none;
  color: var(--button-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 !important;
}
#deal_form .deal_items table.product-lines.form tr.line-total td.add-link a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
  text-decoration: none;
}
#deal_form .deal_items table.product-lines.form tr.line-total td {
  border-bottom: 1px solid var(--border-color-content);
}
#deal_form .deal_items table.product-lines.form tr.line-total td.total-data.total {
  vertical-align: top;
  padding: 15px 5px;
}
#deal_form .deal_items table.product-lines.form tr.line-total td {
  border: 0 !important;
}
#deal_form .deal_items table.product-lines.form tr.line.fields td {
  border-color: var(--border-color-content);
}
#deal_form .deal_items table.product-lines.form tr.line.fields td.item {
  padding: 10px 0;
  border-color: var(--border-color-content);
}
#deal_form .deal_items table.product-lines.form tr.line.fields td.item + textarea {
  margin-top: 10px;
}
#deal_form .deal_items table.product-lines.form tr.line.fields td.item .info {
  margin: 0;
}
#deal_form .deal_items table.product-lines.form .tax-fields,
#deal_form .deal_items table.product-lines.form .discount-fields {
  display: flex;
  align-items: center;
  font-weight: 700;
}
#deal_form .deal_items table.product-lines.form .tax-fields input[type="text"],
#deal_form .deal_items table.product-lines.form .discount-fields input[type="text"] {
  margin: 0 5px 0 0;
}
#deal_form .deal_items table.product-lines.form #new_product_code {
  margin: 0 0 10px;
}
#deal_form textarea {
  min-height: 45px;
  width: 100%;
  float: left;
}
/* END  DEALS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START INVOICES */
#invoice_form fieldset.attributes {
  padding: 40px 0 0;
  border: 0;
  position: relative;
}
#invoice_form fieldset.attributes legend {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: bold;
  color: var(--text-color-main);
}
#invoice_form fieldset.attributes table.invoice-lines {
  border-spacing: 0;
}
#invoice_form fieldset.attributes table.invoice-lines tr.line-total td.add-link {
  padding: 10px 5px 10px 0;
  vertical-align: top;
}
#invoice_form fieldset.attributes table.invoice-lines tr.line-total td.add-link a {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-bg);
  border: none;
  color: var(--button-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 !important;
}
#invoice_form fieldset.attributes table.invoice-lines tr.line-total td.add-link a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
  text-decoration: none;
}
#invoice_form fieldset.attributes table.invoice-lines tr.line-total td {
  border-bottom: 1px solid var(--border-color-content);
}
#invoice_form fieldset.attributes table.invoice-lines tr.line-total td.total-data.total {
  vertical-align: top;
  padding: 15px 5px;
}
#invoice_form fieldset.attributes table.invoice-lines tr.line-total td {
  border: 0 !important;
}
#invoice_form fieldset.attributes table.invoice-lines tr.line.fields td {
  border-bottom: 1px solid var(--border-color-content);
}
#invoice_form fieldset.attributes table.invoice-lines tr.line.fields td.item {
  padding: 10px 0;
}
#invoice_form fieldset.attributes table.invoice-lines tr.line.fields td.item .info {
  margin: 0;
}
#invoice_form fieldset.attributes table.invoice-lines .tax-fields,
#invoice_form fieldset.attributes table.invoice-lines .discount-fields {
  display: flex;
  align-items: center;
  font-weight: 700;
}
#invoice_form fieldset.attributes table.invoice-lines .tax-fields input[type="text"],
#invoice_form fieldset.attributes table.invoice-lines .discount-fields input[type="text"] {
  margin: 0 5px 0 0;
}
#invoice_form fieldset.attributes table.invoice-lines #new_product_code {
  margin: 10px 0 0;
}
#invoice_form textarea {
  min-height: 45px;
  width: 100%;
  float: left;
}
#settings_invoices_paypal_account {
  margin: 0 0 0 10px;
}
/* END INVOICES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ORDERS */
#order_form fieldset {
  padding: 40px 0 0;
  border: 0;
  position: relative;
}
#order_form fieldset legend {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: bold;
  color: var(--text-color-main);
}
#order_form fieldset table.product-lines {
  border-spacing: 0;
}
#order_form fieldset table.product-lines tr.line-total td.add-link {
  padding: 10px 5px 10px 0;
  vertical-align: top;
}
#order_form fieldset table.product-lines tr.line-total td.add-link a {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-bg);
  border: none;
  color: var(--button-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 !important;
}
#order_form fieldset table.product-lines tr.line-total td.add-link a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
  text-decoration: none;
}
#order_form fieldset table.product-lines tr.line-total td {
  border-bottom: 1px solid var(--border-color-content);
}
#order_form fieldset table.product-lines tr.line-total td.total-data.total {
  vertical-align: top;
  padding: 15px 5px;
}
#order_form fieldset table.product-lines tr.line-total td {
  border: 0 !important;
}
#order_form fieldset table.product-lines tr.line.fields td {
  border-bottom: 1px solid var(--border-color-content);
}
#order_form fieldset table.product-lines tr.line.fields td.item {
  padding: 10px 0;
}
#order_form fieldset table.product-lines tr.line.fields td.item .info {
  margin: 0;
}
#order_form fieldset table.product-lines .tax-fields,
#order_form fieldset table.product-lines .discount-fields {
  display: flex;
  align-items: center;
  font-weight: 700;
}
#order_form fieldset table.product-lines .tax-fields input[type="text"],
#order_form fieldset table.product-lines .discount-fields input[type="text"] {
  margin: 0 5px 0 0;
}
#order_form fieldset table.product-lines #new_product_code {
  margin: 0 0 10px;
}
#order_form fieldset textarea {
  min-height: 45px;
  width: 100%;
  float: left;
}
/* END ORDERS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START EXPENCES */
#main .expense_list .list,
#main .operation_list .list,
#main .product_list .list {
  margin: 20px 0 !important;
}
#main .expense_list .list th,
#main .operation_list .list th,
#main .product_list .list th {
  background: var(--bg-box);
}
#main .expense_list .list td.price,
#main .operation_list .list td.price,
#main .product_list .list td.price {
  text-align: right;
}
#main .expense_list .list .total,
#main .operation_list .list .total,
#main .product_list .list .total {
  margin: 0;
}
#main .expense_list .list .total th,
#main .operation_list .list .total th,
#main .product_list .list .total th {
  border: 0;
  padding: 15px 14px;
}
#main .expense_list .list tr.operation a,
#main .operation_list .list tr.operation a,
#main .product_list .list tr.operation a {
  color: var(--color-main-color);
}
#main .expense_list table.contacts.expenses.index,
#main .operation_list table.contacts.expenses.index,
#main .product_list table.contacts.expenses.index,
#main .expense_list table.contacts.products,
#main .operation_list table.contacts.products,
#main .product_list table.contacts.products,
#main .expense_list table.contacts.orders,
#main .operation_list table.contacts.orders,
#main .product_list table.contacts.orders {
  margin: 0;
}
#main .expense_list table.contacts.expenses.index .total th,
#main .operation_list table.contacts.expenses.index .total th,
#main .product_list table.contacts.expenses.index .total th,
#main .expense_list table.contacts.products .total th,
#main .operation_list table.contacts.products .total th,
#main .product_list table.contacts.products .total th,
#main .expense_list table.contacts.orders .total th,
#main .operation_list table.contacts.orders .total th,
#main .product_list table.contacts.orders .total th {
  border: 0;
  vertical-align: middle;
  padding: 15px 10px;
  -webkit-transition: background-color var(--time-hover) ease-in-out;
  -moz-transition: background-color var(--time-hover) ease-in-out;
  -ms-transition: background-color var(--time-hover) ease-in-out;
  -o-transition: background-color var(--time-hover) ease-in-out;
  transition: background-color var(--time-hover) ease-in-out;
}
#main .expense_list table.contacts.expenses.index .total:hover,
#main .operation_list table.contacts.expenses.index .total:hover,
#main .product_list table.contacts.expenses.index .total:hover,
#main .expense_list table.contacts.products .total:hover,
#main .operation_list table.contacts.products .total:hover,
#main .product_list table.contacts.products .total:hover,
#main .expense_list table.contacts.orders .total:hover,
#main .operation_list table.contacts.orders .total:hover,
#main .product_list table.contacts.orders .total:hover {
  background: none;
}
#main .expense_list table.contacts.expenses.index .total:hover th,
#main .operation_list table.contacts.expenses.index .total:hover th,
#main .product_list table.contacts.expenses.index .total:hover th,
#main .expense_list table.contacts.products .total:hover th,
#main .operation_list table.contacts.products .total:hover th,
#main .product_list table.contacts.products .total:hover th,
#main .expense_list table.contacts.orders .total:hover th,
#main .operation_list table.contacts.orders .total:hover th,
#main .product_list table.contacts.orders .total:hover th {
  background-color: var(--color-main-color);
}
#main .expense_list .list .total th {
  border-top: 1px solid var(--border-color);
}
/* END EXPENCES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START PRODUCT */
#main .product_list h2 {
  background: none;
}
#main .product_list a {
  color: var(--color-main-color);
}
#main .product_list td.price {
  white-space: nowrap;
}
#main table.issues td.description,
#main table.issues td.last_notes {
  color: var(--text-color-main);
}
/* END PRODUCT */
/* --------------------- https://redmine-evolution.com/ -- */
/* START CONTACT */
#contact_list .splitcontentleft,
#contact_list .splitcontentright {
  margin: 0 !important;
}
#contact_list .contact.card {
  border: 0;
  border-left: 4px solid var(--color-main-color);
  padding: 10px;
  margin: 0 0 4px;
  font-size: 1rem;
  line-height: 1.4;
  background-color: var(--light-bg);
}
#contact_list .contact.card h2 a {
  font-size: 1.1428rem;
  line-height: 1.1428rem;
  font-weight: bold;
}
#contact_list .contact.card h2 {
  background: none;
  margin: 0 0 15px !important;
}
#contact_list .contact.card p {
  margin: 0 0 5px;
}
#contact_list .contact.card #avatar {
  display: block;
  position: relative;
  overflow: hidden;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
}
#contact_list .contact.card #avatar:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 64px;
  height: 64px;
  background: var(--bg-fff);
  z-index: 1;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
}
#contact_list .contact.card #avatar img {
  display: block;
  position: relative;
  z-index: 2;
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#contact_list .contact.card #avatar:hover img {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}
#contact_list .icon-phone,
#contact_list .icon-email {
  position: relative;
  display: block;
  background: none;
  line-height: 20px;
  min-height: 20px;
}
#contact_list .icon-phone:after,
#contact_list .icon-email:after {
  color: var(--icon-color);
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  clear: both;
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  overflow: hidden;
  margin: -12px 0 0;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  text-align: center;
}
#contact_list .icon-tag:after {
  color: var(--icon-color) !important;
}
#contact_list .tag_list {
  color: var(--light-bg);
}
#settings_default_tax {
  margin: 0 10px 0 0;
}
#content #tax_data p {
  margin-bottom: 10px !important;
}
/* END CONTACT */
/* --------------------- https://redmine-evolution.com/ -- */
/*  START ADD FILE */
#invoice_payment_form fieldset,
#operation_form fieldset,
#product_form fieldset,
.edit_operation fieldset,
#expense_form fieldset,
#add_note_form fieldset,
#invoice_form fieldset,
#order_form fieldset {
  padding: 52px 20px 15px;
  position: relative;
  color: var(--text-color-main);
  overflow: hidden;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 20px 0 0;
  border: none;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
}
#invoice_payment_form fieldset legend,
#operation_form fieldset legend,
#product_form fieldset legend,
.edit_operation fieldset legend,
#expense_form fieldset legend,
#add_note_form fieldset legend,
#invoice_form fieldset legend,
#order_form fieldset legend {
  position: absolute;
  top: 17px;
  left: 20px;
  font-weight: 600;
  color: var(--text-color-main);
  margin: 0;
}
#invoice_payment_form fieldset > p,
#operation_form fieldset > p,
#product_form fieldset > p,
.edit_operation fieldset > p,
#expense_form fieldset > p,
#add_note_form fieldset > p,
#invoice_form fieldset > p,
#order_form fieldset > p {
  margin: 0;
}
/*  END ADD FILE */
/* --------------------- https://redmine-evolution.com/ -- */
/*  START ADMIN PAGES */
.controller-people_settings #settings_workday_length {
  margin: 0 10px 0 0;
}
/*  END ADMIN PAGES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START CHECKLIS */
.controller-checklist_template_categories #content .box {
  margin: 0 0 20px;
}
#content #checklist_items li.checklist-section {
  padding-bottom: 10px;
  border-color: var(--border-color-content);
  border-top: 1px solid var(--border-color-content);
  margin-bottom: 10px;
}
#content .checklist-section {
  padding-bottom: 10px;
  border-color: var(--border-color-content);
  border-top: 1px solid var(--border-color-content);
  margin-bottom: 10px;
}
#content #checklist-menu ul {
  top: 0;
  left: auto !important;
  right: 100% !important;
}
#content .box .checklist-subject {
  color: var(--text-color-main);
}
#content #checklist_form br {
  display: none;
}
#content .checklist-edit-save-button {
  margin: 0 0 0 10px;
}
#content .checklist-edit-save-button .item-save {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
}
#content .checklist-edit-save-button .item-save:hover {
  background: var(--button-main-color-hover);
  color: var(--button-main-color-hover);
}
#content .checklist-edit-save-button .item-save:disabled {
  background: var(--button-main-bg-disabled);
  cursor: var(--button-main-color-disabled);
}
#content .checklist-edit-save-button .item-save:disabled:hover {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
}
#content .checklist-edit-reset-button {
  margin: 0 0 0 10px;
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  box-sizing: border-box;
  background: var(--button-bg);
  border: none;
  color: var(--button-color);
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
}
#content .checklist-edit-reset-button:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
.controller-issues.action-new #context-menu.checklist-menu {
  margin: 0 0 0 -120px;
}
.controller-issues.action-new #context-menu.checklist-menu li.folder > ul {
  left: auto;
  right: 150px;
}
/* END CHECKLIS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START CRM */
#content #settings_default_tax {
  margin: 0 10px 0 0;
}
/* END CRM */
/* --------------------- https://redmine-evolution.com/ -- */
/* START RESOURCES */
#settings_default_tax {
  margin: 0 10px 0 0;
}
/* START RESOURCES ADMIN PAGE*/
#content form[action*="redmine_resources"] .box p {
  margin: 0;
}
#content #people_settings_workday_length,
#content #settings_workday_length {
  margin: 0 10px 0 0;
}
/* END RESOURCES ADMIN PAGE */
/* END RESOURCES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START REPORT */
fieldset#report_template_content {
  padding: 52px 0 15px;
  margin-top: 20px !important;
  position: relative;
  color: var(--text-color-main);
  overflow: hidden;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: none;
}
fieldset#report_template_content:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--border-color);
}
fieldset#report_template_content legend {
  position: absolute;
  top: 17px;
  left: 0;
  font-weight: 600;
  color: var(--color-main-color);
  margin: 0;
}
fieldset#report_template_content textarea {
  width: 100% !important;
}
#edit_content a {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#edit_content a:after {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
}
#edit_content a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#edit_content a:hover {
  color: var(--icon-color-hover-bg);
}
#edit_content a:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#edit_content a.selected {
  color: var(--icon_color_active-bg);
}
#edit_content a.selected:before {
  background: var(--icon_bg_active-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#edit_content a img {
  display: none;
}
#wrapper .box input[type="text"] ~ div.colorPicker-picker {
  margin: 0 !important;
}
body div.colorPicker-palette {
  border-color: var(--border-color-content);
}
body div.colorPicker_hexWrap {
  margin: 0 2px;
  padding: 5px 0;
  display: flex;
  width: calc(100% - 4px);
  align-items: center;
}
body div.colorPicker_hexWrap label {
  margin: 0 5px 0 0;
  width: auto;
}
body div.colorPicker_hexWrap input {
  width: auto;
  font-size: 0.85714286rem;
  line-height: 1.1428rem;
  flex: 1 0 auto;
  padding: 3px 8px;
  box-sizing: border-box;
  border: 1px solid var(--border-color-content);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
/* END REPORT ADMIN PAGE */
#new-issue-reports-form .other-formats {
  color: var(--bg-body);
  display: flex;
  justify-content: space-between;
  padding: 0 0 5px;
}
#new-issue-reports-form .other-formats span {
  padding: 0;
  margin: 0;
}
#new-issue-reports-form .other-formats .icon {
  border: none;
  padding: 0;
  font-size: 1rem;
  line-height: 1rem;
  color: var(--icon-color-bg);
  background: none !important;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#new-issue-reports-form .other-formats .icon:after,
#new-issue-reports-form .other-formats .icon:before {
  display: none;
}
#new-issue-reports-form .other-formats .icon:hover {
  color: var(--icon-color-hover-bg);
}
/* END REPORT */
/* --------------------- https://redmine-evolution.com/ -- */
/* START FAVORITE PROJECT */
#content #settings form[action*="redmine_favorite_projects"] fieldset.box {
  margin: -20px 0 0;
}
#content #settings .tabular #favorite_projects_box label {
  float: none;
  text-align: left;
  font-weight: 600;
  display: block;
  margin: 0 0 10px !important;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
}
/* START FAVORITE PROJECT */
/* --------------------- https://redmine-evolution.com/ -- */
/* START IVOCE ADMIN PAGE */
#content fieldset#invoice_template_content {
  border: 0;
  padding: 52px 0 0;
  margin: 0;
  position: relative;
}
#content fieldset#invoice_template_content legend {
  position: absolute;
  top: 17px;
  left: 0;
  font-weight: 600;
  color: var(--color-main-color);
  margin: 0;
  display: flex;
  align-items: center;
}
#content #tab-content-recurring_email_templates .box > em.info p {
  margin: 15px 0 0;
}
/* END IVOCE ADMIN PAGE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START NEW CONTACT - MODAL */
.modal #attachments_fields {
  position: absolute;
  top: -999999px;
  left: -99999px;
}
.modal #new_contact #phones_fields,
.modal #new_contact #person_data,
.modal #new_contact .extended .address {
  margin-top: 10px;
}
.modal #new_contact p:not(.buttons) {
  flex-wrap: wrap;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 190px;
}
.modal #new_contact p:not(.buttons) input[type="text"],
.modal #new_contact p:not(.buttons) input[type="date"],
.modal #new_contact p:not(.buttons) textarea {
  width: 100% !important;
}
.modal #new_contact p:not(.buttons) br {
  display: none;
}
.modal #new_contact p:not(.buttons) label {
  font-weight: bold;
  float: left;
  text-align: left;
  margin-left: -180px;
  width: 180px;
  flex: 1;
  padding: 0 10px 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.modal #new_contact p:not(.buttons) em {
  margin: 5px 0 0 !important;
  display: block;
  width: 100%;
}
.modal #new_contact p:not(.buttons).extended[style*="none"] + #show_details_link a {
  position: static;
}
.modal #new_contact p:not(.buttons)#show_details_link {
  padding-left: 0;
  padding: 0 0 20px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.modal #new_contact p:not(.buttons)#show_details_link a {
  text-decoration: none;
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-bg);
  border: none;
  color: var(--button-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  margin: 0;
  position: fixed;
  top: -99999px;
  left: -999999px;
}
.modal #new_contact p:not(.buttons)#show_details_link a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
.modal #new_contact p:not(.buttons).notes {
  padding: 0;
}
.modal #new_contact p:not(.buttons).notes label {
  float: none;
  margin-left: 0;
  width: 100%;
  flex: 1;
  padding: 0;
  margin: 0;
}
.modal .add_attachment {
  margin-top: 2px !important;
  box-sizing: border-box;
  border: 1px solid var(--border-color-content);
  padding: 6px 12px 6px 35px;
  font-size: 14px;
  line-height: 18px;
  height: 30px;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  color: var(--button-grey-color);
  margin: 0;
  min-width: 190px;
  outline: 0 none;
  background: var(--bg-fff);
  position: relative;
  flex: 1 0 auto;
  display: block;
  cursor: pointer;
  font-weight: normal;
}
.modal .add_attachment:before,
.modal .add_attachment:after {
  position: absolute;
  top: 0;
  left: 0;
  width: var(--icon-width);
  height: var(--icon-width);
  cursor: pointer;
}
.modal .add_attachment:before {
  content: '';
}
.modal .add_attachment:after {
  opacity: 1;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 30px;
  line-height: 1;
  color: var(--color-dark-grey);
}
.modal .add_attachment:hover:after {
  color: var(--color-main-color);
  background: none;
}
.modal .add_attachment input[type="file"] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 2;
  cursor: pointer;
}
.modal .jstTabs.tabs ul {
  border-bottom: 0;
  overflow: hidden;
  width: 100%;
  padding: 0;
  margin: 0;
}
.modal .jstTabs.tabs li {
  background: var(--bg-fff);
  float: left;
  list-style-type: none;
  white-space: nowrap;
  margin-right: 4px;
  position: relative;
  margin-bottom: -1px;
}
.modal .jstTabs.tabs li:before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.modal .jstTabs.tabs li a {
  display: inline-block;
  vertical-align: bottom;
  padding: 4px 6px 4px 6px;
  font-size: 0.9em;
  text-decoration: none;
  line-height: 19px;
  border: 1px solid var(--border-color);
  color: var(--border-color);
  font-weight: bold;
  border-top-left-radius: var(--border-radius-small);
  border-top-right-radius: var(--border-radius-small);
  border-bottom: 1px solid transparent;
}
.modal .jstTabs.tabs li a.selected {
  background-color: var(--bg-fff);
  border: 1px solid var(--border-color);
  border-bottom: 1px solid var(--bg-fff);
  color: var(--text-color-main);
}
.modal .jstBlock textarea,
.modal .jstBlock .wiki-preview {
  margin: 0 !important;
}
.box .avatar a[data-method="delete"] {
  color: var(--icon-color-bg);
}
.box .avatar a[data-method="delete"]:before {
  background: var(--icon_bg-bg);
}
.avatar a[data-method="delete"]:after {
  content: "\E104";
}
.project_card a[data-method="delete"]:before,
.project_card a[href*="/favorite_projects/favorite"]:before {
  background: var(--color-main-color-text);
}
.project_card a[data-method="delete"]:hover:before,
.project_card a[href*="/favorite_projects/favorite"]:hover:before {
  background: var(--color-main-color-text);
}
a[data-method="delete"],
a[href*="/favorite_projects/favorite"] {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color);
  vertical-align: middle;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
a[data-method="delete"]:after,
a[href*="/favorite_projects/favorite"]:after {
  content: "\E104";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
a[data-method="delete"]:before,
a[href*="/favorite_projects/favorite"]:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
a[data-method="delete"]:hover,
a[href*="/favorite_projects/favorite"]:hover {
  color: var(--icon-color-hover);
}
a[data-method="delete"]:hover:before,
a[href*="/favorite_projects/favorite"]:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
a[data-method="delete"] img,
a[href*="/favorite_projects/favorite"] img {
  display: none;
}
a[data-method="delete"][href*="/favorite_projects/unfavorite"]:after,
a[href*="/favorite_projects/favorite"][href*="/favorite_projects/unfavorite"]:after {
  content: "\E11E";
  color: var(--color-main-color);
}
a[href*="/favorite_projects/favorite"]:after {
  content: "\E11E";
}
a.icon-del[data-method="delete"]:after {
  content: "\E104";
}
.list a[data-method="delete"]:before,
.list a[href*="/favorite_projects/favorite"]:before {
  background: var(--icon_bg-bg);
}
#main .icon-operation {
  background: none;
  display: block;
  font-size: 0.85714286rem;
  line-height: 26px;
  padding: 0;
}
#main .icon-operation > * {
  line-height: 1.1428rem;
}
#main .icon-operation a[href*="/operations/"] {
  font-weight: bold;
  padding: 0 0 0 30px;
  margin: 0 10px 0 0;
  display: inline-block;
  position: relative;
  text-decoration: none;
}
#main .icon-operation a[href*="/operations/"]:after {
  color: var(--icon-color);
  content: "\E121";
  text-align: center;
  position: absolute;
  top: 50%;
  left: 0px;
  display: block;
  clear: both;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: -13px 0 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main .icon-operation a[href*="/operations/"]:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  left: 0px;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: -13px 0 0;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#main .icon-operation a[href*="/operations/"]:hover {
  color: var(--icon-color-hover);
}
#main .icon-operation a[href*="/operations/"]:hover:after {
  color: var(--icon-color-hover);
}
#main .icon-operation a[href*="/operations/"]:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main .splitcontent {
  overflow: visible;
}
#new-operation-invoice-form p,
#new-relation-form p {
  display: flex;
  align-items: center;
}
#new-operation-invoice-form p input[type="text"],
#new-relation-form p input[type="text"] {
  margin: 0 10px 0 10px;
}
#new-operation-invoice-form p input[type="submit"],
#new-relation-form p input[type="submit"] {
  margin: 0 !important;
  -webkit-border-radius: var(--border-radius-small) !important;
  -moz-border-radius: var(--border-radius-small) !important;
  border-radius: var(--border-radius-small) !important;
}
#new-operation-invoice-form p input[type="submit"] + a,
#new-relation-form p input[type="submit"] + a {
  background: var(--button-bg);
  color: var(--button-color);
  -webkit-border-radius: var(--border-radius-small) !important;
  -moz-border-radius: var(--border-radius-small) !important;
  border-radius: var(--border-radius-small) !important;
}
#new-operation-invoice-form p input[type="submit"] + a:hover,
#new-relation-form p input[type="submit"] + a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
/* END NEW CONTACT - MODAL */
/* --------------------- https://redmine-evolution.com/ -- */
/* START SETTINGS PROJECT */
/* START CONTACTS */
#tab-content-contacts .tabular {
  padding: 0;
}
#tab-content-contacts .tabular .tabular {
  padding: 20px;
}
#main #content .tab-content#tab-content-agile_sprints {
  display: flex !important;
  flex-wrap: wrap;
}
#main #content .tab-content#tab-content-agile_sprints h3 {
  flex: 1 0 auto;
}
#main #content .tab-content#tab-content-agile_sprints .autoscroll {
  width: 100%;
  flex: 1 0 auto;
}
/* END CONTACTS */
/* START DEALS */
#tab-content-deals .tabular {
  padding: 0;
}
#tab-content-deals .list {
  margin: 0 0 20px;
}
#tab-content-deals a[href*='deal_categories/new'] {
  text-decoration: none;
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 10px 0 0;
}
#tab-content-deals a[href*='deal_categories/new']:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#tab-content-deals a[href*='deal_categories/new']:disabled {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
  cursor: default;
}
#tab-content-deals a[href*='deal_categories/new']:disabled:hover {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
}
/* END DEALS */
/* START HELP DESK */
#main #content .tab-content#tab-content-questions {
  display: flex !important;
  flex-wrap: wrap;
}
#main #content .tab-content#tab-content-questions h3 {
  order: 1;
  flex: 1 0 auto;
}
#main #content .tab-content#tab-content-questions .autoscroll {
  order: 3;
  width: 100%;
  flex: 1 0 auto;
}
#main #content .tab-content#tab-content-questions > a {
  order: 2;
  float: right;
  opacity: 1;
}
#tab-content-helpdesk #helpdesk_settings {
  padding: 0;
}
#tab-content-helpdesk .box:nth-of-type(1) {
  margin-top: 0 !important;
}
#tab-content-helpdesk #helpdesk_smtp_password_field {
  flex: 1 0 auto;
}
#tab-content-helpdesk_template #helpdesk_template {
  padding: 0 !important;
}
#tab-content-helpdesk_template #helpdesk_template .box {
  padding: 52px 20px 20px !important;
  margin: 0 0 20px;
}
#tab-content-helpdesk_template #helpdesk_template .info {
  margin-left: 0;
}
#main #content .tab-content#tab-content-helpdesk_canned_responses,
#main #content .tab-content#tab-content-checklist_template,
#main #content .tab-content#tab-content-invoice_templates,
#main #content .tab-content#tab-content-dmsf_workflow {
  display: flex !important;
  flex-wrap: wrap;
}
#main #content .tab-content#tab-content-helpdesk_canned_responses .splitcontent,
#main #content .tab-content#tab-content-checklist_template .splitcontent,
#main #content .tab-content#tab-content-invoice_templates .splitcontent,
#main #content .tab-content#tab-content-dmsf_workflow .splitcontent {
  overflow: visible;
}
#main #content .tab-content#tab-content-helpdesk_canned_responses .autoscroll,
#main #content .tab-content#tab-content-checklist_template .autoscroll,
#main #content .tab-content#tab-content-invoice_templates .autoscroll,
#main #content .tab-content#tab-content-dmsf_workflow .autoscroll {
  order: 2;
  width: 100%;
  flex: 1 0 auto;
}
#main #content .tab-content#tab-content-helpdesk_canned_responses .nodata,
#main #content .tab-content#tab-content-checklist_template .nodata,
#main #content .tab-content#tab-content-invoice_templates .nodata,
#main #content .tab-content#tab-content-dmsf_workflow .nodata {
  order: 2;
}
#main #content .tab-content#tab-content-helpdesk_canned_responses > p,
#main #content .tab-content#tab-content-checklist_template > p,
#main #content .tab-content#tab-content-invoice_templates > p,
#main #content .tab-content#tab-content-dmsf_workflow > p {
  width: 100%;
  flex: 1 0 auto;
  order: 1;
  margin-top: 0 !important;
}
#main #content .tab-content#tab-content-invoice_templates h2 {
  order: 1;
  flex: 1 0 auto;
}
#main #content .tab-content#tab-content-invoice_templates .contextual {
  order: 2;
}
/* END HELP DESK */
/* START REPORT TEMPLATE */
#tab-content-report_templates {
  display: flex;
  flex-flow: column;
}
#tab-content-report_templates h3 {
  order: 1;
  margin: 0 0 20px !important;
}
#tab-content-report_templates .contextual {
  position: absolute;
  top: 0 !important;
  right: 0;
}
#tab-content-report_templates .list,
#tab-content-report_templates .autoscroll {
  order: 3;
}
#tab-content-report_templates .nodata {
  order: 3;
}
#new_canned_response .info {
  margin: 10px 0 0 !important;
}
/* END REPORT TEMPLATE */
/* START INVOICES */
#tab-content-invoices .tabular {
  padding: 0 !important;
}
#tab-content-invoices .tabular fieldset {
  padding: 52px 0 0 !important;
}
#projects_list + p .my-project {
  position: relative;
  padding: 0 0 0 25px;
  font-size: 0.85714286rem;
  line-height: 1.42857143rem;
  display: inline-block;
}
#projects_list + p .my-project:after {
  content: "\E11E";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: var(--icon-width-small);
  width: var(--icon-width-small);
  margin: 0;
  overflow: hidden;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size-small);
  line-height: var(--icon-width-small);
  color: var(--color-main-color);
}
/* END INVOICES */
/* END SETTINGS PROJECT */
/* --------------------- https://redmine-evolution.com/ -- */
/* START EDIT NOTES */
.controller-notes #main > #content:after {
  top: 0;
  height: 100%;
}
.controller-notes #main > #content h2.note_title {
  margin: 0;
  line-height: 30px;
}
.controller-notes #main > #content .content {
  padding: 0;
}
.controller-notes #main > #content .contextual {
  right: 30px;
}
.controller-notes #main > #content .contextual .icon {
  color: var(--icon-color);
}
.controller-notes #main > #content .contextual .icon:before {
  background: var(--icon_bg);
}
.controller-notes #main > #content .contextual .icon:hover {
  color: var(--icon-color-hover);
}
.controller-notes #main > #content .contextual .icon:hover:before {
  background: var(--icon_bg_hover);
}
.controller-notes #main > #content .attachments {
  margin: 0;
}
.controller-notes #main > #content .attachments .icon:before,
.controller-notes #main > #content .attachments .icon-only:before {
  background: var(--icon_bg);
}
.controller-notes .note_data_header {
  padding: 0 0 20px;
}
.controller-notes .edit_note table {
  width: 100%;
  display: flex;
  margin: 0 0 15px;
}
.controller-notes .edit_note table tr {
  display: flex;
}
.controller-notes .edit_note table tr td {
  flex: 1 0 auto;
  padding: 0 10px 0 0;
  display: flex;
  align-items: center;
  white-space: nowrap;
}
.controller-notes .edit_note table label {
  margin: 0 10px 0 0;
}
.controller-notes .edit_note #note_created_on {
  margin: 0 10px 0 0;
}
.controller-notes .edit_note fieldset {
  border: 0;
  margin: 0;
  position: relative;
  padding: 37px 20px 5px;
  background: var(--bg-box);
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  color: var(--text-color-main);
  overflow: hidden;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.controller-notes .edit_note fieldset legend {
  position: absolute;
  top: 17px;
  left: 20px;
  font-weight: 600;
  color: var(--color-main-color);
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
}
/* END EDIT NOTES */
.controller-reports.action-issue_report_details .list.issue-report {
  margin: 0 0 20px !important;
}
.controller-reports.action-issue_report_details .list.issue-report ~ a {
  padding: 8px 30px;
  text-decoration: none;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 10px 0 0;
  width: auto !important;
}
.controller-reports.action-issue_report_details .list.issue-report ~ a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#content > #contacts_notes {
  margin: 0 0 25px;
}
#content > #contacts_notes .note_data {
  border-top: 1px solid var(--border-color);
  padding: 5px 0;
}
#content > #contacts_notes .note_data:first-child {
  padding: 0 0 5px;
  border: 0;
}
#content > #contacts_notes .note_data:last-child {
  padding: 5px 0 0;
}
/* END REDMINEUP PLAGINS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START SIDEBAR */
#sidebar #customer_previous_issues ul li .ticket-meta {
  color: var(--icon-color);
}
#sidebar table.note_data a.delete {
  opacity: 1;
}
#sidebar a[data-method="delete"],
#sidebar a[href*="/favorite_projects/favorite"] {
  color: var(--icon-color);
  opacity: 1 !important;
}
#sidebar #contact_issues table .done_checkbox {
  display: none;
}
#sidebar #contact_issues table td {
  padding: 0;
}
#sidebar .tag_list {
  width: 100%;
  position: relative;
  font-size: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#sidebar .tag_list .tag-label-color {
  display: inline-block;
  padding: 0 !important;
  min-height: auto;
  background: none !important;
}
#sidebar .tag_list .tag-label-color a {
  display: block;
  margin: 0 !important;
}
#sidebar .tag_list:empty {
  display: none;
}
#sidebar table.note_data .content.preview {
  color: var(--text-color-main);
}
#sidebar #issue_contacts a {
  margin: 0 !important;
}
#sidebar #issue_contacts ul li {
  display: flex;
  align-items: center;
  margin: 5px 0 0;
  padding: 0 40px 0 0;
  position: relative;
  min-height: 30px;
}
#sidebar #issue_contacts a.delete {
  position: absolute;
  top: 0;
  right: 0;
  color: var(--icon-color-bg);
}
#sidebar #issue_contacts a.delete:before {
  background: var(--icon_bg-bg);
}
#sidebar #issue_contacts a.delete:hover {
  color: var(--icon-color-hover-bg);
}
#sidebar #issue_contacts a.delete:hover:before {
  background: var(--icon_bg_hover-bg);
}
#sidebar #issue_contacts img.gravatar {
  margin-bottom: 0;
  position: absolute;
  top: 0;
  left: 0;
}
#sidebar #issue_contacts span.contact {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin: 0 5px 0 0;
  padding: 0 0 0 26px;
  position: relative;
}
/* END SIDEBAR */
/* --------------------- https://redmine-evolution.com/ -- */
/* START FIFANCE */
#main #content .tab-content#tab-content-finance {
  display: flex !important;
  flex-wrap: wrap;
}
#tab-content-finance h3 {
  order: 1;
  flex: 1 0 auto;
}
#tab-content-finance .autoscroll {
  order: 3;
  width: 100%;
  flex: 1 0 auto;
}
#tab-content-finance p {
  order: 2;
}
#tab-content-finance p.nodata {
  order: 3;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#tab-content-finance a[href*="icon-add"] {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color);
  vertical-align: middle;
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#tab-content-finance a[href*="icon-add"]:after {
  content: "\E14D";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#tab-content-finance a[href*="icon-add"]:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#tab-content-finance a[href*="icon-add"]:hover {
  color: var(--icon-color-hover);
}
#tab-content-finance a[href*="icon-add"]:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
/* END FIFANCE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MENU FOR MOBILE */
#wrapper .flyout-menu #accounts_stat .accounts-stat th,
#wrapper .flyout-menu #disapproved_operations .accounts-stat th {
  font-weight: bold;
  border-top: 1px solid var(--bg-fff);
  border-right: 1px solid var(--bg-fff);
  padding: 0;
}
#wrapper .flyout-menu #accounts_stat .accounts-stat th a,
#wrapper .flyout-menu #disapproved_operations .accounts-stat th a {
  padding: 10px;
  display: block;
}
#wrapper .flyout-menu #accounts_stat .accounts-stat .sum,
#wrapper .flyout-menu #disapproved_operations .accounts-stat .sum {
  padding: 10px !important;
  border-top: 1px solid var(--bg-fff);
}
#wrapper .flyout-menu .project-members .assignable-user {
  position: relative;
  display: block;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px 10px 10px 36px;
  border-top: 1px solid var(--bg-fff);
}
#wrapper .flyout-menu .project-members .assignable-user br {
  display: none;
}
#wrapper .flyout-menu .project-members .assignable-user a {
  display: block;
  padding: 10px 10px 10px 36px;
  margin: -10px -10px -10px -36px;
  width: calc(100% + 46px);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-weight: bold;
}
#wrapper .flyout-menu .project-members .assignable-user .gravatar {
  position: absolute;
  top: 50%;
  left: 10px;
  width: 16px;
  height: 16px;
  margin: -8px 0 0;
}
#wrapper .flyout-menu .orders-stat {
  padding: 0;
  border-collapse: collapse;
}
#wrapper .flyout-menu .orders-stat th {
  padding: 10px;
  border-top: 1px solid var(--bg-fff);
}
#wrapper .flyout-menu .orders-stat td {
  border-top: 1px solid var(--bg-fff);
  padding: 10px 10px 10px 0;
}
#wrapper .flyout-menu .orders-stat .delimiter hr {
  display: none;
}
#wrapper .flyout-menu #import_link {
  display: block;
  border-top: 1px solid var(--bg-fff);
}
#wrapper .flyout-menu table.accounts-stat {
  border-collapse: collapse;
  width: 100%;
}
#wrapper .flyout-menu table.accounts-stat th {
  padding: 10px 10px;
}
#wrapper .flyout-menu table.accounts-stat td {
  padding: 10px 10px 10px 0;
}
#wrapper .flyout-menu .invoices-stat {
  padding: 0;
  margin: 0;
  border-spacing: 0;
  border-collapse: collapse;
}
#wrapper .flyout-menu .invoices-stat tr {
  border-top: 1px solid var(--bg-fff);
}
#wrapper .flyout-menu .invoices-stat th {
  padding: 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#wrapper .flyout-menu .invoices-stat td {
  white-space: pre-wrap;
  padding: 10px 10px 10px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#wrapper .flyout-menu .invoices-stat .delimiter hr {
  display: none;
}
#wrapper .flyout-menu .invoices-stat span.tag-label-color {
  margin: 0;
}
#wrapper .flyout-menu .invoices-stat br {
  display: block;
}
#wrapper .flyout-menu table.note_data a.delete {
  opacity: 1;
}
#wrapper .flyout-menu #accounts_stat .contextual a,
#wrapper .flyout-menu #deal_contacts .contextual a,
#wrapper .flyout-menu #contact_issues .contextual a {
  border: none;
  display: block;
  background: none;
  padding: 0;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 5px 5px 0 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color);
  vertical-align: middle;
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu #accounts_stat .contextual a:after,
#wrapper .flyout-menu #deal_contacts .contextual a:after,
#wrapper .flyout-menu #contact_issues .contextual a:after {
  content: "\E14D";
  text-align: center;
  position: absolute;
  color: var(--icon-color);
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu #deal_contacts table.note_data {
  border: 0;
  padding: 0 0 0 10px;
  border-top: 1px solid var(--bg-fff);
}
#wrapper .flyout-menu #deal_contacts table.note_data td.avatar {
  padding-top: 5px;
  padding-bottom: 5px;
}
#wrapper .flyout-menu #deal_contacts table.note_data td.name {
  padding-top: 5px;
  padding-bottom: 5px;
}
#wrapper .flyout-menu #deal_contacts table.note_data td.name .contacts_header {
  margin: 0 0 5px!important;
}
#wrapper .flyout-menu #responsible_user ul li {
  margin: 0;
  padding: 0;
  position: relative;
}
#wrapper .flyout-menu #responsible_user ul li .gravatar {
  position: absolute;
  top: 50%;
  left: 10px;
  width: 16px;
  height: 16px;
  margin: -8px 0 0;
}
#wrapper .flyout-menu #responsible_user ul li a {
  padding-left: 36px;
}
#wrapper .flyout-menu #contact_issues form,
#wrapper .flyout-menu #contact_projects form {
  display: block !important;
  width: 100%;
  padding: 10px;
  background: var(--light-bg);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#wrapper .flyout-menu #contact_issues form[style*="none"],
#wrapper .flyout-menu #contact_projects form[style*="none"] {
  position: fixed;
  top: -9999999px;
  right: -9999999px;
}
#wrapper .flyout-menu #contact_issues form select,
#wrapper .flyout-menu #contact_projects form select {
  width: 100% !important;
  margin: 0 0 10px;
}
#wrapper .flyout-menu #contact_issues form input[type="date"],
#wrapper .flyout-menu #contact_projects form input[type="date"],
#wrapper .flyout-menu #contact_issues form input[type="text"],
#wrapper .flyout-menu #contact_projects form input[type="text"] {
  height: var(--icon-width);
  box-sizing: border-box;
  border: 1px solid var(--border-color-content);
  padding: 6px 12px;
  font-size: 0.85714286rem;
  line-height: 1.28571429rem;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  color: var(--button-color);
  margin: 0 0 10px;
  min-width: 190px;
  outline: 0 none;
  width: 100%;
  max-width: 100%;
  flex: 1 0 0;
  background: var(--button-bg);
  min-height: var(--icon-width);
  -webkit-appearance: none;
}
#wrapper .flyout-menu #contact_issues form input[type="submit"],
#wrapper .flyout-menu #contact_projects form input[type="submit"] {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: 0 !important;
  color: var(--button-main-color);
  display: block;
  width: 100%;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 0 10px;
  height: auto;
}
#wrapper .flyout-menu #contact_issues form input[type="submit"]:hover,
#wrapper .flyout-menu #contact_projects form input[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#wrapper .flyout-menu #contact_issues form input[type="submit"]:disabled,
#wrapper .flyout-menu #contact_projects form input[type="submit"]:disabled {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
  cursor: default;
}
#wrapper .flyout-menu #contact_issues form input[type="submit"]:disabled:hover,
#wrapper .flyout-menu #contact_projects form input[type="submit"]:disabled:hover {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
}
#wrapper .flyout-menu #contact_issues form input[type="submit"] + a,
#wrapper .flyout-menu #contact_projects form input[type="submit"] + a,
#wrapper .flyout-menu #contact_issues form input[type="submit"] + input[type="button"],
#wrapper .flyout-menu #contact_projects form input[type="submit"] + input[type="button"] {
  display: block;
  text-align: center;
  width: 100%;
  border: none;
  padding: 8px 15px;
  height: 30px;
  font-size: 1rem;
  line-height: 1rem;
  font-weight: var(--button-font-weight);
  color: var(--button-color);
  background: var(--button-bg);
  text-decoration: none;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 !important;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu #contact_issues form input[type="submit"] + a:after,
#wrapper .flyout-menu #contact_projects form input[type="submit"] + a:after,
#wrapper .flyout-menu #contact_issues form input[type="submit"] + input[type="button"]:after,
#wrapper .flyout-menu #contact_projects form input[type="submit"] + input[type="button"]:after,
#wrapper .flyout-menu #contact_issues form input[type="submit"] + a:before,
#wrapper .flyout-menu #contact_projects form input[type="submit"] + a:before,
#wrapper .flyout-menu #contact_issues form input[type="submit"] + input[type="button"]:before,
#wrapper .flyout-menu #contact_projects form input[type="submit"] + input[type="button"]:before {
  display: none;
}
#wrapper .flyout-menu #contact_issues form input[type="submit"] + a:hover,
#wrapper .flyout-menu #contact_projects form input[type="submit"] + a:hover,
#wrapper .flyout-menu #contact_issues form input[type="submit"] + input[type="button"]:hover,
#wrapper .flyout-menu #contact_projects form input[type="submit"] + input[type="button"]:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#wrapper .flyout-menu #contact_project li {
  margin: 0;
}
#wrapper .flyout-menu #attributes {
  background: var(--bg-box);
  padding: 0;
  color: var(--text-color-main);
  overflow: hidden;
}
#wrapper .flyout-menu #attributes a {
  color: var(--color-main-color);
}
#wrapper .flyout-menu #attributes > div {
  padding: 0;
}
#wrapper .flyout-menu #attributes .person {
  width: 100%;
}
#wrapper .flyout-menu #attributes .person tr {
  display: block;
}
#wrapper .flyout-menu #attributes .person tr td {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
}
#wrapper .flyout-menu #attributes .person tr td:first-child {
  padding-left: 10px;
}
#wrapper .flyout-menu #attributes .contact {
  margin: 8px 10px;
  width: 229px;
  table-layout: fixed;
}
#wrapper .flyout-menu #attributes .contact td {
  padding: 2px 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
#wrapper .flyout-menu #add_issue {
  padding: 0;
}
#wrapper .flyout-menu #add_issue #add_issue_form {
  display: block;
  width: 100%;
  margin: 0 !important;
  color: var(--text-color-main);
  padding: 10px;
  background: var(--bg-box);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 0;
}
#wrapper .flyout-menu #add_issue #add_issue_form label {
  display: block;
  font-weight: bold;
  margin: 0 0 5px;
}
#wrapper .flyout-menu #add_issue #add_issue_form .select2 ~ *,
#wrapper .flyout-menu #add_issue #add_issue_form input[type="text"] ~ *,
#wrapper .flyout-menu #add_issue #add_issue_form .jcf-select ~ *,
#wrapper .flyout-menu #add_issue #add_issue_form textarea ~ * {
  margin-left: 0 !important;
  margin-bottom: 10px !important;
}
#wrapper .flyout-menu #add_issue hr {
  display: none;
}
#wrapper .flyout-menu .recent-products .product {
  margin: 0;
  border-top: 1px solid var(--bg-fff);
}
#wrapper .flyout-menu .recent-products .product .image {
  padding: 5px;
}
#wrapper .flyout-menu .recent-products .product .data {
  padding: 5px 5px 5px 0;
}
#wrapper .flyout-menu .recent-products .order {
  border-top: 1px solid var(--bg-fff);
}
#wrapper .flyout-menu .contextual a[href*="vcf"] {
  border: none;
  display: block;
  background: none;
  padding: 0;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 5px 5px 0 0;
  padding: 0 !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  vertical-align: middle;
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu .contextual a[href*="vcf"]:after {
  content: "\E19D";
  text-align: center;
  position: absolute;
  color: var(--icon-color-bg);
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu #contact_issues table {
  table-layout: fixed;
  border-spacing: 0;
}
#wrapper .flyout-menu #contact_issues table tr {
  border-spacing: 0;
  padding: 0;
  margin: 0;
  border: 0;
}
#wrapper .flyout-menu #contact_issues table td {
  min-width: 18px;
  padding: 0;
}
#wrapper .flyout-menu #contact_issues table td:empty {
  display: none;
}
#wrapper .flyout-menu #contact_issues table td.done_checkbox {
  display: none;
}
#wrapper .flyout-menu #contact_issues table td.issue_item_subject {
  display: block;
  position: relative;
}
#wrapper .flyout-menu #contact_issues table td.issue_item_subject a {
  display: block;
  padding: 10px 30px 10px 10px;
  border-top: 1px solid var(--bg-fff);
}
#wrapper .flyout-menu #contact_issues table td.issue_item_subject img {
  position: absolute;
  top: 50%;
  right: 10px;
  margin: -7px 0 0;
}
#wrapper .flyout-menu .tags .tag-label-color {
  background: none !important;
  padding: 0;
  margin: 0;
  border: 0;
  display: block;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#wrapper .flyout-menu .tags .tag-label-color a {
  display: block;
  margin: 0;
  padding: 10px !important;
  border-top: 1px solid var(--bg-fff);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: bold;
  font-family: sans-serif;
}
#wrapper .flyout-menu #tags .tag_list .tag-label-color {
  background: none !important;
  padding: 0;
  margin: 0;
  border: 0;
  display: block;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#wrapper .flyout-menu #tags .tag_list .tag-label-color a {
  display: block;
  margin: 0;
  padding: 10px !important;
  border-top: 1px solid var(--bg-fff);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#wrapper .flyout-menu #tags .tag_list .tag-label {
  position: relative;
  display: block;
  padding: 0;
  margin: 0;
}
#wrapper .flyout-menu #tags .tag_list .tag-label a {
  display: block;
  margin: 0 !important;
  padding: 10px !important;
  border-top: 1px solid var(--bg-fff);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#wrapper .flyout-menu #tags .tag_list .tag-label .tag-count {
  margin: -8px 0 0;
}
#wrapper .flyout-menu #notes {
  padding: 0;
}
#wrapper .flyout-menu #notes table.note_data {
  border-collapse: collapse;
}
#wrapper .flyout-menu #notes table.note_data abbr,
#wrapper .flyout-menu #notes table.note_data span.field-description[title] {
  color: var(--bg-fff);
}
#wrapper .flyout-menu #notes table.note_data tr td {
  padding: 5px;
  border-top: 1px solid var(--bg-fff);
}
#wrapper .flyout-menu #notes table.note_data tr:first-child {
  border: 0;
}
#wrapper .flyout-menu #notes table.note_data td.name h4 {
  padding-right: 40px;
  position: relative;
  min-height: 30px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  color: var(--bg-fff);
  margin: 0 !important;
}
#wrapper .flyout-menu #notes table.note_data td.name h4 > * {
  margin-right: 4px;
}
#wrapper .flyout-menu #notes table.note_data td.name h4 a[href*="notes"] {
  position: absolute;
  top: 50%;
  right: 0;
  display: block !important;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  width: var(--icon-width);
  height: var(--icon-width);
  margin: -15px 0 0;
  font-size: 0;
  line-height: 0;
}
#wrapper .flyout-menu #notes table.note_data td.name h4 a[href*="notes"]:after {
  content: "\E11D";
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
  z-index: 2;
  color: var(--bg-fff) !important;
}
#wrapper .flyout-menu #notes table.note_data td.name h4 a[href*="notes"]:before {
  display: none;
}
#wrapper .flyout-menu .questions-tags {
  padding: 0;
  margin: 0;
  list-style: none;
}
#wrapper .flyout-menu .questions-tags li {
  display: flex;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  position: relative;
}
#wrapper .flyout-menu .questions-tags li a {
  border: none;
  display: block;
  padding-right: 50px !important;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#wrapper .flyout-menu .questions-tags li .count {
  position: absolute;
  top: 50%;
  right: 10px;
  font-size: 0.7857rem;
  line-height: 0.85714286rem;
  padding: 2px 5px;
  margin: -10px 0 0;
  background: var(--color-main-color-text);
  color: var(--color-main-color);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
#wrapper .flyout-menu #tags {
  margin: 0;
  padding: 0;
}
#wrapper .flyout-menu .tag_list {
  padding: 0;
  margin: 0;
  list-style: none;
  display: block;
  font-size: 0;
  line-height: 0;
}
#wrapper .flyout-menu .tag_list .tag-label-color {
  padding: 0;
}
#wrapper .flyout-menu .tag_list .tag-label-color a {
  margin: 0;
}
#wrapper .flyout-menu .tag_list a {
  font-size: 0.7142rem;
  line-height: 0.7142rem;
  border: none;
  display: inline-block;
  padding: 5px 10px;
  margin: 0 10px 5px 0;
  width: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
#wrapper .flyout-menu .tag_list .tag-count {
  position: absolute;
  top: 50%;
  right: 10px;
  font-size: 0.7857rem;
  line-height: 0.85714286rem;
  padding: 2px 5px;
  margin: -10px 0 0;
  background: var(--color-main-color-text);
  color: var(--color-main-color);
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
#wrapper .flyout-menu .question-meta {
  display: block;
}
#wrapper .flyout-menu .question-meta li.icon:not(.tags) {
  padding: 10px !important;
  display: block;
  line-height: 1rem;
  border-top: 1px solid var(--bg-fff);
  min-height: auto;
}
#wrapper .flyout-menu .question-meta li.icon:not(.tags):after {
  display: none;
}
#wrapper .flyout-menu .question-meta li.icon:not(.tags):first-child {
  border: none;
}
#wrapper .flyout-menu .question-meta .tags {
  font-size: 0;
  line-height: 0;
  border-top: 1px solid var(--bg-fff);
  position: relative;
}
#wrapper .flyout-menu .question-meta .tags a {
  font-size: 1rem;
  line-height: 1.4;
}
#wrapper .flyout-menu .question-meta .tags a:first-child {
  border-top: 0;
}
#wrapper .flyout-menu #recently_viewed {
  padding: 0;
}
#wrapper .flyout-menu #recently_viewed .note_data {
  border-collapse: collapse;
  width: 100%;
  border-top: 1px solid var(--bg-fff);
}
#wrapper .flyout-menu #recently_viewed .note_data:first-child {
  border: 0;
}
#wrapper .flyout-menu #recently_viewed .note_data tr td {
  padding: 5px;
}
#wrapper .flyout-menu #recently_viewed .note_data .name h4 {
  margin: 0 0 5px;
}
#wrapper .flyout-menu #recently_viewed .note_data .name h4 a {
  display: block;
  width: 100%;
  padding: 5px 0;
}
#wrapper .flyout-menu #import_link a {
  padding: 10px;
  display: block;
}
#wrapper .flyout-menu div.contact {
  color: var(--text-color-main);
}
#wrapper .flyout-menu div.contact a {
  color: var(--color-main-color);
}
#wrapper .flyout-menu div.contact .tag_list {
  color: var(--flyout_menu_color);
}
#wrapper .flyout-menu div.contact .tag_list a {
  color: var(--flyout_menu_color);
}
#wrapper .flyout-menu .icon-del {
  position: relative;
  display: inline-block;
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  padding: 0;
  margin: 0;
  opacity: 1;
  color: var(--bg-fff);
}
#wrapper .flyout-menu .icon-del:before {
  background: none !important;
  padding: 0;
  color: var(--bg-fff);
  content: "\E104";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#wrapper .flyout-menu #customer_profile {
  background: var(--light-bg);
  color: var(--text-color-main);
}
#wrapper .flyout-menu #customer_profile .contextual a {
  border: none;
  display: block;
  background: none;
  padding: 0;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 5px 5px 0 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--flyout_menu_color);
  vertical-align: middle;
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu #customer_profile .contextual a:after {
  content: "\E14D";
  text-align: center;
  position: absolute;
  color: var(--flyout_menu_color);
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu #customer_profile form#ticket_data_form {
  border: 0;
  margin: 0;
  padding: 10px;
  background: var(--bg-box);
}
#wrapper .flyout-menu #customer_profile form#ticket_data_form .contextual {
  overflow: hidden;
  width: 100%;
  margin: 0;
}
#wrapper .flyout-menu #customer_profile form#ticket_data_form .contextual a {
  float: right;
  color: var(--icon-color-bg);
}
#wrapper .flyout-menu #customer_profile form#ticket_data_form .contextual a:after {
  display: none;
}
#wrapper .flyout-menu #customer_profile form#ticket_data_form label {
  display: block;
  width: 100%;
  margin: 10px 0 5px;
}
#wrapper .flyout-menu #customer_profile form#ticket_data_form br {
  display: none;
}
#wrapper .flyout-menu #customer_profile form#ticket_data_form select,
#wrapper .flyout-menu #customer_profile form#ticket_data_form .jcf-select {
  width: 100%;
  margin: 0 0 10px;
}
#wrapper .flyout-menu #customer_profile input[type="text"] {
  height: 30px;
  box-sizing: border-box;
  border: 1px solid var(--border-color-content);
  padding: 6px 12px;
  font-size: 0.85714286rem;
  line-height: 1.28571429rem;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  color: var(--text-color-main);
  margin: 0;
  outline: 0 none;
  width: 100%;
  max-width: 100%;
  background: var(--bg-fff);
  min-height: 30px;
  -webkit-appearance: none;
}
#wrapper .flyout-menu #customer_profile input[type="text"] ~ input[type="text"] {
  margin: 10px 0 0 !important;
}
#wrapper .flyout-menu #customer_profile input[type="submit"] {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: 0 !important;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 10px 0 0;
  width: 100%;
  height: auto;
}
#wrapper .flyout-menu #customer_profile input[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#wrapper .flyout-menu #customer_profile input[type="submit"]:disabled {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
  cursor: default;
}
#wrapper .flyout-menu #customer_profile input[type="submit"]:disabled:hover {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
}
#wrapper .flyout-menu #customer_profile input[type="submit"] + a,
#wrapper .flyout-menu #customer_profile input[type="submit"] + input[type="button"] {
  text-align: center;
  display: inline-block;
  border: none;
  padding: 8px 15px;
  width: 100%;
  margin: 10px 0 0;
  height: 30px;
  font-size: 1rem;
  line-height: 1rem;
  font-weight: var(--button-font-weight);
  color: var(--button-color);
  background: var(--button-bg);
  text-decoration: none;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu #customer_profile input[type="submit"] + a:hover,
#wrapper .flyout-menu #customer_profile input[type="submit"] + input[type="button"]:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#wrapper .flyout-menu #customer_profile #helpdesk_ticket_from_address_add_link {
  margin: 0 0 0 8px !important;
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg) !important;
  vertical-align: middle;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu #customer_profile #helpdesk_ticket_from_address_add_link:after {
  color: var(--icon-color-bg) !important;
  content: "\E14D";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu #customer_profile #helpdesk_ticket_from_address_add_link:before {
  background: var(--icon_bg-bg);
}
#wrapper .flyout-menu #customer_profile #helpdesk_ticket_from_address_add_link:hover {
  color: var(--icon-color-hover-bg);
}
#wrapper .flyout-menu #customer_profile #helpdesk_ticket_from_address_add_link:hover:before {
  background: var(--icon_bg_hover-bg);
}
#wrapper .flyout-menu #customer_profile #helpdesk_ticket_from_address_add_link.selected {
  color: var(--icon_color_active-bg);
}
#wrapper .flyout-menu #customer_profile #helpdesk_ticket_from_address_add_link.selected:before {
  background: var(--icon_bg_active-bg);
}
#wrapper .flyout-menu #customer_profile #helpdesk_ticket_from_address_add_link.disabled {
  opacity: 0.3;
}
#wrapper .flyout-menu #customer_profile #helpdesk_ticket_from_address_add_link.disabled:hover {
  color: var(--icon-color-disabled);
}
#wrapper .flyout-menu #customer_profile #helpdesk_ticket_from_address_add_link.disabled:hover:before {
  background: var(--icon_bg-disabled);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
}
#wrapper .flyout-menu #customer_profile #helpdesk_ticket_from_address_add_link img {
  display: none;
}
#wrapper .flyout-menu #customer_previous_issues {
  background: var(--color-main-color);
  color: var(--color-main-color-text);
}
#wrapper .flyout-menu #customer_previous_issues ul {
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}
#wrapper .flyout-menu #customer_previous_issues ul span:empty {
  display: none;
}
#wrapper .flyout-menu #customer_previous_issues ul li {
  margin: 0;
  padding: 0 10px;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#wrapper .flyout-menu #customer_previous_issues ul li .ticket-meta {
  color: var(--color-main-color-text);
  margin: 5px 0;
}
#wrapper .flyout-menu #customer_previous_issues .ticket-title a {
  border-top: 1px solid var(--bg-fff);
  border-bottom: 1px solid var(--bg-fff);
  width: calc(100% + 20px);
  margin: 0 0 5px -10px;
}
#wrapper .flyout-menu #issue_contacts {
  background: var(--color-main-color);
  color: var(--color-main-color-text);
  position: relative;
}
#wrapper .flyout-menu #issue_contacts .contextual {
  position: absolute;
  top: 0;
  right: 0;
}
#wrapper .flyout-menu #issue_contacts .contextual a {
  border: none;
  display: block;
  background: none;
  padding: 0;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 5px 5px 0 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  vertical-align: middle;
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu #issue_contacts .contextual a:after {
  content: "\E14D";
  text-align: center;
  position: absolute;
  color: var(--icon-color-bg);
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu #issue_contacts ul li {
  margin: 0;
  padding: 0 35px 5px 10px;
  border-top: 1px solid var(--bg-fff);
  overflow: hidden;
  position: relative;
}
#wrapper .flyout-menu #issue_contacts ul li:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  right: 35px;
  width: 1px;
  height: 100%;
  background: var(--bg-fff);
}
#wrapper .flyout-menu #issue_contacts ul li:first-child {
  border: 0;
}
#wrapper .flyout-menu #issue_contacts ul a {
  border: 0;
}
#wrapper .flyout-menu #issue_contacts .icon-del {
  position: absolute;
  top: 50%;
  right: 5px;
  margin: -13px 0 0;
}
#wrapper .flyout-menu #issue_contacts span.contact {
  display: flex;
  flex-wrap: wrap;
  width: calc(100% + 10px);
  border-bottom: 1px solid var(--bg-fff);
  margin: 0 0 5px -10px;
}
#wrapper .flyout-menu #issue_contacts span.contact a:first-child {
  padding-left: 10px;
  padding-right: 0;
}
#wrapper .flyout-menu #issue_contacts span.contact a:last-child {
  flex: 1 0 auto;
}
#wrapper .flyout-menu #links a,
#wrapper .flyout-menu #charts a {
  padding: 10px;
  font-weight: 600;
  height: auto;
  line-height: inherit;
  color: var(--bg-fff);
  border-top: 1px solid var(--bg-fff);
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#wrapper .flyout-menu #next_holidays td {
  padding: 5px 10px;
  border-top: 1px solid var(--bg-fff);
}
/* END MENU FOR MOBILE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START REPORT */
.controller-reports #main #content > a[href*="report"]:not(.icon-only) {
  text-decoration: none;
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: 0 !important;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 10px 0 0;
  height: auto;
  text-align: center;
  width: auto;
}
.controller-reports #main #content > a[href*="report"]:not(.icon-only):hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#content .issue-report-graph {
  min-width: 600px;
  overflow-x: auto;
  width: 100%;
}
/* START REPORT */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MRDIA */
@media screen and (max-width: 1250px) {
  #invoice_form fieldset.attributes {
    overflow-x: auto !important;
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  .controller-versions.action-index #main > #content h3:before {
    display: none;
  }
  .controller-notes #main > #content .contextual .icon {
    color: var(--icon-color);
  }
  .controller-notes #main > #content .contextual .icon:before {
    display: none;
  }
  .controller-notes #main > #content .contextual {
    right: 10px;
  }
  .controller-people.action-show.loggedas #wrapper,
  .controller-questions.action-show.loggedas #wrapper,
  .controller-orders.action-show.loggedas #wrapper,
  .controller-products.action-show.loggedas #wrapper,
  .controller-operations.action-show.loggedas #wrapper,
  .controller-deals.action-show.loggedas #wrapper,
  .controller-contacts.action-show.loggedas #wrapper,
  .controller-invoices.action-show.loggedas #wrapper {
    padding-bottom: 48px;
  }
  .controller-people.action-show.loggedas #wrapper3,
  .controller-questions.action-show.loggedas #wrapper3,
  .controller-orders.action-show.loggedas #wrapper3,
  .controller-products.action-show.loggedas #wrapper3,
  .controller-operations.action-show.loggedas #wrapper3,
  .controller-deals.action-show.loggedas #wrapper3,
  .controller-contacts.action-show.loggedas #wrapper3,
  .controller-invoices.action-show.loggedas #wrapper3 {
    margin: 0;
  }
  .controller-people.action-show.loggedas #main #content,
  .controller-questions.action-show.loggedas #main #content,
  .controller-orders.action-show.loggedas #main #content,
  .controller-products.action-show.loggedas #main #content,
  .controller-operations.action-show.loggedas #main #content,
  .controller-deals.action-show.loggedas #main #content,
  .controller-contacts.action-show.loggedas #main #content,
  .controller-invoices.action-show.loggedas #main #content {
    padding-bottom: 0;
  }
  .controller-people.action-show.loggedas #main #content > .contextual,
  .controller-questions.action-show.loggedas #main #content > .contextual,
  .controller-orders.action-show.loggedas #main #content > .contextual,
  .controller-products.action-show.loggedas #main #content > .contextual,
  .controller-operations.action-show.loggedas #main #content > .contextual,
  .controller-deals.action-show.loggedas #main #content > .contextual,
  .controller-contacts.action-show.loggedas #main #content > .contextual,
  .controller-invoices.action-show.loggedas #main #content > .contextual {
    position: fixed;
    top: auto;
    margin: 0 !important;
    bottom: 0;
    right: auto;
    left: 0;
    width: 100%;
    background: var(--bg-box);
    height: 50px;
    border-top: 1px solid var(--border-color);
    flex-direction: row;
    align-items: center;
    justify-content: center;
    -webkit-transition: left var(--time-main) ease-in-out;
    -moz-transition: left var(--time-main) ease-in-out;
    -ms-transition: left var(--time-main) ease-in-out;
    -o-transition: left var(--time-main) ease-in-out;
    transition: left var(--time-main) ease-in-out;
  }
  .controller-people.action-show.loggedas #main #content > .contextual .icon,
  .controller-questions.action-show.loggedas #main #content > .contextual .icon,
  .controller-orders.action-show.loggedas #main #content > .contextual .icon,
  .controller-products.action-show.loggedas #main #content > .contextual .icon,
  .controller-operations.action-show.loggedas #main #content > .contextual .icon,
  .controller-deals.action-show.loggedas #main #content > .contextual .icon,
  .controller-contacts.action-show.loggedas #main #content > .contextual .icon,
  .controller-invoices.action-show.loggedas #main #content > .contextual .icon {
    color: var(--icon-color);
    margin: 0 5px;
  }
  .controller-people.action-show.loggedas #main #content > .contextual .icon:before,
  .controller-questions.action-show.loggedas #main #content > .contextual .icon:before,
  .controller-orders.action-show.loggedas #main #content > .contextual .icon:before,
  .controller-products.action-show.loggedas #main #content > .contextual .icon:before,
  .controller-operations.action-show.loggedas #main #content > .contextual .icon:before,
  .controller-deals.action-show.loggedas #main #content > .contextual .icon:before,
  .controller-contacts.action-show.loggedas #main #content > .contextual .icon:before,
  .controller-invoices.action-show.loggedas #main #content > .contextual .icon:before {
    background: var(--icon_bg);
  }
  .controller-people.action-show.loggedas #main #content > .contextual .icon:hover,
  .controller-questions.action-show.loggedas #main #content > .contextual .icon:hover,
  .controller-orders.action-show.loggedas #main #content > .contextual .icon:hover,
  .controller-products.action-show.loggedas #main #content > .contextual .icon:hover,
  .controller-operations.action-show.loggedas #main #content > .contextual .icon:hover,
  .controller-deals.action-show.loggedas #main #content > .contextual .icon:hover,
  .controller-contacts.action-show.loggedas #main #content > .contextual .icon:hover,
  .controller-invoices.action-show.loggedas #main #content > .contextual .icon:hover {
    color: var(--icon-color-hover);
  }
  .controller-people.action-show.loggedas #main #content > .contextual .icon:hover:before,
  .controller-questions.action-show.loggedas #main #content > .contextual .icon:hover:before,
  .controller-orders.action-show.loggedas #main #content > .contextual .icon:hover:before,
  .controller-products.action-show.loggedas #main #content > .contextual .icon:hover:before,
  .controller-operations.action-show.loggedas #main #content > .contextual .icon:hover:before,
  .controller-deals.action-show.loggedas #main #content > .contextual .icon:hover:before,
  .controller-contacts.action-show.loggedas #main #content > .contextual .icon:hover:before,
  .controller-invoices.action-show.loggedas #main #content > .contextual .icon:hover:before {
    background: var(--icon_bg_hover);
  }
  .controller-people.action-show.loggedas #main #content > .contextual .icon.new-icon-save,
  .controller-questions.action-show.loggedas #main #content > .contextual .icon.new-icon-save,
  .controller-orders.action-show.loggedas #main #content > .contextual .icon.new-icon-save,
  .controller-products.action-show.loggedas #main #content > .contextual .icon.new-icon-save,
  .controller-operations.action-show.loggedas #main #content > .contextual .icon.new-icon-save,
  .controller-deals.action-show.loggedas #main #content > .contextual .icon.new-icon-save,
  .controller-contacts.action-show.loggedas #main #content > .contextual .icon.new-icon-save,
  .controller-invoices.action-show.loggedas #main #content > .contextual .icon.new-icon-save {
    color: var(--icon-save-color);
    background: var(--icon-save-bg);
    -webkit-border-radius: var(--icon-border-radius);
    -moz-border-radius: var(--icon-border-radius);
    border-radius: var(--icon-border-radius);
  }
  .controller-people.action-show.loggedas #main #content > .contextual .icon.new-icon-save:hover,
  .controller-questions.action-show.loggedas #main #content > .contextual .icon.new-icon-save:hover,
  .controller-orders.action-show.loggedas #main #content > .contextual .icon.new-icon-save:hover,
  .controller-products.action-show.loggedas #main #content > .contextual .icon.new-icon-save:hover,
  .controller-operations.action-show.loggedas #main #content > .contextual .icon.new-icon-save:hover,
  .controller-deals.action-show.loggedas #main #content > .contextual .icon.new-icon-save:hover,
  .controller-contacts.action-show.loggedas #main #content > .contextual .icon.new-icon-save:hover,
  .controller-invoices.action-show.loggedas #main #content > .contextual .icon.new-icon-save:hover {
    color: var(--icon-save-color-hover);
    background: var(--icon-save-bg-hover);
  }
  .controller-people.action-show.loggedas #main #content > .contextual .icon.new-icon-close,
  .controller-questions.action-show.loggedas #main #content > .contextual .icon.new-icon-close,
  .controller-orders.action-show.loggedas #main #content > .contextual .icon.new-icon-close,
  .controller-products.action-show.loggedas #main #content > .contextual .icon.new-icon-close,
  .controller-operations.action-show.loggedas #main #content > .contextual .icon.new-icon-close,
  .controller-deals.action-show.loggedas #main #content > .contextual .icon.new-icon-close,
  .controller-contacts.action-show.loggedas #main #content > .contextual .icon.new-icon-close,
  .controller-invoices.action-show.loggedas #main #content > .contextual .icon.new-icon-close {
    color: var(--icon-close-color);
    background: var(--icon-close-bg);
    -webkit-border-radius: var(--icon-border-radius);
    -moz-border-radius: var(--icon-border-radius);
    border-radius: var(--icon-border-radius);
  }
  .controller-people.action-show.loggedas #main #content > .contextual .icon.new-icon-close:hover,
  .controller-questions.action-show.loggedas #main #content > .contextual .icon.new-icon-close:hover,
  .controller-orders.action-show.loggedas #main #content > .contextual .icon.new-icon-close:hover,
  .controller-products.action-show.loggedas #main #content > .contextual .icon.new-icon-close:hover,
  .controller-operations.action-show.loggedas #main #content > .contextual .icon.new-icon-close:hover,
  .controller-deals.action-show.loggedas #main #content > .contextual .icon.new-icon-close:hover,
  .controller-contacts.action-show.loggedas #main #content > .contextual .icon.new-icon-close:hover,
  .controller-invoices.action-show.loggedas #main #content > .contextual .icon.new-icon-close:hover {
    color: var(--icon-close-color-hover);
    background: var(--icon-close-bg-hover);
  }
  .controller-people.action-show.loggedas #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .controller-questions.action-show.loggedas #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .controller-orders.action-show.loggedas #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .controller-products.action-show.loggedas #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .controller-operations.action-show.loggedas #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .controller-deals.action-show.loggedas #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .controller-contacts.action-show.loggedas #main #content > .contextual.hidden-link .icon:not(.new-icon),
  .controller-invoices.action-show.loggedas #main #content > .contextual.hidden-link .icon:not(.new-icon) {
    display: none;
  }
  .controller-people.action-show.loggedas #main #content > .contextual .drdn .drdn-trigger,
  .controller-questions.action-show.loggedas #main #content > .contextual .drdn .drdn-trigger,
  .controller-orders.action-show.loggedas #main #content > .contextual .drdn .drdn-trigger,
  .controller-products.action-show.loggedas #main #content > .contextual .drdn .drdn-trigger,
  .controller-operations.action-show.loggedas #main #content > .contextual .drdn .drdn-trigger,
  .controller-deals.action-show.loggedas #main #content > .contextual .drdn .drdn-trigger,
  .controller-contacts.action-show.loggedas #main #content > .contextual .drdn .drdn-trigger,
  .controller-invoices.action-show.loggedas #main #content > .contextual .drdn .drdn-trigger {
    display: none;
  }
  .controller-people.action-show.loggedas #main #content > .contextual .drdn .drdn-content,
  .controller-questions.action-show.loggedas #main #content > .contextual .drdn .drdn-content,
  .controller-orders.action-show.loggedas #main #content > .contextual .drdn .drdn-content,
  .controller-products.action-show.loggedas #main #content > .contextual .drdn .drdn-content,
  .controller-operations.action-show.loggedas #main #content > .contextual .drdn .drdn-content,
  .controller-deals.action-show.loggedas #main #content > .contextual .drdn .drdn-content,
  .controller-contacts.action-show.loggedas #main #content > .contextual .drdn .drdn-content,
  .controller-invoices.action-show.loggedas #main #content > .contextual .drdn .drdn-content {
    position: static;
    border: 0;
    padding: 0;
    background: none;
    display: block;
  }
  .controller-people.action-show.loggedas #main #content > .contextual .drdn .drdn-content .drdn-items,
  .controller-questions.action-show.loggedas #main #content > .contextual .drdn .drdn-content .drdn-items,
  .controller-orders.action-show.loggedas #main #content > .contextual .drdn .drdn-content .drdn-items,
  .controller-products.action-show.loggedas #main #content > .contextual .drdn .drdn-content .drdn-items,
  .controller-operations.action-show.loggedas #main #content > .contextual .drdn .drdn-content .drdn-items,
  .controller-deals.action-show.loggedas #main #content > .contextual .drdn .drdn-content .drdn-items,
  .controller-contacts.action-show.loggedas #main #content > .contextual .drdn .drdn-content .drdn-items,
  .controller-invoices.action-show.loggedas #main #content > .contextual .drdn .drdn-content .drdn-items {
    padding: 0;
  }
  .controller-people.action-show.loggedas.flyout-is-active #main #content > .contextual,
  .controller-questions.action-show.loggedas.flyout-is-active #main #content > .contextual,
  .controller-orders.action-show.loggedas.flyout-is-active #main #content > .contextual,
  .controller-products.action-show.loggedas.flyout-is-active #main #content > .contextual,
  .controller-operations.action-show.loggedas.flyout-is-active #main #content > .contextual,
  .controller-deals.action-show.loggedas.flyout-is-active #main #content > .contextual,
  .controller-contacts.action-show.loggedas.flyout-is-active #main #content > .contextual,
  .controller-invoices.action-show.loggedas.flyout-is-active #main #content > .contextual {
    left: -250px;
  }
  .flyout-is-active .controller-people.action-show #main #content > .contextual,
  .flyout-is-active .controller-questions.action-show #main #content > .contextual,
  .flyout-is-active .controller-orders.action-show #main #content > .contextual,
  .flyout-is-active .controller-products.action-show #main #content > .contextual,
  .flyout-is-active .controller-operations.action-show #main #content > .contextual,
  .flyout-is-active .controller-deals.action-show #main #content > .contextual,
  .flyout-is-active .controller-contacts.action-show #main #content > .contextual,
  .flyout-is-active .controller-invoices.action-show #main #content > .contextual {
    left: -250px;
  }
  .flyout-is-active .controller-questions.action-show .top-questions .right-questions {
    left: -250px;
  }
  .controller-questions.action-show .top-questions .right-questions {
    position: fixed;
    top: auto;
    margin: 0 !important;
    bottom: 0;
    left: 0;
    width: 100% !important;
    background: var(--bg-box);
    height: 50px;
    border-top: 1px solid var(--border-color);
    -webkit-transition: left var(--time-main) ease-in-out;
    -moz-transition: left var(--time-main) ease-in-out;
    -ms-transition: left var(--time-main) ease-in-out;
    -o-transition: left var(--time-main) ease-in-out;
    transition: left var(--time-main) ease-in-out;
  }
  .controller-questions.action-show .top-questions .right-questions .contextual {
    padding: 0;
    margin: 0 !important;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    float: none;
  }
  .controller-questions.action-show .top-questions .right-questions .contextual .icon {
    color: var(--icon-color);
    margin: 0 5px !important;
  }
  .controller-questions.action-show .top-questions .right-questions .contextual .icon:before {
    background: var(--icon_bg);
  }
  .controller-questions.action-show .top-questions .right-questions .contextual .drdn .drdn-trigger {
    display: none;
  }
  .controller-questions.action-show .top-questions .right-questions .contextual .drdn .drdn-content {
    position: static;
    border: 0;
    padding: 0;
    background: none;
    display: block;
  }
  .controller-questions.action-show .top-questions .right-questions .contextual .drdn .drdn-content .drdn-items {
    padding: 0;
  }
  #invoice_payment_form fieldset,
  #operation_form fieldset,
  #product_form fieldset,
  .edit_operation fieldset,
  #expense_form fieldset,
  #add_note_form fieldset,
  #invoice_form fieldset,
  #order_form fieldset {
    padding: 37px 10px 15px;
  }
  #invoice_payment_form fieldset legend,
  #operation_form fieldset legend,
  #product_form fieldset legend,
  .edit_operation fieldset legend,
  #expense_form fieldset legend,
  #add_note_form fieldset legend,
  #invoice_form fieldset legend,
  #order_form fieldset legend {
    top: 14px;
    left: 10px;
  }
  .controller-notes .edit_note fieldset {
    padding: 37px 10px 20px;
  }
  .controller-notes .edit_note fieldset legend {
    top: 10px;
    left: 10px;
  }
  .controller-notes .edit_note fieldset legend + p {
    margin: 0;
  }
  #query_form p[style="float:right;"] a {
    color: var(--icon-color);
    margin: 0 0 0 5px;
  }
  #query_form p[style="float:right;"] a:before {
    display: none;
  }
  .avatar a[data-method="delete"] {
    margin-left: 10px !important;
  }
  .avatar a[data-method="delete"]:before {
    display: none;
  }
  #main a[href*="questions_sections/new"]:after {
    color: var(--icon-color);
  }
  #main #contact_list.deal_list .list.sales-funnel .total th:first-child,
  #main #contact_list.deal_list .list.sales-funnel .total th:last-child {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #main #contact_list.deal_list .list.deal-board th {
    font-size: 1.1428rem;
    line-height: 1.1428rem;
  }
  .modal #new_contact p:not(.buttons) {
    padding-left: 0;
  }
  .modal #new_contact p:not(.buttons) label {
    margin: 0 0 5px;
  }
}
@media screen and (max-width: 650px) {
  table.subject_header td.avatar {
    width: 50px;
  }
  #contact_list .contact.card #avatar {
    width: 40px;
    height: 40px;
    margin: 0 auto;
  }
  #contact_list .contact.card #avatar img {
    width: 40px;
    height: 40px;
  }
  #account_form fieldset {
    width: calc(100% + 20px);
    margin-left: -10px;
    margin-right: -10px;
    padding: 15px 10px;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #account_form fieldset legend {
    position: relative;
    top: 0;
    left: 0;
    padding: 10px;
    display: block;
    background: inherit;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    height: auto;
  }
  #tab-content-invoices .tabular fieldset {
    padding-top: 15px !important;
  }
  .controller-reports #content > a[href*="report"]:not(.icon-only) {
    width: 100%;
  }
  #checklist-menu {
    display: none !important;
  }
  #tab-content-deals a[href*='deal_categories/new'] {
    margin-right: 0 ;
    width: 100%;
    text-align: center;
  }
  #invoice_payment_form fieldset,
  #operation_form fieldset,
  #product_form fieldset,
  .edit_operation fieldset,
  #expense_form fieldset,
  #add_note_form fieldset,
  #invoice_form fieldset,
  #order_form fieldset {
    margin: 20px -10px 0;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  .modal .jstTabs.tabs li {
    height: auto;
    white-space: pre-wrap;
  }
  .modal #new_contact p#show_details_link {
    padding: 0;
  }
  .modal #new_contact p#show_details_link a {
    display: block;
    text-align: center;
    width: 100%;
  }
  .modal #new_contact p label {
    margin-left: 0;
    font-variant: normal;
    width: 100%;
  }
  #new-operation-invoice-form p input[type="submit"],
  #new-relation-form p input[type="submit"] {
    margin: 10px 0 0 !important;
  }
  .controller-notes .note_data_header {
    margin: 0 0 10px;
    padding: 0;
  }
  .controller-notes .note_data_header .note_title {
    padding: 0;
    font-size: 1.1428rem;
    line-height: 1.1428rem;
  }
  .controller-notes #main > #content .box {
    margin-bottom: 20px;
  }
  .controller-notes .edit_note fieldset {
    margin: 0 -10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  .controller-notes .edit_note fieldset p {
    margin: 0;
  }
  .controller-notes .edit_note table tbody {
    display: block;
    width: 100%;
  }
  .controller-notes .edit_note table tr {
    display: block;
    width: 100%;
  }
  .controller-notes .edit_note table tr td {
    display: flex;
    flex-wrap: wrap;
    flex-flow: column;
    width: 100%;
    padding: 0;
  }
  .controller-notes .edit_note table tr td br {
    display: none;
  }
  .controller-notes .edit_note table tr td > * {
    width: 100%;
    flex: 1 0 auto;
  }
  .controller-notes .edit_note label {
    margin: 0 !important;
  }
  .controller-notes .edit_note .jcf-select {
    margin: 0 0 10px;
  }
  .controller-notes .edit_note input[type="date"] {
    width: 100%;
    flex: 1 0 auto;
    margin: 0 0 10px;
  }
  .controller-notes #content form input[type="date"] {
    width: 100%;
    margin: 0 0 10px !important;
  }
  #query_form .holder-buttons-filter {
    width: calc(100vw - 20px);
    max-width: calc(100vw - 20px);
    flex-wrap: wrap;
  }
  #query_form .holder-buttons-filter .buttons {
    flex-wrap: wrap;
    width: 100%;
  }
  #query_form .holder-buttons-filter label {
    width: 100%;
    flex: 1 0 auto;
    margin: 0 0 5px !important;
  }
  #query_form .holder-buttons-filter .jcf-select {
    width: 100%;
    flex: 1 0 auto;
    margin: 0 0 10px !important;
  }
  .controller-notes #main > #content .attachments {
    padding-top: 40px !important;
    position: relative;
  }
  .controller-notes #main > #content .attachments .contextual {
    position: absolute;
    top: 0 !important;
    right: 0;
    margin: 0 !important;
  }
  .controller-notes #main > #content .attachments table {
    display: block;
    width: 100%;
    overflow: hidden;
  }
  .controller-notes #main > #content .attachments table tr {
    display: block;
    width: 100%;
    overflow: hidden;
  }
  .controller-notes #main > #content .attachments table tr td {
    display: block;
    width: 100%;
    overflow: hidden;
  }
  .controller-notes #main > #content .attachments table tr td:after {
    content: '';
    display: block;
    clear: both;
  }
  .controller-notes #main > #content .attachments table tr td:last-child {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid var(--border-color);
  }
  .controller-notes #main > #content .attachments table tr:last-child td {
    padding: 0;
    margin: 0;
    border-bottom: 0;
  }
  .controller-notes.action-edit #main .attachments {
    padding: 0;
  }
  .controller-notes.action-edit #main .attachments .icon-only:before {
    background: var(--icon_bg-bg) !important;
  }
  #query_form .holder-buttons-filter .buttons.hide-when-print {
    margin: 0 !important;
  }
  #query_form .holder-buttons-filter .buttons.hide-when-print a {
    margin: 0 5px 0 0 !important;
  }
  #order_form fieldset table.product-lines tr.line.fields td.item {
    min-width: 150px;
  }
  #main a[href*="questions_sections/new"] {
    order: 1;
    position: absolute;
    top: 0;
    right: 0;
  }
  #tab-content-helpdesk_template #helpdesk_template {
    padding: 0 !important;
  }
  #tab-content-helpdesk_template #helpdesk_template .box {
    padding: 15px 10px 15px !important;
  }
  #tab-content-helpdesk_template #helpdesk_template .box legend {
    left: 10px;
    top: 10px;
  }
  #content fieldset#invoice_template_content legend {
    position: relative;
  }
}
/* --------------------- https://redmine-evolution.com/ -- */
.has-assignable-user #wrapper3 {
  padding-left: 40px;
}
.has-assignable-user #main .redmineEvolution-agile-users {
  position: fixed;
  top: 0;
  left: 0;
}
.has-assignable-user.open-sidebar #sidebar .project-members {
  left: 320px;
}
@media screen and (max-width: 1024px) {
  .has-assignable-user #wrapper3 {
    padding-left: 0;
  }
}
.no-animate #sidebar .project-members {
  -webkit-transition: right var(--time-hover-null) ease-in-out;
  -moz-transition: right var(--time-hover-null) ease-in-out;
  -ms-transition: right var(--time-hover-null) ease-in-out;
  -o-transition: right var(--time-hover-null) ease-in-out;
  transition: right var(--time-hover-null) ease-in-out;
}
#sidebar .project-members {
  position: fixed;
  bottom: 0;
  left: 96px;
  height: calc(100% - 41px);
  background: var(--bg);
  padding: 10px 0;
  width: 40px;
  display: flex;
  flex-flow: column;
  margin: 0 !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  justify-content: center;
  border-right: 1px solid var(--border-color);
  -webkit-transition: left var(--time-main) ease-in-out;
  -moz-transition: left var(--time-main) ease-in-out;
  -ms-transition: left var(--time-main) ease-in-out;
  -o-transition: left var(--time-main) ease-in-out;
  transition: left var(--time-main) ease-in-out;
}
#sidebar .project-members h3 {
  display: none;
}
#sidebar .project-members .assignable-user {
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  margin: 3px auto;
  position: relative;
  min-height: var(--icon-width-small);
  cursor: pointer;
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  color: var(--icon-color);
}
#sidebar .project-members .assignable-user:after {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
}
#sidebar .project-members .assignable-user:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#sidebar .project-members .assignable-user:hover {
  color: var(--icon-color-hover);
}
#sidebar .project-members .assignable-user:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#sidebar .project-members .assignable-user .user {
  display: block;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: var(--icon-smaller-width) !important;
  height: var(--icon-smaller-width) !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 0;
  line-height: 0;
  text-indent: -999999px;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
}
#sidebar .project-members .assignable-user.empty-user-up {
  padding-left: 37px;
}
#sidebar .project-members .assignable-user.empty-user-up:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 10px;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  background: url("../images/icon-color/person.png") 50% 50%;
  background-size: var(--icon-width-small) var(--icon-width-small);
  z-index: 1;
  width: var(--icon-width-small);
  height: var(--icon-width-small);
}
#sidebar .project-members .assignable-user .gravatar {
  display: block;
  width: 20px;
  height: 20px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
}
#sidebar .project-members .assignable-user:not(.draggable-active) a {
  width: 0;
  height: 0;
  overflow: hidden;
}
#content #settings form[action*="/redmine_crm/settings/money"] .box {
  margin-bottom: 20px;
}
body .tabular label.error {
  color: var(--red_border_error);
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START HELP & SUPPORT PAGES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ADD QUESTION */
#wrapper .question {
  position: relative;
}
#wrapper .question .wiki-anchor {
  opacity: 1;
}
#wrapper .question .wiki-anchor:after {
  content: "\E152";
}
#wrapper .question .wiki-anchor:before {
  background: var(--bg-box);
  z-index: 1;
}
#wrapper .question > .wiki-anchor {
  position: absolute;
  top: 125px;
  left: 0;
  color: var(--icon-color-bg);
}
#wrapper .question > .wiki-anchor:before {
  background: var(--icon_bg-bg);
}
#wrapper .question:hover {
  opacity: 1;
}
#wrapper #question_form .attachments_form {
  margin-top: 7px;
}
#wrapper #question_form a[href*="questions_sections/new"] {
  position: relative !important;
}
#wrapper #question_form p {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 0;
  color: var(--color-main-color);
  position: relative;
}
#wrapper #question_form p br {
  margin: 0 0 10px;
}
#wrapper #question_form p .question-tags-edit {
  margin: 10px 0 0;
}
#wrapper #question_form p label {
  margin: 0 10px 0 0 !important;
  flex: 0 1 auto;
  text-align: left;
  width: 175px;
}
#wrapper #question_form p label:first-child {
  font-weight: bold;
}
#wrapper #question_form p input[type="checkbox"] {
  margin: 0 5px 0 24px !important;
}
#wrapper #question_form p input[type="checkbox"] + label {
  width: auto;
}
#wrapper #question_form p:nth-last-of-type(1) {
  align-items: flex-end;
  justify-content: space-between;
  font-weight: bold;
  margin-bottom: 0;
}
#wrapper .question-tags-edit {
  flex: 1 0 auto;
  width: 100%;
}
#wrapper .box .select2-container--default {
  width: 100% !important;
}
#wrapper span.attachments_form {
  flex: 0 0 auto;
  width: 100%;
}
#wrapper a[href*="/helpdesk/show_original"] {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color);
  vertical-align: middle;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#wrapper a[href*="/helpdesk/show_original"]:after {
  content: "\E181";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
}
#wrapper a[href*="/helpdesk/show_original"]:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#wrapper a[href*="/helpdesk/show_original"]:hover {
  color: var(--icon-color-hover);
}
#wrapper a[href*="/helpdesk/show_original"]:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#wrapper a[href*="/helpdesk/show_original"].selected {
  color: var(--icon-color-hover);
}
#wrapper a[href*="/helpdesk/show_original"].selected:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#wrapper a[href*="/helpdesk/show_original"].disabled {
  opacity: 0.3;
}
#wrapper a[href*="/helpdesk/show_original"].disabled:hover {
  color: var(--icon-color-disabled);
}
#wrapper a[href*="/helpdesk/show_original"].disabled:hover:before {
  background: var(--icon_bg-disabled);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
}
#wrapper a[href*="/helpdesk/show_original"] img {
  display: none;
}
/* END ADD QUESTION */
/* --------------------- https://redmine-evolution.com/ -- */
/* START LIST QUESTION PAGE */
#question_form {
  color: var(--bg-fff);
}
#main #content .top-questions {
  z-index: 5;
}
#main #content .top-questions a.icon:before {
  background: var(--icon_bg_hover-bg);
}
#main #content form[action*='questions_sections'] {
  padding: 0;
}
#main #content form[action*='questions_sections'] .box {
  padding: 20px;
}
#main #content form[action*='questions_sections'] > p {
  padding: 0;
}
#main > #content form[action*='redmine_contacts_helpdesk'] .nodata {
  padding-top: 10px;
  padding-bottom: 10px;
}
#main > #content #tab-content-email_rules h3 {
  margin: 0;
}
#main > #content #tab-content-email_rules h4 {
  margin: 20px 0;
}
#main > #content #tab-content-email_rules .nodata {
  margin: 20px 0;
}
#main .questions-filters {
  margin: 0 0 20px;
  overflow: hidden;
  width: 100%;
  float: none;
}
#main .questions-filters + #topics_list .title-bar {
  margin: -39px 0 24px;
}
#main .questions-filters ul {
  overflow: hidden;
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  justify-content: flex-end;
}
#main .questions-filters ul li {
  float: none;
  margin: 0 0 0 10px;
}
#main .questions-filters ul li:after {
  display: none;
}
#main .questions-filters ul a {
  color: var(--color-main-color);
  background: var(--bg-box);
  display: block;
  text-decoration: none;
  padding: 5px 15px;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main .questions-filters ul a:hover,
#main .questions-filters ul a.selected {
  color: var(--color-main-color-text);
  background: var(--color-main-color);
}
.controller-questions_sections .redmine-evolution-attachments,
.controller-questions .redmine-evolution-attachments {
  background: var(--bg-body);
}
.controller-questions_sections #main #content .top-questions,
.controller-questions #main #content .top-questions {
  display: flex;
  align-items: center;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
  margin: 0 0 20px;
  width: 100%;
}
.controller-questions_sections #main #content .top-questions .right-questions,
.controller-questions #main #content .top-questions .right-questions {
  width: 392px;
  order: 1;
  display: flex;
  justify-content: flex-end;
}
.controller-questions_sections #main #content .top-questions .right-questions .filters,
.controller-questions #main #content .top-questions .right-questions .filters {
  flex: 1 0 auto;
  order: 0;
  margin: 0;
}
.controller-questions_sections #main #content .top-questions .right-questions .contextual,
.controller-questions #main #content .top-questions .right-questions .contextual {
  order: 1;
  margin: 2px 0 0;
  padding: 0;
}
.controller-questions_sections #main #content .top-questions .right-questions .contextual:empty,
.controller-questions #main #content .top-questions .right-questions .contextual:empty {
  display: none;
}
.controller-questions_sections #main #content .top-questions .right-questions .contextual a:first-child,
.controller-questions #main #content .top-questions .right-questions .contextual a:first-child {
  margin-left: 10px;
}
.controller-questions_sections #main #content .top-questions .right-questions .contextual .icon,
.controller-questions #main #content .top-questions .right-questions .contextual .icon,
.controller-questions_sections #main #content .top-questions .right-questions .contextual .open-filter,
.controller-questions #main #content .top-questions .right-questions .contextual .open-filter {
  color: var(--icon-color-bg);
}
.controller-questions_sections #main #content .top-questions .right-questions .contextual .icon:before,
.controller-questions #main #content .top-questions .right-questions .contextual .icon:before,
.controller-questions_sections #main #content .top-questions .right-questions .contextual .open-filter:before,
.controller-questions #main #content .top-questions .right-questions .contextual .open-filter:before {
  background: var(--icon_bg-bg);
}
.controller-questions_sections #main #content .top-questions .right-questions .contextual .icon:hover,
.controller-questions #main #content .top-questions .right-questions .contextual .icon:hover,
.controller-questions_sections #main #content .top-questions .right-questions .contextual .open-filter:hover,
.controller-questions #main #content .top-questions .right-questions .contextual .open-filter:hover {
  color: var(--icon-color-hover-bg);
}
.controller-questions_sections #main #content .top-questions .right-questions .contextual .icon:hover:before,
.controller-questions #main #content .top-questions .right-questions .contextual .icon:hover:before,
.controller-questions_sections #main #content .top-questions .right-questions .contextual .open-filter:hover:before,
.controller-questions #main #content .top-questions .right-questions .contextual .open-filter:hover:before {
  background: var(--icon_bg_hover-bg);
}
.controller-questions_sections #main #content .top-questions h2,
.controller-questions #main #content .top-questions h2,
.controller-questions_sections #main #content .top-questions h1,
.controller-questions #main #content .top-questions h1 {
  margin: 0;
  order: 0;
  flex: 1 0 auto;
  position: relative;
  font-size: 1.4285rem;
  line-height: 1.4;
  padding: 15px 45px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background-size: 30px auto;
  background-position: 0 50%;
  background-repeat: no-repeat;
}
.controller-questions_sections.action-edit #main #content .top-questions {
  width: calc(100% + 60px);
  margin: 0 -30px 70px;
}
.controller-questions.action-create #main #content .top-questions {
  margin: 0 -30px 70px;
  width: calc(100% + 60px);
}
.controller-questions_sections.action-index #main #answer-form p,
.controller-questions.action-show #main #answer-form p,
.controller-questions.action-index #main #answer-form p {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  padding: 0;
  color: var(--color-main-color);
}
.controller-questions_sections.action-index #main #answer-form p br,
.controller-questions.action-show #main #answer-form p br,
.controller-questions.action-index #main #answer-form p br {
  margin: 0 0 10px;
}
.controller-questions_sections.action-index #main #answer-form p:nth-last-of-type(1),
.controller-questions.action-show #main #answer-form p:nth-last-of-type(1),
.controller-questions.action-index #main #answer-form p:nth-last-of-type(1) {
  margin: 15px 0 0;
  font-weight: bold;
  justify-content: space-between;
}
.controller-questions_sections.action-index #main #answer-form .question-tags-edit,
.controller-questions.action-show #main #answer-form .question-tags-edit,
.controller-questions.action-index #main #answer-form .question-tags-edit {
  flex: 1 0 auto;
  width: calc(100% - 185px) !important;
}
.controller-questions_sections.action-index #main #content,
.controller-questions.action-show #main #content,
.controller-questions.action-index #main #content {
  padding: 0;
}
.controller-questions_sections.action-index #main #content:after,
.controller-questions.action-show #main #content:after,
.controller-questions.action-index #main #content:after {
  display: none;
}
.controller-questions_sections.action-index #main #topics_list,
.controller-questions.action-show #main #topics_list,
.controller-questions.action-index #main #topics_list {
  width: 100%;
}
.controller-questions_sections.action-index #main #topics_list:after,
.controller-questions.action-show #main #topics_list:after,
.controller-questions.action-index #main #topics_list:after {
  content: '';
  display: block;
  clear: both;
}
.controller-questions_sections.action-index #main #topics_list .title-bar h4,
.controller-questions.action-show #main #topics_list .title-bar h4,
.controller-questions.action-index #main #topics_list .title-bar h4 {
  margin: 0;
  padding: 0;
  border: 0;
}
.controller-questions_sections.action-index #main .info,
.controller-questions.action-show #main .info,
.controller-questions.action-index #main .info {
  margin: 0 0 20px;
}
#main #content #forum_list #forum_list {
  margin: 0 0 20px;
}
#main #content #forum_list div.project-forums {
  border-bottom: 0;
  margin: 30px 0 0;
  padding: 30px 0 0;
  border-top: 1px solid var(--border-color);
  position: relative;
}
#main #content #forum_list div.project-forums:nth-of-type(1) {
  padding: 0;
  margin: 0;
  border: 0;
}
#main #content #forum_list .section-list {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  width: calc(100% + 20px);
  margin: 0 -10px;
}
#main #content #forum_list .section-list:empty {
  display: none !important;
}
#main #content #forum_list .section-list .section-tile {
  width: 300px;
  background: var(--bg-other);
  border: 0;
  margin: 0 10px 20px;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
#main #content #forum_list .section-list .section-tile:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
#main #content #forum_list .section-list .section-tile:hover h4 {
  color: var(--color-main-color);
}
#main #content #forum_list .section-list h4 {
  border: 0;
  padding: 0;
  margin: 0 0 15px;
  font-size: 1.1428rem;
  line-height: 1.1428rem;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main #content #forum_list > ul > li {
  float: none;
  overflow: hidden;
  padding: 0;
  border: none;
  background: var(--bg-other) !important;
  width: 100%;
  margin: 0 0 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  -webkit-transition: box-shadow var(--time-hover) ease-in-out;
  -moz-transition: box-shadow var(--time-hover) ease-in-out;
  -ms-transition: box-shadow var(--time-hover) ease-in-out;
  -o-transition: box-shadow var(--time-hover) ease-in-out;
  transition: box-shadow var(--time-hover) ease-in-out;
}
#main #content #forum_list > ul > li:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
#main #content #forum_list > ul .holder-forums {
  height: 0;
  overflow: hidden;
}
#main #content #forum_list > ul h3 {
  margin: 0 !important;
  overflow: hidden;
  align-items: center;
  display: flex;
  position: relative;
}
#main #content #forum_list > ul h3 a {
  text-decoration: none;
  padding: 15px 20px 15px 50px !important;
  display: inline-block;
  height: auto;
  font-family: sans-serif;
  overflow: hidden;
  font-size: 1.1428rem;
  line-height: 1.4;
  font-weight: 600;
  position: relative;
  color: var(--icon-color-bg);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main #content #forum_list > ul h3 a:after {
  content: "\E16D";
  text-align: center;
  position: absolute;
  top: 50%;
  left: 10px;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: -15px 0 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main #content #forum_list > ul h3 a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  left: 10px;
  width: var(--icon-width);
  height: var(--icon-width);
  margin: -15px 0 0;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main #content #forum_list > ul h3 a:hover {
  color: var(--icon-color-hover-bg);
}
#main #content #forum_list > ul h3 a:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main #content #forum_list > ul h3:hover {
  background: var(--all-hover-bg);
}
#main #content #forum_list > ul .topic_list {
  overflow: hidden;
  margin: 0 0 0 50px;
}
#main #content #forum_list > ul .topic_list .list-item {
  border-top: 1px solid var(--border-color-content);
  padding: 10px 0 10px 10px;
  margin: 0;
  -webkit-transition: background-color var(--time-hover) ease-in-out;
  -moz-transition: background-color var(--time-hover) ease-in-out;
  -ms-transition: background-color var(--time-hover) ease-in-out;
  -o-transition: background-color var(--time-hover) ease-in-out;
  transition: background-color var(--time-hover) ease-in-out;
}
#main #content #forum_list > ul .topic_list .list-item:hover {
  background: var(--all-hover-bg);
}
#main #content #forum_list > ul .topic_list .list-item br {
  display: none;
}
#main #content #forum_list > ul .topic_list .topic-subject {
  margin: 0 0 5px;
  display: block;
  overflow: hidden;
}
#main #content #forum_list > ul .topic_list .topic-subject a {
  display: inline-block;
  padding: 5px 10px;
  background: var(--button-main-bg);
  color: var(--button-main-color);
  font-weight: bold;
  text-decoration: none;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  -webkit-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -moz-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -ms-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -o-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
}
#main #content #forum_list > ul .topic_list .topic-subject a:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#main #content #topics_container {
  margin: 0 0 30px;
}
#main #content #topics_container .topic {
  display: flex;
  background: var(--bg-other);
  margin: 0 0 15px;
  padding: 15px 20px;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
#main #content #topics_container .topic:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
#main #content #topics_container .topic .topic-vote {
  width: auto;
  margin: 0 20px 0 0;
  padding: 3px 0 0;
}
#main #content #topics_container .topic .topic-vote .vote-score {
  font-size: 1.1428rem;
  line-height: 1.14;
  font-weight: bold;
}
#main #content #topics_container .topic .topic-vote label {
  color: var(--color-dark-grey);
}
#main #content #topics_container .topic .topic-content {
  padding: 0;
  flex: 1 0 auto;
}
#main #content #topics_container .topic .topic-content .subject {
  margin: 0 0 15px;
}
#main #content #topics_container .topic .topic-content p {
  margin: 0 0 15px;
}
#main #content #topics_container .topic .topic-content .meta {
  padding: 0;
  margin: 0;
  list-style: none;
  overflow: hidden;
  width: 100%;
}
#main #content #topics_container .topic .topic-content .meta li {
  margin: 0 10px 0 0;
  padding: 5px 15px;
  color: var(--text-color-main);
  background: var(--bg-other-in);
  text-decoration: none;
  border: 0 !important;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  font-size: 0.8571rem;
  overflow: hidden;
  line-height: 0.8571rem;
  min-height: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  height: auto;
}
#main #content #topics_container .topic .topic-content .meta li.icon-tag {
  background: none;
  padding: 0;
  color: var(--text-color-main);
}
#main #content #topics_container .topic .topic-content .meta li.icon-tag:after {
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  line-height: var(--icon-smaller-width);
}
#main #content #topics_container .topic .topic-content .meta li.icon-tag:hover {
  color: var(--color-main-color-text);
}
#main #content #topics_container .topic .topic-content .meta li.icon-tag:hover:after {
  color: var(--color-main-color-text);
}
#main #content #topics_container .topic .topic-content .meta li.icon-tag a {
  padding: 5px 15px 5px 25px;
}
#main #content #topics_container .topic .topic-content .meta li a {
  font-weight: bold;
  float: left;
  color: var(--color-main-color);
  background: var(--color-main-color-text);
  padding: 5px 15px;
  margin: 0 0 0 10px;
  font-size: 0.8571rem;
  line-height: 1.4;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  text-decoration: none;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main #content #topics_container .topic .topic-content .meta li a:hover {
  color: var(--color-main-color-text);
  background: var(--color-main-color);
}
#main #content #topics_container .topic .topic-content .meta li a:first-child {
  margin: 0;
}
#main #content .question .question-container {
  flex: 1;
  display: block;
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-family: sans-serif;
  overflow: hidden;
  font-size: 1rem;
  line-height: 1.4;
  padding: 15px 20px;
  webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
  background-color: var(--bg-other);
}
#main #content .question .question-container:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
#main #content .question .question-container .icon:before,
#main #content .question .question-container .icon-only:before {
  background-color: var(--icon_bg-bg);
}
#main #content .question {
  display: flex;
  align-items: flex-start;
  border: 0;
  padding: 0;
  margin: 0 0 30px;
  flex-wrap: wrap;
}
#main #content .question table {
  margin: 0 0 15px;
}
#main #content .question .comments_container {
  margin: 0;
  background: none;
}
#main #content .question .comments_container .add_comments {
  padding: 15px 0 0;
  width: 100%;
  margin: 0;
  border: 0 !important;
}
#main #content .question .comments_container .add_comments textarea {
  margin: 0 0 15px;
  width: 100%;
}
#main #content .question .comments_container .comment {
  display: block;
  padding: 15px 20px 15px 20px;
  margin: 15px 0 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  background: var(--bg-other);
  border: 0;
  position: relative;
}
#main #content .question .comments_container .comment:hover .contextual {
  opacity: 1;
}
#main #content .question .comments_container .comment .author {
  font-weight: bold;
  margin: 0 0 15px;
}
#main #content .question .comments_container .comment .contextual {
  position: absolute;
  top: 10px;
  right: 10px;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}
#main #content .question .comments_container .comment .contextual .icon,
#main #content .question .comments_container .comment .contextual .icon-only {
  color: var(--icon-color-bg);
}
#main #content .question .comments_container .comment .contextual .icon:before,
#main #content .question .comments_container .comment .contextual .icon-only:before {
  background-color: var(--icon_bg-bg);
}
#main #content .question .comments_container .comment .contextual .icon:hover,
#main #content .question .comments_container .comment .contextual .icon-only:hover {
  color: var(--icon-color-hover-bg);
}
#main #content .question .comments_container .comment .contextual .icon:hover:before,
#main #content .question .comments_container .comment .contextual .icon-only:hover:before {
  background-color: var(--icon_bg_hover-bg);
}
#main #content #answers {
  padding: 0 0 50px;
}
#main #content #answers h3 {
  order: 0;
  flex: 1 0 auto;
  position: relative;
  font-size: 1.4285rem;
  line-height: 1.4;
  padding: 15px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background-size: 30px auto;
  background-position: 0 50%;
  background-repeat: no-repeat;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
  margin: 0 0 30px;
}
#main #content #answers .question {
  margin: 0 0 30px 55px;
  width: calc(100% - 55px);
}
#main #content #answers .attachments .contextual {
  position: static !important;
}
#main #content #answers #reply #answer-form .box {
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
  background-color: var(--bg-other);
}
#main #content #answers #reply #answer-form .box:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
#main #content div.question.votable .vote {
  display: flex;
  flex-flow: column;
  margin: 0 20px 0 0;
  padding: 0;
  border: 5px solid var(--bg-fff);
  background: var(--bg-fff);
  font-size: 1.1428rem;
  line-height: 1.1428rem;
  font-weight: bold;
  height: auto;
  width: auto;
  webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
#main #content div.question.votable .vote:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
#main #content div.question.votable .vote .vote-count {
  height: auto;
  margin: 0;
  padding: 10px 0;
  width: 100%;
}
#main #content div.question.votable .vote a.vote-up,
#main #content div.question.votable .vote a.vote-down {
  width: var(--icon-width);
  height: var(--icon-width);
  background-image: none;
  background-color: var(--bg-box);
  color: var(--color-main-color);
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  position: relative;
  -webkit-transition: background-color var(--time-hover) ease-in-out;
  -moz-transition: background-color var(--time-hover) ease-in-out;
  -ms-transition: background-color var(--time-hover) ease-in-out;
  -o-transition: background-color var(--time-hover) ease-in-out;
  transition: background-color var(--time-hover) ease-in-out;
}
#main #content div.question.votable .vote a.vote-up.disabled,
#main #content div.question.votable .vote a.vote-down.disabled {
  opacity: 0.5;
  color: var(--button-main-color-disabled);
  background: var(--button-main-bg-disabled);
}
#main #content div.question.votable .vote a.vote-up:hover,
#main #content div.question.votable .vote a.vote-down:hover {
  color: var(--color-main-color-text);
  background: var(--color-main-color);
}
#main #content div.question.votable .vote a.vote-up:after,
#main #content div.question.votable .vote a.vote-down:after {
  content: "\E0DD";
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#main #content div.question.votable .vote a.vote-up:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
/* END LIST QUESTION PAGE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ADMIN SETTINGS */
#settings_helpdesk_autoclose_tickets_time_unit_day,
#settings_helpdesk_autoclose_tickets_time_unit_hour {
  margin: 0 18px 0;
}
.new_helpdesk_mail_rule .mail_rule_block,
.edit_helpdesk_mail_rule .mail_rule_block {
  position: relative;
  padding: 45px 20px 20px;
  margin: 0 0 15px;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  background: var(--bg-box);
  border: none;
}
.new_helpdesk_mail_rule .mail_rule_block legend,
.edit_helpdesk_mail_rule .mail_rule_block legend {
  position: absolute;
  top: 17px;
  left: 20px;
  font-weight: 600;
  color: var(--color-main-color);
  margin: 0;
}
.new_helpdesk_mail_rule .mail_rule_block .add-filter,
.edit_helpdesk_mail_rule .mail_rule_block .add-filter,
.new_helpdesk_mail_rule .mail_rule_block #mail_type,
.edit_helpdesk_mail_rule .mail_rule_block #mail_type {
  display: flex;
  align-items: center;
  align-content: center;
}
.new_helpdesk_mail_rule .mail_rule_block .add-filter label,
.edit_helpdesk_mail_rule .mail_rule_block .add-filter label,
.new_helpdesk_mail_rule .mail_rule_block #mail_type label,
.edit_helpdesk_mail_rule .mail_rule_block #mail_type label {
  font-weight: bold;
  width: 175px;
  margin: 0 10px 0 0 !important;
  flex: 0 1 auto;
  text-align: left;
}
.new_helpdesk_mail_rule .mail_rule_block .add-filter,
.edit_helpdesk_mail_rule .mail_rule_block .add-filter {
  margin: 20px 0 0;
}
.new_helpdesk_mail_rule .mail_rule_block .filter .select2,
.edit_helpdesk_mail_rule .mail_rule_block .filter .select2 {
  margin: 0;
}
.new_helpdesk_mail_rule .mail_rule_block table,
.edit_helpdesk_mail_rule .mail_rule_block table {
  width: 100% !important;
  border-spacing: 0;
}
.new_helpdesk_mail_rule .mail_rule_block table tr td,
.edit_helpdesk_mail_rule .mail_rule_block table tr td {
  padding-right: 10px;
  padding-left: 0;
}
.new_helpdesk_mail_rule .mail_rule_block table tr td:last-child,
.edit_helpdesk_mail_rule .mail_rule_block table tr td:last-child {
  padding-right: 0;
}
.new_helpdesk_mail_rule .mail_rule_block table select2,
.edit_helpdesk_mail_rule .mail_rule_block table select2 {
  margin: 0;
}
#content #settings #tab-content-templates .box {
  margin: 0 0 20px;
}
#content #settings #tab-content-templates #settings_helpdesk_first_answer_template,
#content #settings #tab-content-templates #settings_helpdesk_autoclose_template {
  margin: 15px 0 0;
}
#tab-content-email_rules .list {
  margin: 0 0 20px;
}
#tab-content-email_rules .list:nth-last-of-type(1) {
  margin: 0;
}
.controller-questions.action-edit #main #content .top-questions {
  margin: 0 -30px 70px;
  width: calc(100% + 60px);
}
.controller-questions.action-edit #main #content .top-questions h2 {
  display: flex;
  align-items: center;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START ADD QUESTION */
.controller-questions_sections.action-new #main #content .top-questions,
.controller-questions.action-new #main #content .top-questions {
  margin: 0 -30px 70px;
  width: calc(100% + 60px);
}
.controller-questions_sections.action-new #main #content .top-questions h2,
.controller-questions.action-new #main #content .top-questions h2 {
  margin: 0;
}
.controller-questions_sections.action-new #new_questions_section,
.controller-questions.action-new #new_questions_section {
  padding: 0;
}
.controller-questions_sections.action-new #new_questions_section .box,
.controller-questions.action-new #new_questions_section .box {
  padding: 20px;
}
.controller-questions_sections.action-new #new_questions_section p,
.controller-questions.action-new #new_questions_section p {
  padding: 0;
}
/* END ADMIN SETTINGS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MAIN LIST */
#main > #content #forum_list .even {
  background: none;
}
#main > #content #forum_list .even:hover {
  background: none;
}
#main > #content #forum_list .list-buttons {
  padding: 0 15px 0 10px;
  list-style: none;
  white-space: nowrap;
  position: absolute;
  top: 50%;
  right: 0;
  height: 30px;
  margin: -15px 0 0;
}
#main > #content #forum_list .list-buttons:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  margin: -10px 0 0;
  left: 0;
  height: 20px;
  width: 1px;
  border-left: 1px solid var(--border-color);
}
#main > #content #forum_list .list-buttons li {
  display: inline-block;
  margin: 0 0 0 5px;
}
#main > #content #forum_list .list-buttons li.first-child {
  margin: 0;
}
#main > #content #forum_list .open-forums {
  cursor: pointer !important;
  padding: 0;
  float: right;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  background-repeat: no-repeat;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#main > #content #forum_list .open-forums:after {
  content: "\E155";
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
}
#main > #content #forum_list .open-forums:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main > #content #forum_list .open-forums:hover {
  color: var(--icon-color-hover-bg);
}
#main > #content #forum_list .open-forums:hover:after {
  color: var(--icon-color-hover-bg);
}
#main > #content #forum_list .open-forums:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main > #content #forum_list .open-forums.selected {
  color: var(--icon-color-hover-bg);
}
#main > #content #forum_list .open-forums.selected:after {
  color: var(--icon-color-hover-bg);
}
#main > #content #forum_list .open-forums.selected:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main > #content #forum_list .open .project-forums > h3 {
  color: var(--color-main-color);
  -webkit-border-radius: var(--border-radius) 0 0 0;
  -moz-border-radius: var(--border-radius) 0 0 0;
  border-radius: var(--border-radius) 0 0 0;
}
#main > #content #forum_list .open .project-forums .open-forums {
  color: var(--icon_color_active-bg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#main > #content #forum_list .open > h3 {
  color: var(--color-main-color);
}
#main > #content #forum_list .open > h3 .open-forums {
  color: var(--icon_color_active-bg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#main > #content .forums-box {
  overflow: hidden;
  padding: 0;
  border: none;
  background: var(--bg-other);
  width: 100%;
  margin: 0 0 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--big-shadow);
  -moz-box-shadow: var(--big-shadow);
  box-shadow: var(--big-shadow);
  -webkit-transition: box-shadow var(--time-hover) ease-in-out;
  -moz-transition: box-shadow var(--time-hover) ease-in-out;
  -ms-transition: box-shadow var(--time-hover) ease-in-out;
  -o-transition: box-shadow var(--time-hover) ease-in-out;
  transition: box-shadow var(--time-hover) ease-in-out;
}
#main > #content .forums-box:hover {
  -webkit-box-shadow: var(--big-shadow-hover);
  -moz-box-shadow: var(--big-shadow-hover);
  box-shadow: var(--big-shadow-hover);
}
#main > #content .forums-box .project-forums {
  display: flex;
  align-items: center;
  width: 100%;
}
#main > #content .forums-box .project-forums h3 {
  flex: 1;
  margin: 0 !important;
  padding: 15px 60px 15px 50px !important;
  text-overflow: ellipsis;
  height: auto;
  font-family: sans-serif;
  overflow: hidden;
  font-size: 1.1428rem;
  line-height: 1.4;
  font-weight: 600;
  background-position: 10px 50%;
  background-repeat: no-repeat;
  text-decoration: none;
  position: relative;
  -webkit-border-radius: var(--border-radius) 0 0 var(--border-radius);
  -moz-border-radius: var(--border-radius) 0 0 var(--border-radius);
  border-radius: var(--border-radius) 0 0 var(--border-radius);
  background: var(--bg-other);
  color: var(--text-color-main);
  -webkit-transition: background var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -moz-transition: background var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -ms-transition: background var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -o-transition: background var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  transition: background var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
}
#main > #content .forums-box .project-forums h3:after {
  content: "\E16C";
  text-align: center;
  position: absolute;
  top: 50%;
  left: 10px;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: -15px 0 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
  color: var(--icon-color-bg);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main > #content .forums-box .project-forums h3:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  left: 10px;
  width: var(--icon-width);
  height: var(--icon-width);
  margin: -13px 0 0;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out;
}
#main > #content .forums-box .project-forums h3 a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  font-size: 0;
  line-height: 0;
}
#main > #content .forums-box .project-forums h3:hover {
  background: var(--all-hover-bg);
  text-decoration: none;
  color: var(--color-main-color);
}
#main > #content .forums-box .project-forums h3:hover:after {
  color: var(--color-main-color);
}
#main > #content .forums-box .project-forums h3:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main > #content .forums-box .holder-forums {
  overflow: hidden;
  width: 100%;
  height: 0;
}
#main > #content .forums-box .holder-forums > ul {
  overflow: hidden;
  margin: 0;
  padding: 0 0 0 20px;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  list-style: none;
}
#main > #content .forums-box .holder-forums > ul li {
  border-top: 1px solid var(--border-color-content);
}
#main > #content .forums-box .holder-forums > ul li:first-child {
  border: 0;
}
#main > #content .forums-box .holder-forums > ul li:last-child h3 {
  -webkit-border-radius: 0 0 var(--border-radius);
  -moz-border-radius: 0 0 var(--border-radius);
  border-radius: 0 0 var(--border-radius);
}
#main > #content .forums-box .holder-forums > ul:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--border-color-content);
}
#main > #content .forums-box .holder-forums > ul h3 {
  margin: 0 !important;
  overflow: hidden;
  align-items: center;
  display: flex;
  position: relative;
  padding: 0 60px 0 0;
}
#main > #content .forums-box .holder-forums > ul h3 a {
  text-decoration: none;
  padding: 15px 20px 15px 50px !important;
  display: inline-block;
  height: auto;
  font-family: sans-serif;
  overflow: hidden;
  font-size: 1.1428rem;
  line-height: 1.4;
  font-weight: 600;
  position: relative;
  color: var(--color-main-color);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main > #content .forums-box .holder-forums > ul h3 a:after {
  content: "\E16D";
  text-align: center;
  position: absolute;
  top: 50%;
  left: 10px;
  display: block;
  clear: both;
  height: var(--icon-width);
  width: var(--icon-width);
  margin: -15px 0 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-font-size);
  line-height: var(--icon-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main > #content .forums-box .holder-forums > ul h3 a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 50%;
  left: 10px;
  width: var(--icon-width);
  height: var(--icon-width);
  margin: -15px 0 0;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: 1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main > #content .forums-box .holder-forums > ul h3 a:hover {
  color: var(--icon-color-hover-bg);
}
#main > #content .forums-box .holder-forums > ul h3 a:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main > #content .forums-box .holder-forums > ul h3:hover {
  background: var(--all-hover-bg);
}
#main > #content .forums-box .topic_list {
  overflow: hidden;
  margin: 0 0 0 50px;
}
#main > #content .forums-box .topic_list .list-item {
  border-top: 1px solid var(--border-color-content);
  padding: 10px 0 10px 10px;
  margin: 0;
  -webkit-transition: background-color var(--time-hover) ease-in-out;
  -moz-transition: background-color var(--time-hover) ease-in-out;
  -ms-transition: background-color var(--time-hover) ease-in-out;
  -o-transition: background-color var(--time-hover) ease-in-out;
  transition: background-color var(--time-hover) ease-in-out;
}
#main > #content .forums-box .topic_list .list-item:hover {
  background: var(--all-hover-bg);
}
#main > #content .forums-box .topic_list .list-item br {
  display: none;
}
#main > #content .forums-box .topic_list .topic-subject {
  margin: 0 0 5px;
  display: block;
  overflow: hidden;
}
#main > #content .forums-box .topic_list .topic-subject a {
  display: inline-block;
  padding: 5px 10px;
  background: var(--color-main-color);
  color: var(--color-main-color-text);
  font-weight: bold;
  text-decoration: none;
  -webkit-border-radius: var(--border-radius);
  -moz-border-radius: var(--border-radius);
  border-radius: var(--border-radius);
  -webkit-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -moz-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -ms-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  -o-transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
  transition: background-color var(--time-hover) ease-in-out, color var(--time-hover) ease-in-out;
}
#main > #content .forums-box .topic_list .topic-subject a:hover {
  background: var(--color-main-color-text);
  color: var(--color-main-color);
}
/* END MAIN LIST */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  .controller-questions.action-create #main #content .top-questions {
    margin: 0 -10px 20px;
    width: calc(100% + 20px);
  }
  .controller-questions.action-create #main #content .top-questions h2 {
    background-color: var(--bg-box);
    background-position: 10px 50%;
    background-size: 25px 25px;
    padding: 15px 20px 15px 45px;
    display: flex;
    align-items: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #wrapper .question > .wiki-anchor {
    display: none !important;
  }
  #answer-form .accepted_answer {
    overflow: hidden;
    width: 100%;
    float: none;
    text-align: right;
    margin-bottom: 10px;
  }
  .controller-questions_sections.action-edit #main #content .top-questions,
  .controller-questions.action-edit #main #content .top-questions,
  .controller-questions_sections.action-new #main #content .top-questions,
  .controller-questions.action-new #main #content .top-questions {
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 20px;
  }
  .controller-questions_sections.action-index #main #content,
  .controller-questions.action-show #main #content,
  .controller-questions.action-index #main #content {
    padding-left: 10px;
    padding-right: 10px;
  }
  .controller-questions_sections #main #content .top-questions,
  .controller-questions #main #content .top-questions {
    padding: 0 10px;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    background: var(--bg-box);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .controller-questions_sections #main #content .top-questions .filters,
  .controller-questions #main #content .top-questions .filters {
    max-width: 200px;
  }
  #main > #content {
    padding-left: 10px;
    padding-right: 10px;
  }
  #main > #content .forums-box {
    background: var(--bg-box);
  }
  #main > #content .forums-box .project-forums h3 {
    background: var(--bg-box);
  }
  #main > #content .forums-box .project-forums h3:after {
    color: var(--icon-color-bg);
  }
  #main > #content .forums-box .project-forums h3:before {
    display: none;
  }
  #main > #content #forum_list > ul > li {
    background: var(--bg-box) !important;
  }
  #main > #content #forum_list > ul h3 a {
    padding: 15px 10px 15px 50px !important;
  }
  #main > #content #forum_list .open-forums {
    color: var(--icon-color-bg);
  }
  #main > #content #forum_list .open-forums:before {
    display: none;
  }
  #main > #content #forum_list .list-buttons {
    padding: 0 10px 0 10px;
  }
  #main > #content #topics_container .topic {
    background: var(--bg-box);
    padding: 15px 10px;
  }
  #main > #content #topics_container .topic .topic-content {
    flex: 1;
  }
  #main > #content #topics_container .topic .topic-content .meta li {
    background: var(--bg-fff);
    margin-top: 2px;
    margin-bottom: 2px;
  }
  #main > #content #topics_container .topic .topic-content .meta li a {
    background: var(--bg-fff);
  }
  #main > #content .question .question-container {
    background: var(--bg-box);
    padding: 15px 10px;
  }
  #main > #content .question .question-container .comment {
    padding: 10px;
    background: var(--bg-fff);
    margin: 10px 0 0;
  }
  #main > #content .question .question-container .comment .icon:before {
    background: var(--bg-box) !important;
  }
  #main > #content .question .question-container .attachments table {
    padding: 10px 0 0;
  }
  #main > #content .question .question-container .icon,
  #main > #content #reply .icon,
  #main > #content .question .question-container .icon-only,
  #main > #content #reply .icon-only {
    color: var(--bg-box);
  }
  #main > #content .question .question-container .icon:before,
  #main > #content #reply .icon:before,
  #main > #content .question .question-container .icon-only:before,
  #main > #content #reply .icon-only:before {
    background: var(--bg-fff);
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
  #main > #content .add-comment-form input[type="submit"] + input[type="button"] {
    /*background: @fff;*/
  }
  #main #content #settings #tab-content-templates .box {
    margin: 0;
  }
  #main #content #answers {
    padding: 0 0 20px;
  }
  #main #content #answers h3 {
    padding: 15px 10px;
    margin: 0 -10px 20px;
    width: calc(100% + 20px);
  }
  #main #content #answers .question {
    margin: 0 0 20px 0;
    width: 100%;
  }
  #main #content #answers .add-comment-form input[type="submit"] {
    margin-left: 0 !important;
  }
  #main #content #answers .add-comment-form input[type="submit"] + a {
    /*background: @fff;*/
  }
  #main #content #answers #reply #answer-form .box {
    -webkit-box-shadow: var(--box-shadow-null);
    -moz-box-shadow: var(--box-shadow-null);
    box-shadow: var(--box-shadow-null);
    background-color: var(--bg-box);
  }
  #main #content #answers #reply #answer-form .box:hover {
    -webkit-box-shadow: var(--box-shadow-null);
    -moz-box-shadow: var(--box-shadow-null);
    box-shadow: var(--box-shadow-null);
  }
  #main #content #reply {
    overflow: visible;
    padding: 0;
    -webkit-box-shadow: var(--box-shadow-null) !important;
    -moz-box-shadow: var(--box-shadow-null) !important;
    box-shadow: var(--box-shadow-null) !important;
  }
  #main .questions-filters {
    overflow-x: auto;
  }
  #main .questions-filters ul {
    display: block;
    white-space: nowrap;
    overflow: visible;
  }
  #main .questions-filters ul li {
    display: inline-block;
  }
  #main .questions-filters ul li:first-child {
    margin: 0;
  }
  #main .questions-filters ul a {
    background: var(--bg-box);
    color: var(--color-main-color);
  }
  #main .question.solution .liking .author {
    display: block;
    float: none;
    margin: 10px 0;
  }
}
@media screen and (max-width: 650px) {
  .controller-questions.action-create #main #content .top-questions h2 {
    font-size: 1.1428rem;
    line-height: 1.4;
  }
  #answer-form .accepted_answer {
    margin-bottom: 0;
  }
  .new_helpdesk_mail_rule .mail_rule_block,
  .edit_helpdesk_mail_rule .mail_rule_block {
    color: var(--text-color-main);
    overflow: hidden;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 0 20px;
    border: none;
    padding: 15px 10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    margin-left: -10px !important;
    margin-right: -10px !important;
  }
  .new_helpdesk_mail_rule .mail_rule_block legend,
  .edit_helpdesk_mail_rule .mail_rule_block legend {
    position: relative;
    top: 0;
    left: 0;
    padding: 10px;
    display: block;
    background: inherit;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    height: auto;
    background: var(--bg-mobile);
  }
  .new_helpdesk_mail_rule .mail_rule_block .add-filter,
  .edit_helpdesk_mail_rule .mail_rule_block .add-filter {
    margin-top: 0;
    padding-top: 0;
  }
  .new_helpdesk_mail_rule .mail_rule_block .add-filter,
  .edit_helpdesk_mail_rule .mail_rule_block .add-filter,
  .new_helpdesk_mail_rule .mail_rule_block #mail_type,
  .edit_helpdesk_mail_rule .mail_rule_block #mail_type {
    flex-wrap: wrap;
  }
  .new_helpdesk_mail_rule .mail_rule_block .add-filter label,
  .edit_helpdesk_mail_rule .mail_rule_block .add-filter label,
  .new_helpdesk_mail_rule .mail_rule_block #mail_type label,
  .edit_helpdesk_mail_rule .mail_rule_block #mail_type label {
    display: block;
    width: 100%;
    margin: 0 0 5px !important;
    flex: 1 0 auto;
    justify-content: flex-start;
  }
  .new_helpdesk_mail_rule .mail_rule_block select2,
  .edit_helpdesk_mail_rule .mail_rule_block select2 {
    width: 100% !important;
  }
  .new_helpdesk_mail_rule .mail_rule_block table,
  .edit_helpdesk_mail_rule .mail_rule_block table {
    width: 100% !important;
    display: block;
  }
  .new_helpdesk_mail_rule .mail_rule_block table tbody,
  .edit_helpdesk_mail_rule .mail_rule_block table tbody {
    width: 100% !important;
    display: block;
  }
  .new_helpdesk_mail_rule .mail_rule_block table tr,
  .edit_helpdesk_mail_rule .mail_rule_block table tr {
    display: block;
    width: 100% !important;
    border-top: 1px solid var(--border-color);
    margin-top: 10px;
    padding-top: 10px;
  }
  .new_helpdesk_mail_rule .mail_rule_block table tr td,
  .edit_helpdesk_mail_rule .mail_rule_block table tr td {
    display: block;
    width: 100% !important;
    padding: 4px 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .new_helpdesk_mail_rule .mail_rule_block table tr:first-child,
  .edit_helpdesk_mail_rule .mail_rule_block table tr:first-child {
    border-top: 0;
    margin-top: 0;
    padding-top: 0;
  }
  #main > #content .edit_canned_response div.box {
    padding-top: 0;
  }
  #main > #content .edit_canned_response div.box > fieldset legend {
    margin-bottom: 0;
  }
  #main > #content .edit_canned_response legend {
    padding: 15px 0 10px;
  }
  .controller-questions_sections #main #content .top-questions,
  .controller-questions #main #content .top-questions {
    flex-wrap: wrap;
  }
  .controller-questions_sections #main #content .top-questions h2,
  .controller-questions #main #content .top-questions h2 {
    width: 100%;
    font-size: 1.1428rem;
    line-height: 1.1428rem;
  }
  .controller-questions_sections #main #content .top-questions .filters,
  .controller-questions #main #content .top-questions .filters {
    max-width: 100%;
  }
  .controller-questions_sections #main #content .top-questions .right-questions,
  .controller-questions #main #content .top-questions .right-questions {
    width: 100%;
    margin: 0 0 15px;
  }
  #main > #content .forums-box {
    margin: 0 -10px 10px;
    width: calc(100% + 20px) !important;
    -webkit-box-shadow: var(--box-shadow-null) !important;
    -moz-box-shadow: var(--box-shadow-null) !important;
    box-shadow: var(--box-shadow-null) !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #main > #content .forums-box .holder-forums > ul {
    padding: 0;
  }
  #main > #content #forum_list > ul > li {
    margin: 0 -10px 10px;
    width: calc(100% + 20px) !important;
    -webkit-box-shadow: var(--box-shadow-null) !important;
    -moz-box-shadow: var(--box-shadow-null) !important;
    box-shadow: var(--box-shadow-null) !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #main > #content #forum_list > ul .topic_list {
    margin: 0;
  }
  #main > #content .add-comment-form input[type="submit"] {
    margin-left: 0 !important;
  }
  #main > #content .add-comment-form input[type="submit"] + input[type="button"] {
    background: var(--button-bg);
    color: var(--button-color);
    margin-left: 0 !important;
  }
  #main > #content .add-comment-form input[type="submit"] + input[type="button"]:hover {
    background: var(--button-bg-hover);
    color: var(--button-color-hover);
  }
  #main > #content form[action*='questions_sections'] {
    margin: 0;
    padding: 0;
  }
  #main > #content form[action*='questions_sections'] .box {
    padding: 15px 10px;
    width: calc(100% + 20px);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    margin-left: -10px !important;
    margin-right: -10px !important;
  }
  #main > #content #question_subject {
    margin-bottom: 10px !important;
  }
  #main > #content div.question.votable .vote {
    width: auto;
    margin: 0 0 20px;
    flex-flow: row;
  }
  #main > #content div.question.votable .vote a.vote-up,
  #main > #content div.question.votable .vote a.vote-down {
    flex: 1 0 auto;
  }
  #main > #content div.question.votable .vote .vote-count {
    min-width: 30px;
    padding: 0 10px;
    align-items: center;
    display: flex;
  }
  #main > #content div.question .question-container {
    width: 100%;
    flex: 1 0 auto;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -webkit-box-shadow: var(--box-shadow-null) !important;
    -moz-box-shadow: var(--box-shadow-null) !important;
    box-shadow: var(--box-shadow-null) !important;
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
  }
  #main > #content #topics_container .topic {
    margin: 0 -10px 10px;
    width: calc(100% + 20px) !important;
    -webkit-box-shadow: var(--box-shadow-null) !important;
    -moz-box-shadow: var(--box-shadow-null) !important;
    box-shadow: var(--box-shadow-null) !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #wrapper .question > .wiki-anchor {
    position: relative;
    top: 0;
    left: 0;
    margin: 10px 10px 0 0;
  }
  #main #content form#helpdesk_settings input[type="submit"] {
    margin-top: 30px;
  }
}
/* END HELP & SUPPORT PAGES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START SIDEBAR */
#sidebar #ticket_data_form {
  border: 0;
  background: none;
  padding: 0;
  margin: 0;
}
#sidebar #ticket_data_form p {
  margin: 0 0 15px;
}
#sidebar #ticket_data_form p.contact_auto_complete {
  display: flex;
  flex-wrap: wrap;
}
#sidebar #ticket_data_form #helpdesk_ticket_from_address_add_link {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  vertical-align: middle;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#sidebar #ticket_data_form #helpdesk_ticket_from_address_add_link:after {
  content: "\E14D";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#sidebar #ticket_data_form #helpdesk_ticket_from_address_add_link:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#sidebar #ticket_data_form #helpdesk_ticket_from_address_add_link:hover {
  color: var(--icon-color-hover-bg);
}
#sidebar #ticket_data_form #helpdesk_ticket_from_address_add_link:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#sidebar #ticket_data_form #helpdesk_ticket_from_address_add_link.selected {
  color: var(--color-main-color);
}
#sidebar #ticket_data_form #helpdesk_ticket_from_address_add_link.selected:before {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#sidebar #ticket_data_form #helpdesk_ticket_from_address_add_link.disabled {
  opacity: 0.3;
}
#sidebar #ticket_data_form #helpdesk_ticket_from_address_add_link.disabled:hover {
  color: var(--button-main-color-disabled);
}
#sidebar #ticket_data_form #helpdesk_ticket_from_address_add_link.disabled:hover:before {
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
}
#sidebar #ticket_data_form #helpdesk_ticket_from_address_add_link img {
  display: none;
}
#sidebar #ticket_data_form label {
  display: flex;
  margin: 0 0 5px;
  color: var(--text-color-main);
  font-size: 1rem;
  line-height: 1.4;
  font-weight: bold;
}
#sidebar #ticket_data_form label + br {
  display: none;
}
#sidebar #ticket_data_form input[type="text"] {
  height: 30px;
  box-sizing: border-box;
  border: 1px solid var(--border-color-content);
  padding: 6px 12px;
  font-size: 14px;
  line-height: 18px;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  color: var(--text-color-main);
  margin: 0 !important;
  min-width: 190px;
  outline: 0 none;
  width: 100%;
  max-width: 100%;
  flex: 1 0 0;
}
#sidebar #ticket_data_form input[type="text"]:first-child {
  margin: 0 0 15px 0 !important;
}
#sidebar #ticket_data_form input[type="submit"] {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: 0 !important;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 0 10px 0;
  width: 100%;
  text-align: center;
}
#sidebar #ticket_data_form input[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#sidebar #ticket_data_form input[type="submit"]:disabled {
  background: var(--button-main-bg-disabled);
  cursor: var(--button-main-color-disabled);
}
#sidebar #ticket_data_form input[type="submit"]:disabled:hover {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
}
#sidebar #ticket_data_form input[type="submit"] + a {
  display: block;
  width: 100%;
  text-align: center;
  border: none;
  padding: 8px 15px;
  width: auto;
  height: 30px;
  font-size: 1rem;
  line-height: 1rem;
  font-weight: var(--button-font-weight);
  color: var(--button-color);
  background: var(--button-bg);
  text-decoration: none;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  margin: 0 0 15px ;
}
#sidebar #ticket_data_form input[type="submit"] + a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
/* END SIDEBAR */
/* --------------------- https://redmine-evolution.com/ -- */
/* START AGILE PAGES */
/* START AGILE PLAGINS */
.agile-board .user:after {
  content: '';
}
.agile-board .quick-comment {
  margin: 10px 0 0;
  padding: 0;
}
.agile-board .quick-comment textarea {
  margin-bottom: 10px !important;
}
.agile-board .quick-comment button[type="button"],
.agile-board .quick-comment button[type="submit"] {
  padding: 5px 10px;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 !important;
}
.agile-board .quick-comment button[type="button"]:hover,
.agile-board .quick-comment button[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
.agile-board .quick-comment button[type="button"]:disabled,
.agile-board .quick-comment button[type="submit"]:disabled {
  background: var(--button-bg-disabled);
  cursor: default;
  color: var(--button-color-disabled);
}
.agile-board .quick-comment button[type="button"]:disabled:hover,
.agile-board .quick-comment button[type="submit"]:disabled:hover {
  background: var(--button-bg-disabled);
  color: var(--button-color-disabled);
}
.agile-board .quick-comment button[type="button"] + a,
.agile-board .quick-comment button[type="submit"] + a {
  display: inline-block;
  border: none;
  padding: 5px 10px;
  width: auto;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
  font-weight: var(--button-font-weight);
  color: var(--button-color);
  background: var(--button-bg);
  text-decoration: none;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
.agile-board .quick-comment button[type="button"] + a:after,
.agile-board .quick-comment button[type="submit"] + a:after,
.agile-board .quick-comment button[type="button"] + a:before,
.agile-board .quick-comment button[type="submit"] + a:before {
  display: none;
}
.agile-board .quick-comment button[type="button"] + a:hover,
.agile-board .quick-comment button[type="submit"] + a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
.agile-board .icon-comment {
  background-image: none !important;
  position: relative;
}
.agile-board .icon-comment:before {
  display: block;
  clear: both;
  position: absolute;
  top: 0;
  left: 0;
  width: 14px;
  height: 14px;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 14px;
  line-height: 1;
}
.agile-board .icon-comment:after {
  display: none;
}
.agile-board .issue-card div.quick-edit-card {
  border: 0;
  background: var(--bg-fff);
  width: 16px;
  height: 16px;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
}
.agile-board .issue-card div.quick-edit-card a.add-comment {
  width: 100%;
  height: 100%;
  position: relative;
}
.agile-board .issue-card div.quick-edit-card a.add-comment:after {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 16px;
  line-height: 1;
}
.agile-board .issue-card div.quick-edit-card a.add-comment img {
  display: none;
}
.agile-board .issue-card:hover div.quick-edit-card {
  opacity: 1;
}
#main span.checklist-remove {
  opacity: 1;
}
#main .agile_options_field {
  display: flex;
  min-width: 30%;
  width: 50%;
  float: left;
  align-items: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 5px 0 0;
}
#main .agile_options_field:last-of-type {
  padding: 0 0 0 15px;
}
#main .agile_options_field:first-child {
  padding: 0;
}
/* START AGILE ADMIN PART */
/* START AGILE COLOR */
.controller-agile_colors #main > #content > h2 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-right: 0;
}
.controller-agile_colors #main > #content > h2 .jcf-select,
.controller-agile_colors #main > #content > h2 .select2 {
  max-width: 404px;
}
.controller-agile_colors #main > #content table.list {
  margin: 0 0 20px;
}
/* END AGILE COLOR */
/* END AGILE ADMIN PART */
/* END AGILE PLAGINS */
table.list.issues-board {
  box-shadow: none;
}
table.list.issues-board th {
  border-right: none;
  background: var(--bg-fff);
}
table.list.issues-board > tbody > tr:hover > td {
  background: none;
}
table.list.issues-board .issue-card {
  padding: 10px;
  border-width: 0;
  border-left-width: 4px;
}
table.list.issues-board .issue-card .attributes {
  font-size: inherit;
  color: var(--text-color-main);
}
table.list.issues-board .issue-card p.project,
table.list.issues-board .issue-card p.issue-id {
  margin: 0 0 10px;
}
table.list.issues-board .issue-card p.name {
  margin: 0 0 5px;
}
table.list.issues-board .issue-card div.sub-issues ul {
  padding-left: 15px;
}
table.list.issues-board .issue-card div.quick-edit-card {
  padding: 5px;
  width: auto;
  height: auto;
  bottom: 0;
  right: 0;
  border-radius: 20px 0 0 20px;
  z-index: 2;
  opacity: 0.7;
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
table.list.issues-board .issue-card div.quick-edit-card:hover {
  opacity: 1;
}
table.list.issues-board .issue-card div.quick-edit-card a {
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  background: var(--bg-fff);
  position: relative;
  margin: 0 0 0 4px;
  color: var(--icon-color);
}
table.list.issues-board .issue-card div.quick-edit-card a img {
  display: none;
}
table.list.issues-board .issue-card div.quick-edit-card a:before {
  content: '';
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
table.list.issues-board .issue-card div.quick-edit-card a:after {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: "WFS-RM-font";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
}
table.list.issues-board .issue-card div.quick-edit-card a.quick-edit:after {
  content: "\E113";
}
table.list.issues-board .issue-card div.quick-edit-card a.add-comment:after {
  content: "\E0F6";
}
table.list.issues-board .issue-card div.quick-edit-card a:hover {
  color: var(--icon-color-hover);
}
table.list.issues-board .issue-card div.quick-edit-card a:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
table.list.issues-board .issue-card div.sub-issues {
  font-size: inherit;
  padding-top: 10px;
  margin-top: 10px;
  border-color: var(--border-color);
}
table.list.issues-board .issue-card div.sub-issues ul {
  font-weight: 400;
}
table.list.issues-board .issue-card div.sub-issues ul li {
  margin: 0 0 5px;
}
table.list.issues-board .issue-card .info {
  padding-top: 10px;
  margin-top: 10px !important;
  border-color: var(--border-color);
  font-size: inherit;
  line-height: inherit;
}
table.list.issues-board .issue-card .info .user {
  position: relative;
  padding: 0;
  font-weight: bold;
  display: flex;
  align-items: center;
}
table.list.issues-board .issue-card .info .user img {
  display: block;
  margin: 0 5px 0 0;
}
table.list.issues-board .issue-card .info .user:after {
  content: '';
  display: none;
}
table.list.issues-board .issue-card span.hours {
  color: var(--icon-grey-dark);
}
table.list.issues-board .issue-card .icon-comment {
  width: 100% !important;
  display: block;
  padding: 0 0 0 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  min-height: 16px;
  height: auto !important;
  line-height: 1.1428rem;
}
table.list.issues-board .issue-card .icon-comment:after {
  width: 16px;
  height: 16px;
  font-size: 1.1428rem;
  line-height: 1.1428rem;
}
table.list.issues-board .add-issue .new-card__input {
  font-size: 0.85714286rem;
}
#main > #content #query_form[action*='agile/board'] h2 {
  display: flex;
  align-items: center;
  margin: 0 -30px 70px;
  padding: 15px 72px 15px 45px;
}
#main > #content #query_form[action*='agile/board'] h2 .selected_sprint {
  margin-left: auto;
  margin-right: 10px;
}
#main > #content #query_form[action*='agile/board'] h2 .icon-add {
  color: var(--icon-color);
  vertical-align: middle;
}
#main > #content #query_form[action*='agile/board'] h2 .live_search {
  right: 204px;
}
#main > #content #query_form[action*='agile/board'] .selected_sprint {
  font-size: 0.85714286rem;
  font-weight: 400;
}
#main > #content #query_form[action*='agile/board'] .live_search {
  margin-left: auto;
}
.controller-agile_boards .issue-card div.checklist ul li {
  margin: 0 0 5px;
}
.controller-agile_boards #query_form_with_buttons {
  margin: 0 0 10px;
}
.controller-agile_boards #query_form .holder-filters #options table td {
  padding: 0 0 10px 0;
}
.controller-agile_boards #main > #content > .contextual {
  position: absolute;
  right: 0;
  top: 0;
  margin: 13px 0 0;
}
.controller-agile_boards .jcf-list .jcf-optgroup-caption {
  font-weight: 400;
  font-size: 0.85714286rem;
}
.controller-agile_boards .jcf-list .jcf-optgroup .jcf-option {
  padding-left: 10px;
}
.controller-agile_boards .agile-board.autoscroll {
  margin: 0;
}
.controller-agile_boards .agile_options_field {
  min-height: 0;
  display: flex;
  align-items: center;
  padding: 3px 0 3px 180px;
}
.controller-agile_boards .agile_options_field label {
  font-weight: bold;
  float: left;
  text-align: right;
  margin-left: -180px;
  width: 175px;
  padding: 0 5px 0 0;
  text-align: left;
}
.agile-board-fullscreen #header .redmineevolution-search-link,
.agile-board-fullscreen #main > #content > .contextual,
.agile-board-fullscreen #header,
.agile-board-fullscreen #sidebar,
.agile-board-fullscreen #top-menu,
.agile-board-fullscreen .open-sidebar-link,
.agile-board-fullscreen #main-menu,
.agile-board-fullscreen #sidebar .project-members,
.agile-board-fullscreen .buttons {
  position: absolute !important;
  top: -9999999px !important;
  left: -9999999px !important;
}
.agile-board-fullscreen #content {
  position: relative;
}
.agile-board-fullscreen #content .in-filter {
  padding: 0;
  border: 0;
}
.agile-board-fullscreen #content #query_form {
  z-index: 100;
}
.agile-board-fullscreen #content #query_form .contextual {
  position: fixed;
  right: 10px;
  top: 15px;
}
.agile-board-fullscreen #content #query_form #query_form_content {
  display: none !important;
}
.agile-board-fullscreen #content #query_form h2 {
  display: none !important;
}
.agile-board-fullscreen #content form[action*="agile/board"] {
  z-index: 1;
}
.agile-board-fullscreen #content .icon {
  display: none;
}
.agile-board-fullscreen #content .icon-fullscreen {
  position: fixed;
  top: 0;
  right: 20px;
  z-index: 100;
  text-indent: 0;
}
.agile-board-fullscreen #content .container-fixed {
  z-index: 100;
}
.agile-board-fullscreen #content table.list.issues-board.sticky {
  top: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#content table.list.issues-board.sticky {
  top: 41px;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
#content .card-fields .floating {
  display: flex;
  align-items: center;
  margin: 0 10px 5px 0 !important;
}
#content .card-fields input[type="text"] {
  min-width: auto;
}
@media screen and (max-width: 1024px) {
  #main > #content #query_form[action*='agile/board'] h2 {
    background-position: 10px 50%;
    background-size: 25px auto;
    margin: 0 -10px 30px;
    padding: 15px 100px 15px 45px;
    display: block;
  }
  #main > #content #query_form[action*='agile/board'] h2 > span:nth-last-child(1) {
    position: static;
    padding: 0;
    float: right;
    margin: -4px 0 0 20px;
  }
  #main > #content #query_form[action*='agile/board'] h2 > span:nth-last-child(1):after {
    display: none;
  }
  .controller-agile_boards #main > #content > .contextual {
    right: 10px;
  }
  .controller-agile_boards #main > #content > .contextual a {
    border: none;
  }
  .controller-agile_boards #main .icon-fullscreen {
    display: none;
    position: absolute;
    top: -999999px;
    left: -999999px;
  }
  .controller-agile_boards .autoscroll {
    overflow-x: auto !important;
  }
  .controller-agile_boards .container-fixed {
    min-width: 1000px;
  }
  #content table.list.issues-board.sticky {
    top: 51px;
  }
  #content .card-fields .floating {
    display: block;
  }
  #main #content fieldset.filter-box .open-box .admin-filter .card-fields label {
    width: 200px;
    margin-right: 10px !important;
  }
  #main .agile_options_field {
    width: 100%;
    padding: 0 !important;
    flex-wrap: wrap;
  }
  /* START AGILE ADMIN PART */
  /* START AGILE COLOR */
  .controller-agile_colors #main > #content > h2 {
    padding-right: 10px;
  }
  .controller-agile_colors #main > #content > h2 .jcf-select,
  .controller-agile_colors #main > #content > h2 .select2 {
    max-width: 200px;
  }
  /* END AGILE COLOR */
  /* END AGILE ADMIN PART */
  table.list.issues-board .issue-card div.quick-edit-card {
    opacity: 1 !important;
    display: block !important;
  }
}
@media screen and (max-width: 650px) {
  table.list.issues-board .issue-card div.quick-edit-card {
    opacity: 1 !important;
    display: none !important;
  }
  #content .card-fields .floating {
    width: 100%;
    margin-right: 0;
  }
  #main > #content #query_form[action*='agile/board'] h2 {
    background-color: var(--bg-box);
    background-position: 10px 12px;
    background-size: 17px auto;
    display: flex;
  }
  #main > #content #query_form[action*='agile/board'] h2 .revo-icon-info {
    order: 1;
  }
  #main > #content #query_form[action*='agile/board'] h2 .live_search {
    order: 2;
  }
  #main > #content #query_form[action*='agile/board'] h2 > span:nth-last-child(1) {
    float: none;
    display: block;
    margin: 10px 0 0 !important;
    max-width: 100%;
    width: 100%;
  }
  /* START AGILE ADMIN PART */
  /* START AGILE COLOR */
  .controller-agile_colors #main > #content > h2 .jcf-select,
  .controller-agile_colors #main > #content > h2 .select2 {
    max-width: 150px;
  }
  /* END AGILE COLOR */
  /* END AGILE ADMIN PART */
}
body .simplecolorpicker.button {
  height: 18px;
  width: 18px;
  background: var(--bg-fff);
  border: 1px solid var(--border-color-content);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  cursor: pointer;
  margin: 0;
}
body .simplecolorpicker.picker {
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
  border: 1px solid var(--border-color-content);
}
body .simplecolorpicker span.color {
  height: 18px;
  width: 18px;
  -webkit-border-radius: var(--border-radius-small);
  -moz-border-radius: var(--border-radius-small);
  border-radius: var(--border-radius-small);
}
.controller-projects.action-show #main > #content #query_form[action*='agile/board'] h2 {
  display: block;
  width: 100%;
  background-size: 22px 22px;
  background-repeat: no-repeat;
  background-position: 0 50%;
  padding: 0 0 0 25px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 0;
  font-size: 1.1428rem;
  margin: 0 0 20px;
}
.controller-projects.action-show #main > #content #query_form[action*='agile/board'] h2:after {
  top: 0;
  width: 22px;
  height: 22px;
  content: "\E0D8";
  display: block;
  clear: both;
  position: absolute;
  left: 0;
  margin: 0;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 22px;
  line-height: 22px;
  color: var(--icon-color);
}
/* END  AGILE PAGE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START REDMINEUP PRODUKTS */
#content form .tabular #products_form {
  color: var(--text-color-main);
}
#content #products_inputs {
  flex: 1 0 auto;
  width: 100%;
}
#content #products_inputs:empty {
  display: none;
}
#content #products_inputs + span {
  position: absolute;
  top: 0;
  right: 0;
}
.product .redmine-evolution-attachments {
  margin-bottom: 0;
}
.product .subject_header td {
  background: var(--bg-box);
  padding: 15px 10px;
  vertical-align: middle;
  border-right: none;
  -webkit-transition: background var(--time-hover) ease-in-out;
  -moz-transition: background var(--time-hover) ease-in-out;
  -ms-transition: background var(--time-hover) ease-in-out;
  -o-transition: background var(--time-hover) ease-in-out;
  transition: background var(--time-hover) ease-in-out;
}
.product .subject_header td.name {
  font-size: 0.85714286rem;
  -webkit-border-radius: 0 var(--border-radius) var(--border-radius) 0;
  -moz-border-radius: 0 var(--border-radius) var(--border-radius) 0;
  border-radius: 0 var(--border-radius) var(--border-radius) 0;
}
.product .subject_header td.avatar {
  -webkit-border-radius: var(--border-radius) 0 0 var(--border-radius);
  -moz-border-radius: var(--border-radius) 0 0 var(--border-radius);
  border-radius: var(--border-radius) 0 0 var(--border-radius);
}
.product .subject_header h1 {
  font-size: 1.1428rem;
  line-height: 1.2;
  margin: 0 0 3px ;
}
.product .subject_header h1 a {
  color: var(--text-color-main);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.product .subject_header h1 a:hover {
  color: var(--color-main-color);
}
#products_form {
  padding-right: 35px !important;
  position: relative;
}
#products_form .product_fields {
  display: flex;
  align-items: center;
}
#products_form .delete {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0 5px 0 10px;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#products_form .delete:after {
  content: "\E104";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#products_form .delete:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#products_form .delete:hover {
  color: var(--icon-color-hover-bg);
}
#products_form .delete:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#products_form .delete.selected {
  color: var(--icon_color_active-bg);
}
#products_form .delete.selected:before {
  background: var(--icon_bg_active-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#products_form .delete.disabled {
  opacity: 0.3;
  color: var(--icon-color-disabled);
}
#products_form .delete.disabled:hover {
  color: var(--icon-color-disabled);
}
#products_form .delete.disabled:hover:before {
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
}
#products_form .delete img {
  display: none;
}
#main table.product-lines.form td {
  height: auto;
}
.controller-products.action-show #main div.issue {
  padding: 0;
}
.controller-products.action-show #main div.issue hr {
  margin: 15px 0;
}
/* END REDMINEUP PRODUKTS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA */
@media screen and (max-width: 1024px) {
  #products_form {
    padding-right: 0 !important;
  }
  #products_form label {
    padding: 5px 0 10px !important;
  }
  #products_form .delete:before {
    display: none;
  }
}
@media screen and (max-width: 650px) {
  .product.details .subject_header {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
  }
  .product.details .subject_header tr {
    display: block;
    overflow: hidden;
    width: 100%;
  }
  .product.details .subject_header tr td {
    overflow: hidden;
    display: block;
    width: 100%;
  }
  .product.details .subject_header tr td:first-child,
  .product.details .subject_header tr td:last-child {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  .product.details .subject_header tr td.avatar {
    padding: 10px 10px 0;
  }
  .product.details .subject_header tr td.avatar a,
  .product.details .subject_header tr td.avatar img {
    display: block;
    width: 64px;
    height: 64px;
  }
  #content #products_inputs .product_fields {
    border-bottom: 1px solid var(--border-color);
    padding: 5px 35px 5px 0;
    margin: 5px 0;
    position: relative;
    min-height: 30px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  #content #products_inputs .product_fields .delete {
    position: absolute;
    top: 50%;
    right: 0;
    margin: -15px 0 0;
  }
  .product .subject_header tr {
    display: block;
  }
  .product .subject_header td {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .product .subject_header tr {
    display: block;
  }
  .product .subject_header td {
    display: block;
    width: 100%;
  }
}
/* START MEDIA */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START RESOURCES */
#wrapper #query_form_with_buttons > p.contextual {
  margin: 0;
}
.controller-resource_bookings .chart-type.month_view_chart {
  margin-right: 10px;
}
.controller-resource_bookings #query_form_with_buttons .buttons {
  max-width: 700px;
  margin: 0 0 30px;
  display: flex;
}
.controller-resource_bookings #query_form_with_buttons .buttons #months {
  max-width: 100px;
}
.controller-resource_bookings #query_form_with_buttons .buttons .period_picker_input {
  margin: 0 10px 0 10px !important;
}
.controller-resource_bookings #query_form_with_buttons #months {
  margin: 0 10px 0 0;
  width: auto;
}
.controller-resource_bookings #query_form_with_buttons #query_date_from,
.controller-resource_bookings #query_form_with_buttons .period_picker_input {
  width: auto;
  margin-right: 10px !important;
}
.controller-resource_bookings a[accesskey="p"],
.controller-resource_bookings a[accesskey="n"] {
  text-decoration: none;
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: 0 !important;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  width: auto;
  height: auto;
}
.controller-resource_bookings a[accesskey="p"]:before,
.controller-resource_bookings a[accesskey="n"]:before,
.controller-resource_bookings a[accesskey="p"]:after,
.controller-resource_bookings a[accesskey="n"]:after {
  display: none;
}
.controller-resource_bookings a[accesskey="p"]:hover,
.controller-resource_bookings a[accesskey="n"]:hover {
  text-decoration: none;
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#content .resource-planning-chart {
  margin: 0 0 20px;
}
#content .resource-planning-chart .icon {
  line-height: inherit;
  min-height: auto;
}
#content .resource-planning-chart .task_done {
  border-color: var(--color-main-color);
  background: var(--light-bg);
}
#content .resource-planning-chart .red_bar {
  background: var(--notice-error-bg);
  border-color: var(--notice-error-main);
}
#content .resource-planning-chart .yellow_bar {
  background: var(--notice-worning-bg);
  border-color: var(--notice-worning-main);
}
#content .resource-planning-chart .green_bar {
  background-color: var(--notice-successfu-bg);
  border-color: var(--notice-successfu-main);
}
#content .resource-planning-chart .tooltip:hover .tip {
  border-width: 0;
  margin-top: 0;
  border-left-width: 4px;
  padding: 10px;
  -webkit-transition: margin-top var(--time-hover) ease-in-out;
  -moz-transition: margin-top var(--time-hover) ease-in-out;
  -ms-transition: margin-top var(--time-hover) ease-in-out;
  -o-transition: margin-top var(--time-hover) ease-in-out;
  transition: margin-top var(--time-hover) ease-in-out;
}
#content .resource-planning-chart .tip {
  margin-top: 10px;
  border-color: var(--color-main-color);
  background: var(--bg-other);
  color: var(--text-color-main);
  font-size: 0.85714286rem !important;
  line-height: 1rem !important;
  -webkit-box-shadow: var(--small-box-shadow);
  -moz-box-shadow: var(--small-box-shadow);
  box-shadow: var(--small-box-shadow);
  -webkit-transition: margin-top var(--time-hover) ease-in-out;
  -moz-transition: margin-top var(--time-hover) ease-in-out;
  -ms-transition: margin-top var(--time-hover) ease-in-out;
  -o-transition: margin-top var(--time-hover) ease-in-out;
  transition: margin-top var(--time-hover) ease-in-out;
}
#content .resource-planning-chart .tip a {
  color: var(--color-main-color) !important;
}
#content .resource-planning-chart .red_bar + .tooltip:hover .tip {
  background: var(--notice-error-bg);
  border-color: var(--notice-error-main);
  color: var(--text-color-main);
}
#content .resource-planning-chart .yellow_bar + .tooltip:hover .tip {
  background: var(--notice-worning-bg);
  border-color: var(--notice-worning-main);
  color: var(--text-color-main);
}
#content .resource-planning-chart .green_bar + .tooltip:hover .tip {
  background-color: var(--notice-successfu-bg);
  border-color: var(--notice-successfu-main);
  color: var(--text-color-main);
}
#content .resource-planning-chart + table a {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 10px 0 0;
  text-decoration: none;
}
#content .resource-planning-chart + table a:after {
  display: none;
}
#content .resource-planning-chart + table a:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#content .resource-planning-chart + table a:disabled {
  background: var(--button-main-bg-disabled);
  cursor: var(--button-main-color-disabled);
}
#content .resource-planning-chart + table a:disabled:hover {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
}
#resource_booking_issue_id ~ .select2 .select2-selection--single {
  padding: 0 30px 0 35px;
}
/* END  RESOURCES */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MRDIA */
@media screen and (max-width: 1024px) {
  .controller-resource_bookings.action-index .resource-planning-chart .user-subject,
  .controller-resource_bookings.action-index .resource-planning-chart .user-line,
  .controller-resource_bookings.action-index .resource-planning-chart .issue-line {
    font-size: 0.8em;
    padding: 0 2px;
  }
}
@media screen and (max-width: 768px) {
  .controller-resource_bookings #query_form_with_buttons .buttons #query_date_from {
    max-width: 200px;
  }
}
@media screen and (max-width: 550px) {
  .controller-resource_bookings a[accesskey="p"],
  .controller-resource_bookings a[accesskey="n"] {
    padding: 8px 10px;
  }
}
@media screen and (max-width: 480px) {
  .controller-resource_bookings .chart-type.month_view_chart {
    display: block;
    width: 100%;
    margin-right: 0;
  }
  .controller-resource_bookings #query_form_with_buttons .buttons {
    padding-top: 10px;
    flex-wrap: wrap;
  }
  .controller-resource_bookings #query_form_with_buttons .buttons #query_date_from {
    min-width: 100%;
    margin: 10px 0 !important;
  }
  .controller-resource_bookings #query_form_with_buttons .buttons #months {
    min-width: 100%;
    margin-bottom: 10px;
  }
  .controller-resource_bookings .resource-planning-chart + table tr {
    display: block;
  }
  .controller-resource_bookings .resource-planning-chart + table tr td {
    display: block;
    width: 100%;
  }
  .controller-resource_bookings .resource-planning-chart + table tr td a {
    margin: 0 !important;
    display: block;
    width: 100%;
  }
}
/* END MRDIA */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START BACKLOG */
#main > #content .load_more {
  margin: 20px 0 0;
}
#main > #content .load_more .pagination {
  position: static;
  width: auto;
}
#main > #content .load_more .pagination a[href*="load_more"] {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: 0 !important;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 10px 0 0;
  width: auto;
  height: auto;
  white-space: nowrap;
  text-decoration: none;
}
#main > #content .load_more .pagination a[href*="load_more"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#content form .planning-board-wrapper .column-header em.info {
  color: var(--bg-fff);
  display: block;
  padding: 0;
  margin: 0 !important;
}
#content form .planning-board-wrapper .column-header input[type="text"] {
  border-color: var(--bg-fff);
}
#main .planning-board .column-content {
  border: 0;
  background: none;
  margin: 0 10px 0 0;
}
#main .planning-board .sprint-name,
#main .planning-board .sprint-estimate {
  font-weight: bold;
}
#main .planning-board .issue-card {
  padding: 10px;
  margin: 0 0 5px;
  border-width: 0;
  border-left-width: 4px;
}
#main .planning-board .issue-card .fields {
  font-size: 0.85714286rem;
  line-height: 1.4;
  color: var(--text-color-main);
}
#main .planning-board .issue-card .fields p {
  margin: 5px 0 0;
}
#main .planning-board .issue-card .fields .hours {
  font-weight: bold;
}
#main .planning-board .issue-card:not(.context-menu-selection) .attributes {
  color: var(--text-color-main);
}
#main .planning-board .issue-card .attributes,
#main .planning-board .issue-card span.hours {
  font-size: 0.85714286rem;
  line-height: 1.4;
}
#main .planning-board .column-header {
  padding: 10px;
  border: 0;
  margin: 0 0 10px;
  background: var(--color-main-color);
  color: var(--color-main-color-text);
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
#main .planning-board .column-header .version-name {
  color: var(--color-main-color-text);
}
#main .planning-board .planning-board-wrapper .description .icon {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#main .planning-board div.quick-edit-card {
  padding: 5px;
  width: auto;
  height: auto;
  bottom: 0;
  right: 0;
  border-radius: 20px 0 0 20px;
  z-index: 2;
  border: 0;
  opacity: 0.7;
  -webkit-transition: all var(--time-hover) ease-in-out;
  -moz-transition: all var(--time-hover) ease-in-out;
  -ms-transition: all var(--time-hover) ease-in-out;
  -o-transition: all var(--time-hover) ease-in-out;
  transition: all var(--time-hover) ease-in-out;
}
#main .planning-board div.quick-edit-card:hover {
  opacity: 1;
}
#main .planning-board div.quick-edit-card a {
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  background: var(--bg-fff);
  position: relative;
  margin: 0 0 0 4px;
  color: var(--color-dark-grey);
}
#main .planning-board div.quick-edit-card a img {
  display: none;
}
#main .planning-board div.quick-edit-card a:before {
  content: '';
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main .planning-board div.quick-edit-card a:after {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
}
#main .planning-board div.quick-edit-card a.quick-edit:after {
  content: "\E113";
}
#main .planning-board div.quick-edit-card a.add-comment:after {
  content: "\E0F6";
}
#main .planning-board div.quick-edit-card a:hover {
  color: var(--icon-color-hover);
}
#main .planning-board div.quick-edit-card a:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main .planning-board div.sub-issues {
  font-size: inherit;
  padding-top: 10px;
  margin-top: 10px;
  border-color: var(--border-color);
}
#main .planning-board div.sub-issues ul {
  font-weight: 400;
}
#main .planning-board div.sub-issues ul li {
  margin: 0 0 5px;
}
#main .planning-board .info {
  padding-top: 10px;
  margin-top: 10px !important;
  border-color: var(--border-color);
  font-size: inherit;
  line-height: inherit;
}
#main .planning-board .info .user {
  position: relative;
  padding: 0;
  font-weight: bold;
  display: flex;
  align-items: center;
}
#main .planning-board .info .user:after {
  content: '';
  display: none;
}
#main .planning-board .info .user img {
  display: block;
  margin: 0 5px 0 0;
}
#main .planning-board span.hours {
  color: var(--color-dark-grey);
}
#main .planning-board .icon-comment {
  width: 100% !important;
  display: block;
  padding: 0 0 0 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  min-height: 16px;
  height: auto !important;
  line-height: 1.1428rem;
}
#main .planning-board .icon-comment:after {
  width: 16px;
  height: 16px;
  font-size: 1.1428rem;
  line-height: 1.1428rem;
}
#main .planning-board .quick-comment {
  margin: 10px 0 0;
  padding: 0;
}
#main .planning-board .quick-comment textarea {
  margin-bottom: 10px;
}
#main .planning-board .quick-comment button[type="button"],
#main .planning-board .quick-comment button[type="submit"] {
  padding: 5px 10px;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-main-bg);
  border: none;
  color: var(--button-main-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 !important;
}
#main .planning-board .quick-comment button[type="button"]:hover,
#main .planning-board .quick-comment button[type="submit"]:hover {
  background: var(--button-main-bg-hover);
  color: var(--button-main-color-hover);
}
#main .planning-board .quick-comment button[type="button"]:disabled,
#main .planning-board .quick-comment button[type="submit"]:disabled {
  background: var(--button-main-bg-disabled);
  cursor: var(--button-main-color-disabled);
}
#main .planning-board .quick-comment button[type="button"]:disabled:hover,
#main .planning-board .quick-comment button[type="submit"]:disabled:hover {
  background: var(--button-main-bg-disabled);
  color: var(--button-main-color-disabled);
}
#main .planning-board .quick-comment button[type="button"] + a,
#main .planning-board .quick-comment button[type="submit"] + a {
  display: inline-block;
  border: none;
  padding: 5px 10px;
  width: auto;
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
  font-weight: var(--button-font-weight);
  color: var(--button-color);
  background: var(--button-bg);
  text-decoration: none;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main .planning-board .quick-comment button[type="button"] + a:after,
#main .planning-board .quick-comment button[type="submit"] + a:after,
#main .planning-board .quick-comment button[type="button"] + a:before,
#main .planning-board .quick-comment button[type="submit"] + a:before {
  display: none;
}
#main .planning-board .quick-comment button[type="button"] + a:hover,
#main .planning-board .quick-comment button[type="submit"] + a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
#main .planning-board .context-menu-selection a,
#main .planning-board .context-menu-selection a:hover {
  color: inherit !important;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  .planning-board-wrapper {
    overflow-x: auto;
  }
  .controller-agile_versions.has-footer #main > #content {
    margin-bottom: 0 !important;
  }
  .controller-agile_versions #main > #content {
    margin-bottom: 0 !important;
    padding-bottom: 0 ;
  }
}
/* END BACKLOG */
/* --------------------- https://redmine-evolution.com/ -- */
/* START DEAL */
#deal_form .deal_items {
  padding: 40px 0 0;
  border: 0;
  position: relative;
}
#deal_form .deal_items legend {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: bold;
  color: var(--color-main-color);
}
#deal_form .deal_items table.product-lines.form tr.line-total td.add-link {
  padding: 10px 5px 10px 0;
  vertical-align: top;
}
#deal_form .deal_items table.product-lines.form tr.line-total td.add-link a {
  padding: 8px 30px;
  font-size: 1rem;
  line-height: 1rem;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  box-sizing: border-box;
  background: var(--button-bg);
  border: none;
  color: var(--button-color);
  display: inline-block;
  vertical-align: top;
  align-items: center;
  justify-content: center;
  font-weight: var(--button-font-weight);
  margin: 0 !important;
}
#deal_form .deal_items table.product-lines.form tr.line-total td.add-link a:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
  text-decoration: none;
}
#deal_form .deal_items table.product-lines.form tr.line-total td {
  border-bottom: 1px solid var(--border-color-content);
}
#deal_form .deal_items table.product-lines.form tr.line-total td.total-data.total {
  vertical-align: top;
  padding: 15px 5px;
}
#deal_form .deal_items table.product-lines.form tr.line-total td {
  border: 0 !important;
}
#deal_form .deal_items table.product-lines.form tr.line.fields td.item {
  padding: 10px 5px;
  border-color: var(--border-color-content);
}
#deal_form .deal_items table.product-lines.form tr.line.fields td.item .info {
  margin: 0;
}
#deal_form .deal_items table.product-lines.form .tax-fields,
#deal_form .deal_items table.product-lines.form .discount-fields {
  display: flex;
  align-items: center;
  font-weight: 700;
}
#deal_form .deal_items table.product-lines.form .tax-fields input[type="text"],
#deal_form .deal_items table.product-lines.form .discount-fields input[type="text"] {
  margin: 0 5px 0 0;
}
#deal_form .deal_items table.product-lines.form #new_product_code {
  margin: 0 0 10px;
}
#deal_form textarea {
  min-height: 45px;
  width: 100%;
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START BORD BOX */
.sales-funnel span.tag-label-color {
  position: relative;
  margin-top: 30px !important;
}
.sales-funnel span.tag-label-color a,
.sales-funnel span.tag-label-color > span {
  position: absolute;
  top: -20px;
  left: 0;
  color: var(--text-color-main);
}
#main .list.deal-board {
  -webkit-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  -moz-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  margin: 0;
}
#main .list.deal-board th {
  font-size: 1.2857rem;
  line-height: 1.2857rem;
  text-transform: uppercase;
  color: var(--text-color-main);
  padding: 20px;
  border-bottom: 0;
}
#main .list.deal-board td {
  padding: 0 10px;
  background: var(--bg-fff) !important;
}
#main .list.deal-board .total th {
  border-bottom: 0;
}
#main .list.deal-board .deal-status-col .deal-card {
  border: 0;
  border-left: 4px solid var(--color-main-color);
  padding: 10px;
  margin: 0 0 4px;
}
#main .list.deal-board .deal-status-col .deal-card p {
  margin: 0 0 5px;
}
#main .list.deal-board .deal-status-col.open .deal-card {
  border-color: var(--color-main-color);
  background-color: var(--light-bg);
}
#main .list.deal-board .deal-status-col.open .deal-card .info {
  border-color: var(--border-color-content);
}
#main .list.deal-board .deal-status-col.won .deal-card {
  border-color: var(--notice-successfu-main);
  background-color: var(--notice-successfu-bg);
}
#main .list.deal-board .deal-status-col.won .deal-card .info {
  border-color: var(--border-color-content);
}
#main .list.deal-board .deal-status-col.lost .deal-card {
  border-color: var(--notice-error-main);
  background-color: var(--notice-error-bg);
}
#main .list.deal-board .deal-status-col.lost .deal-card .info {
  border-color: var(--border-color-content);
}
#main .list.sales-funnel {
  margin: 20px 0;
}
#main .list.sales-funnel .sales-funnel {
  text-align: left;
}
#main .list.sales-funnel .sales-funnel span.tag-label-color {
  font-size: 0.85714286rem;
  line-height: 0.85714286rem;
  margin: 5px 0;
  padding: 5px 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#main .list.sales-funnel th {
  background-color: var(--bg-box);
}
#main .list.sales-funnel .total th {
  border-bottom: 0;
}
#main .list.deals {
  margin: 20px 0;
}
#main .list.deals th {
  background: var(--bg-box);
}
#main .list.deals .total > th {
  padding: 0;
  border-bottom: 0;
}
#main .list.deals .total > th table {
  margin: 0 !important;
  text-align: center;
}
#main .list.deals .total > th table th {
  background: none;
  vertical-align: middle;
  padding: 10px;
}
#import-form button[name="previous"] {
  display: inline-block;
  border: none;
  padding: 8px 15px;
  width: auto;
  height: 30px;
  font-size: 1rem;
  line-height: 1rem;
  font-weight: var(--button-font-weight);
  color: var(--button-color);
  background: var(--button-bg);
  text-decoration: none;
  -webkit-border-radius: var(--button-border-radius);
  -moz-border-radius: var(--button-border-radius);
  border-radius: var(--button-border-radius);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  margin: 0 10px 0 0;
}
#import-form button[name="previous"]:after,
#import-form button[name="previous"]:before {
  display: none;
}
#import-form button[name="previous"]:hover {
  background: var(--button-bg-hover);
  color: var(--button-color-hover);
}
/* END BORD BOX */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ONE DEAL */
#content div.deal {
  border: 0;
  background: none;
  padding: 0;
  margin: 0 0 30px;
}
#content div.deal .subject_header {
  margin-bottom: 20px;
}
#content div.deal .deal-lines {
  margin: 0 0 30px;
}
#content div.deal .subject_header {
  border-spacing: 0;
  border-collapse: collapse;
  vertical-align: middle;
}
#content div.deal .subject_header td {
  border: 0;
  background: var(--bg-box);
  padding: 15px 10px;
  vertical-align: middle !important;
}
#content div.deal .subject_header td:first-child {
  -webkit-border-radius: var(--border-radius) 0 0 var(--border-radius);
  -moz-border-radius: var(--border-radius) 0 0 var(--border-radius);
  border-radius: var(--border-radius) 0 0 var(--border-radius);
}
#content div.deal .subject_header td:last-child {
  -webkit-border-radius: 0 var(--border-radius) var(--border-radius) 0;
  -moz-border-radius: 0 var(--border-radius) var(--border-radius) 0;
  border-radius: 0 var(--border-radius) var(--border-radius) 0;
}
#content div.deal .subject_header td.avatar {
  text-align: right;
  width: 57px;
}
#content div.deal .subject_header h1 {
  font-size: 1.42857143rem;
  line-height: 1.2;
  margin: 0 0 3px !important;
}
#content div.deal p:empty {
  display: none;
}
#content div.deal .subject_info {
  color: var(--icon-color);
}
#content div.deal .subject_info li {
  display: block;
  position: relative;
  margin: 3px 0;
  line-height: 22px;
  white-space: nowrap;
  font-weight: bold;
}
#content div.deal .subject_info li:after {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  margin: 0;
  overflow: hidden;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 22px;
  line-height: 1;
  width: var(--icon-width-small);
  height: var(--icon-width-small);
  color: var(--icon-color);
}
#content div.deal .subject_info li[class*="icon-money"] {
  color: var(--text-color-main);
}
#content div.deal .subject_info li[class*="icon-money"]:after {
  color: var(--text-color-main);
  content: "\E147";
}
#content div.deal .subject_info li.icon-date:after {
  content: "\E0ED";
}
#content div.deal .subject_info li.icon-rosette:after {
  content: "\E17A";
}
#content div.deal hr {
  display: none;
}
#content div.deal .list.product-lines {
  margin: 0 0 20px;
  font-size: 1rem;
  line-height: 1.4;
  border: 1px solid var(--border-color);
}
#content div.deal .list.product-lines thead th {
  border-bottom: 1px solid var(--border-color);
}
#content div.deal .list.product-lines td {
  padding: 7px 14px;
  border: 0;
  border-left: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
}
#content div.deal .list.product-lines td:first-child {
  border-left: 0;
}
#content div.deal .list.product-lines td:last-child {
  border-right: 0;
}
#content div.deal .list.product-lines td.item img.gravatar {
  float: none;
}
#content div.deal .list.product-lines th {
  background-color: var(--bg-box);
  padding: 15px 10px;
}
#content div.deal .list.product-lines .total.delimiter {
  background-color: var(--bg-box) !important;
}
#content div.deal .list.product-lines .total th {
  padding: 5px 10px;
}
#content div.deal .list.product-lines .total th:empty {
  display: none;
}
#content div.deal #note_attributes textarea {
  margin: 0 0 20px;
}
#content div.deal #note_attributes.box > p.extended-attributes {
  padding: 0;
  margin: 0 0 15px;
  display: flex;
  align-items: center;
}
#content div.deal #note_attributes.box > p.extended-attributes label {
  margin: 0 10px 0 20px !important;
}
#content div.deal #note_attributes #note_attachments {
  padding: 0 !important;
}
#content #comments h3 {
  position: relative;
  border-bottom: 1px solid var(--border-color-content);
  padding: 0 0 7px;
  color: var(--color-main-color);
  font-size: 1.1428rem;
  font-weight: 600;
}
#content #comments h3:before {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 60px;
  height: 4px;
  background: var(--color-main-color);
  border-radius: 2px;
}
#content #comments table h4 {
  margin: 0 0 10px !important;
  font-size: 1rem;
  border: 0;
  font-weight: normal;
  line-height: 26px;
}
#content #comments table h4 a {
  font-weight: bold;
}
#content #comments table h4 .icon {
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  padding: 0;
  line-height: var(--icon-smaller-width);
  margin-right: 5px;
}
#content #comments table h4 .icon:after {
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  color: var(--color-dark-grey);
}
/* END ONE DEAL */
/* --------------------- https://redmine-evolution.com/ -- */
/* START DEAL NEW ADMIN PAGE */
.controller-deal_statuses.action-new #content > .tabular {
  padding: 0;
}
.controller-deal_statuses.action-new #content > .tabular .tabular {
  padding: 20px;
}
/* END DEAL NEW ADMIN PAGE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START SIDEBAR */
#sidebar .deals_statistics tr {
  display: block;
  width: 100%;
}
#sidebar .deals_statistics tr td {
  display: block;
  width: 100%;
  padding: 5px 0;
}
#sidebar .deals_statistics tr td:last-child {
  border-bottom: 1px solid var(--text-color-main);
}
#sidebar .deals_statistics tr td:empty {
  display: none;
}
/* END SIDEBAR */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MENU FOR MOBILE */
#wrapper .flyout-menu #deals_statistics {
  padding: 0;
}
#wrapper .flyout-menu #deals_statistics .contextual {
  padding: 5px 10px 0 0;
  margin: 0;
}
#wrapper .flyout-menu #deals_statistics .contextual a {
  background: none;
  display: block;
  position: relative;
  overflow: hidden;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  font-size: 0;
  line-height: 0;
  color: var(--text-color-main);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 2;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu #deals_statistics .contextual a:after {
  content: "\E18A";
  position: absolute;
  top: 50%;
  margin: -13px 0 0;
  left: 5px;
  display: block;
  clear: both;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  color: var(--icon-color-bg);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#wrapper .flyout-menu #deals_statistics .contextual a:before {
  background: var(--icon_bg-bg);
}
#wrapper .flyout-menu #deals_statistics .contextual a:hover {
  text-decoration: none;
  color: var(--icon-color-hover-bg);
  border: 0;
}
#wrapper .flyout-menu #deals_statistics .contextual a:hover:after {
  color: var(--icon-color-hover-bg);
}
#wrapper .flyout-menu #deals_statistics .contextual a:hover:before {
  width: 100%;
  background: var(--icon_bg_hover-bg);
}
#wrapper .flyout-menu .deals_statistics {
  border-collapse: collapse;
  width: 100%;
}
#wrapper .flyout-menu .deals_statistics tr td {
  padding: 10px;
  border-bottom: 1px solid var(--bg-fff);
}
#wrapper .flyout-menu .deals_statistics tr td:last-child {
  padding: 10px 10px 10px 0;
}
#wrapper .flyout-menu .deals_statistics br {
  display: block;
}
#wrapper .flyout-menu .deals_statistics strong {
  display: block;
  text-align: right;
  font-size: 0px;
  line-height: 0px;
}
#wrapper .flyout-menu .deals_statistics strong span {
  display: block;
  font-size: 1rem;
  line-height: 1.14;
}
/* END MENU FOR MOBILE */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA */
@media screen and (max-width: 1024px) {
  #main > #content form#deal_form .tabular p label:first-child[for="Deal_items"] + span,
  #main > #content form#deal_form .box p label:first-child[for="Deal_items"] + span {
    flex: 1 0 auto;
  }
  #main > #content form#deal_form .tabular p label:first-child[for="Deal_items"] + span a,
  #main > #content form#deal_form .box p label:first-child[for="Deal_items"] + span a {
    float: right;
  }
  #content #comments table h4 .icon:after {
    color: var(--icon-color-bg);
  }
  .controller-deal_statuses.action-new #content > .tabular .tabular {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 650px) {
  #main > #content form#deal_form .tabular p label:first-child[for="Deal_items"],
  #main > #content form#deal_form .box p label:first-child[for="Deal_items"] {
    width: auto !important;
    flex: 1 0 auto;
  }
  #content div.deal .subject_header {
    width: calc(100% + 20px);
    margin-left: -10px;
    margin-right: -10px;
  }
  #content div.deal .subject_header tr {
    display: flex;
    flex-wrap: wrap;
  }
  #content div.deal .subject_header tr td {
    padding: 10px;
    display: block;
    width: 100% !important;
    text-align: left !important;
  }
  #content div.deal .subject_header tr td:first-child,
  #content div.deal .subject_header tr td:last-child {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #content div.deal #note_attributes.box > p.extended-attributes label {
    margin: 0 !important;
  }
  #content div.deal #note_attributes.box > p.extended-attributes #note_note_time {
    margin-top: 10px !important;
  }
  #content div.deal {
    margin: 0 0 10px;
  }
  #deal_form .deal_items {
    padding: 5px 10px 15px;
  }
  #deal_form .deal_items legend {
    position: relative;
    top: 0;
    left: 0;
    padding: 0;
    display: block;
    width: 100%;
  }
  #deal_form .deal_items legend:before {
    content: '';
    display: block;
    clear: both;
    position: absolute;
    top: 0;
    left: -10px;
    width: calc(100% + 20px);
    height: 100%;
    background: var(--bg-box);
    z-index: -1;
  }
}
/* END MEDIA */
/* --------------------- https://redmine-evolution.com/ -- */
/* START EXPENSES */
/* START TABLE */
#main #contact_list.expense_list .list tr.total > th {
  padding: 15px 10px;
}
#main #contact_list .contacts.expenses th {
  background: var(--bg-box);
  vertical-align: middle;
  padding: 15px 10px;
}
#main #expense_form a.icon-only {
  color: var(--icon-color-bg);
}
#main #expense_form a.icon-only:before {
  background: var(--icon_bg-bg);
}
#main #expense_form a.icon-only:hover {
  color: var(--icon-color-hover-bg);
}
#main #expense_form a.icon-only:hover:before {
  background: var(--icon_bg_hover-bg);
}
#expense_contact_id_add_link img {
  display: none;
}
/* END TABLE */
/* START EXPENSES*/
@media screen and (max-width: 1024px) {
  #main #expense_form a.icon-only:before {
    display: none;
  }
}
/* END ACTIVITY */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START OPERATIONS */
#main #contact_list .list.operations .total > th {
  padding: 15px 10px;
  border-top: 1px solid var(--border-color);
}
.operation_list tr.not-approved td,
.operation_list table.list tbody tr.not-approved:hover td {
  background: var(--notice-error-bg);
  border-color: var(--border-color-content);
  color: var(--priority-5);
}
/* --------------------- https://redmine-evolution.com/ -- */
/* START ONE OPERATIONS */
#main div.issue.operation {
  padding: 0;
}
#main div.issue.operation hr {
  display: none;
}
#main div.issue.operation #invoices,
#main div.issue.operation #relations {
  position: relative;
  border-bottom: 1px solid var(--border-color-content);
  background: var(--bg-box);
  padding: 15px 30px 10px;
  margin: 0 -30px 20px;
}
#main div.issue.operation #invoices p,
#main div.issue.operation #relations p {
  margin: 0;
}
#main div.issue.operation #invoices p > strong,
#main div.issue.operation #relations p > strong {
  display: block;
  margin: 0 0 15px;
}
#main div.issue.operation #invoices .contextual,
#main div.issue.operation #relations .contextual {
  right: 30px;
}
#main div.issue.operation #invoices .contextual a,
#main div.issue.operation #relations .contextual a {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  vertical-align: middle;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main div.issue.operation #invoices .contextual a:after,
#main div.issue.operation #relations .contextual a:after {
  content: "\E14D";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main div.issue.operation #invoices .contextual a:before,
#main div.issue.operation #relations .contextual a:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main div.issue.operation #invoices .contextual a:hover,
#main div.issue.operation #relations .contextual a:hover {
  color: var(--icon-color-hover-bg);
}
#main div.issue.operation #invoices .contextual a:hover:before,
#main div.issue.operation #relations .contextual a:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main div.issue.operation #relations {
  border-top: 1px solid var(--border-color-content);
  border-bottom: 1px solid var(--border-color-content);
  margin: 0 -30px;
}
#main div.issue.operation a[href*=".pdf"] {
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  vertical-align: middle;
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main div.issue.operation a[href*=".pdf"]:after {
  content: "\E15E";
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-font-size);
  line-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main div.issue.operation a[href*=".pdf"]:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg-bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
}
#main div.issue.operation a[href*=".pdf"]:hover {
  color: var(--icon-color-hover-bg);
}
#main div.issue.operation a[href*=".pdf"]:hover:before {
  background: var(--icon_bg_hover-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main div.issue.operation a[href*=".pdf"].selected {
  color: var(--icon_color_active-bg);
}
#main div.issue.operation a[href*=".pdf"].selected:before {
  background: var(--icon_bg_active-bg);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
#main div.issue.operation a[href*=".pdf"].disabled {
  opacity: 0.3;
}
#main div.issue.operation a[href*=".pdf"].disabled:hover {
  color: var(--icon-color-disabled);
}
#main div.issue.operation a[href*=".pdf"].disabled:hover:before {
  background: var(--icon_bg-disabled);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
}
#main div.issue.operation a[href*=".pdf"] img {
  display: none;
}
#main div.issue.operation .icon-invoice {
  font-weight: bold;
  font-size: 0.85714286rem;
  line-height: 26px;
  width: auto;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  padding: 0 0 0 30px;
  margin: 0 10px 0 0;
  text-decoration: none;
  color: var(--icon-color-bg);
}
#main div.issue.operation .icon-invoice:hover:after {
  color: var(--icon-color-hover-bg);
}
#main div.issue.operation .icon-invoice:hover:before {
  background: var(--icon_bg_hover-bg);
}
#main div.issue.operation .icon-invoice:before,
#main div.issue.operation .icon-invoice:after {
  top: 50%;
  left: 0;
  margin: -13px 0 0;
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
}
#main div.issue.operation .icon-invoice:after {
  color: var(--icon-color-bg);
}
#main div.issue.operation .icon-invoice:before {
  background: var(--icon_bg-bg);
}
#main div.issue.operation .amount {
  color: var(--icon-color-bg);
  margin: 0 10px 0 0;
}
#main div.issue.operation .contact {
  color: var(--icon-color-bg);
}
#main div.issue.operation .contact {
  margin: 0 10px 0 0;
}
.controller-operations #comments h4 {
  font-size: 1rem;
  line-height: 1.4;
  font-weight: 600;
  border-bottom: 1px solid var(--border-color-content) !important;
}
.controller-operations #comments h4 .gravatar {
  margin: 0 5px 8px 0;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
}
/* END ONE OPERATIONS */
/* END OPERATIONS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  #main div.issue.operation #invoices .contextual a:before,
  #main div.issue.operation #relations .contextual a:before {
    display: none;
  }
  #main div.issue.operation #invoices p,
  #main div.issue.operation #relations p {
    padding-right: 35px;
    position: relative;
    margin: 10px 0 0;
  }
  #main div.issue.operation #invoices p:first-child,
  #main div.issue.operation #relations p:first-child {
    margin: 0;
  }
  #main div.issue.operation #invoices p a[data-method="delete"],
  #main div.issue.operation #relations p a[data-method="delete"] {
    position: absolute;
    top: 0;
    right: 0;
  }
}
@media screen and (max-width: 650px) {
  body .new_operation input[type="text"] + input[type="text"] {
    margin: 10px 0 0 !important;
  }
}
/* END INVOCE */
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START ORDERS */
.controller-orders #main div.issue {
  padding: 0;
}
.controller-orders #main div.issue hr {
  display: none;
}
.controller-orders #main #invoices {
  position: relative;
  border-top: 1px solid var(--border-color-content);
  border-bottom: 1px solid var(--border-color-content);
  background: var(--bg-box);
  padding: 15px 30px 0;
  margin: 0 -30px 20px;
}
.controller-orders #main #invoices .icon,
.controller-orders #main #invoices .icon-invoice + a[href*="invoices"] {
  color: var(--icon-color-bg);
}
.controller-orders #main #invoices .icon:before,
.controller-orders #main #invoices .icon-invoice + a[href*="invoices"]:before {
  background: var(--icon_bg-bg) !important;
}
.controller-orders #main #invoices .icon:after,
.controller-orders #main #invoices .icon-invoice + a[href*="invoices"]:after {
  color: var(--icon-color-bg);
}
.controller-orders #main #invoices .icon:hover,
.controller-orders #main #invoices .icon-invoice + a[href*="invoices"]:hover {
  color: var(--icon-color-hover-bg);
}
.controller-orders #main #invoices .icon:hover:after,
.controller-orders #main #invoices .icon-invoice + a[href*="invoices"]:hover:after {
  color: var(--icon_bg_hover-bg);
}
.controller-orders #main hr {
  margin: 0 0 20px;
}
.controller-orders #main #comments h4 {
  font-size: 1rem;
  line-height: 1.4;
  font-weight: 600;
  border-bottom: 1px solid var(--border-color-content) !important;
}
.controller-orders #main #comments h4 .gravatar {
  margin: 0 5px 8px 0;
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
}
.controller-orders #main a.icon-order {
  width: auto;
  font-size: 0.85714286rem;
  line-height: 1.4;
  padding: 0 0 0 30px !important;
  display: flex;
  align-items: center;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  text-decoration: none;
}
.controller-orders #main a.icon-order:after,
.controller-orders #main a.icon-order:before {
  top: 50%;
  left: 0;
  margin: -13px 0 0;
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
}
.controller-orders #main a.icon-order:before {
  background: var(--icon_bg-bg);
}
.controller-orders #main a.icon-order:after {
  content: "\E0EE";
}
.controller-orders #main .deal-lines {
  margin: 0 0 30px;
}
.controller-orders #main .deal-lines .list.product-lines {
  font-size: 1rem;
  line-height: 1.4;
}
.controller-orders #main .deal-lines .list.product-lines td {
  padding: 7px 14px;
}
.controller-orders #main .deal-lines .list.product-lines td:first-child {
  border-left: 0;
}
.controller-orders #main .deal-lines .list.product-lines td:last-child {
  border-right: 0;
}
.controller-orders #main .deal-lines .list.product-lines td.item img.gravatar {
  float: none;
}
.controller-orders #main .deal-lines .list.product-lines th {
  background-color: var(--bg-box);
  padding: 15px 10px;
}
.controller-orders #main .deal-lines .list.product-lines .total.delimiter {
  background-color: var(--bg-box) !important;
}
.controller-orders #main .deal-lines .list.product-lines .total th {
  color: var(--color-main-color);
  padding: 5px 10px;
}
.controller-orders #main .deal-lines .list.product-lines .total th:empty {
  display: none;
}
.controller-orders table.product-lines.form td.product-image {
  vertical-align: middle;
}
/* END ORDERS*/
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START REDMINEUP FAVORITE PROJECTS */
#main > #content #projects_list .project_card h4 {
  margin: 0;
  color: var(--color-main-color-text);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main > #content #projects_list .project_card .parent div {
  color: var(--color-main-color-text);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main > #content #projects_list .project_card .parent:hover h4,
#main > #content #projects_list .project_card .parent:hover div {
  color: var(--color-main-color);
}
#projects_list div#projects .row {
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}
#projects_list .card {
  margin: 0 20px 20px 0;
}
#projects_list .project_card {
  padding: 0 15px 55px 15px;
  margin: 0;
  border: 0;
  height: 100%;
  border-left: 4px solid var(--color-main-color);
  background: var(--light-bg);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#projects_list .project_card .tags {
  flex-wrap: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis;
}
#projects_list .project_card a[data-method="delete"]:after,
#projects_list .project_card a[href*="/favorite_projects/favorite"]:after {
  color: var(--color-main-color);
}
#projects_list .project_card a[data-method="delete"][href*="/favorite_projects/unfavorite"]:after,
#projects_list .project_card a[href*="/favorite_projects/favorite"][href*="/favorite_projects/unfavorite"]:after {
  color: var(--icon-color-bg);
}
#projects_list .project_card h4 {
  font-size: 1rem;
  line-height: 1rem;
  padding: 0;
  width: 100%;
}
#projects_list .project_card .parent {
  background: var(--color-main-color);
  color: var(--color-main-color-text);
  overflow: hidden;
  cursor: pointer;
  padding: 6px 11px 6px 10px;
  margin: 0 -15px;
  display: flex;
  align-items: center;
  border: 4px solid var(--color-main-color);
  border-left: 0;
  -webkit-transition: background-color var(--time-hover) ease-in-out;
  -moz-transition: background-color var(--time-hover) ease-in-out;
  -ms-transition: background-color var(--time-hover) ease-in-out;
  -o-transition: background-color var(--time-hover) ease-in-out;
  transition: background-color var(--time-hover) ease-in-out;
}
#projects_list .project_card .parent:hover {
  background: var(--color-main-color-text);
  color: var(--color-main-color);
}
#projects_list .project_card .people {
  bottom: 10px;
  width: calc(100% - 30px);
  text-overflow: ellipsis;
  overflow: hidden;
}
#projects_list .project_card .people span {
  display: inline-block;
  cursor: pointer;
  margin: 0 0 0 -15px;
  background: var(--bg-fff);
  border: 1px solid var(--color-main-color);
  -webkit-border-radius: var(--border-radius-full);
  -moz-border-radius: var(--border-radius-full);
  border-radius: var(--border-radius-full);
  position: relative;
  z-index: 1;
}
#projects_list .project_card .people span:first-child {
  margin: 0;
}
#projects_list .project_card .people span:hover {
  z-index: 2;
}
#projects_list .project_card .people span:nth-child(7) ~ span {
  display: none;
}
#projects_list .project_card .people span:nth-child(7):after {
  content: '...';
  clear: both;
  width: 30px;
  height: 32px;
  font-size: 14px;
  line-height: 14px;
  color: var(--text-color-main);
  position: absolute;
  top: 0;
  left: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
#projects_list .project_card .title {
  align-items: center;
  padding: 5px 0;
  border-color: var(--suder-dark-grey);
}
#projects_list .project_card .title h4 {
  line-height: 26px;
}
#projects_list .project_card .title h4 a {
  color: var(--text-color-main);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#projects_list .project_card .title h4 a:hover {
  color: var(--color-main-color);
}
#projects_list .project_card .description {
  color: var(--suder-dark-grey);
  width: 100%;
  margin: 0 0 5px;
}
#projects_list .project_card .tags {
  width: 100%;
  position: relative;
  padding-left: 30px;
  font-size: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#projects_list .project_card .tags:after {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  clear: both;
  height: 20px;
  width: 20px;
  margin: -13px 0 0;
  overflow: hidden;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
  z-index: 1;
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 26px;
  line-height: 1;
  color: var(--icon-color-bg);
}
#projects_list .project_card .tags .tag-label-color {
  display: inline-block;
}
#projects_list .project_card .tags:empty {
  display: none;
}
#projects_list div.project_card div.title {
  padding-bottom: 5px;
  margin: 0 0 5px;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
/* END REDMINEUP FAVORITE PROJECTS */
/* --------------------- https://redmine-evolution.com/ -- */
/* START MEDIA*/
@media screen and (max-width: 1024px) {
  #main > #content #projects_list {
    padding: 0;
  }
  #projects_list div#projects .row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -5px;
    margin-right: -5px;
    width: calc(100% + 10px);
  }
  #projects_list div#projects .row .card {
    width: 33.3333%;
    margin: 0 0 10px;
  }
  #projects_list .project_card {
    margin: 0 5px 10px;
    width: calc(100% - 10px);
  }
}
@media screen and (max-width: 650px) {
  #projects_list div#projects .row .card {
    width: 50%;
  }
}
@media screen and (max-width: 480px) {
  #projects_list div#projects .row .card {
    margin: 0 0 10px;
    width: 100%;
  }
}
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START REDMINE DRIVE PAGE */
#main h2.drive_header {
  background-image: url(../images/icon-color/drive.svg);
}
#main #drive-entries table.files thead th,
#main #drive-entries table.files tbody td {
  border: 0;
  border-bottom: 1px solid var(--border-color-content);
  display: table-cell;
}
.controller-drive_entries #main .filename a.icon {
  padding: 0 0 0 35px;
  line-height: var(--icon-width);
  min-height: var(--icon-width);
  width: auto;
  font-size: 1rem;
  border-radius: 0;
}
.controller-drive_entries #main .filename a.icon:after,
.controller-drive_entries #main .filename a.icon:before {
  width: var(--icon-width);
  height: var(--icon-width);
  top: 0;
  left: 0;
}
.controller-drive_entries #main #files-sidebar-menu a.icon {
  padding: 0 0 0 35px;
  line-height: var(--icon-width);
  min-height: var(--icon-width);
  width: auto;
  font-size: 1rem;
}
.controller-drive_entries #main #files-sidebar-menu a.icon:after,
.controller-drive_entries #main #files-sidebar-menu a.icon:before {
  width: var(--icon-width);
  height: var(--icon-width);
  top: 0;
  left: 0;
}
.controller-drive_entries #copy-modal-form,
.controller-drive_entries #move-modal-form {
  width: calc(100% + 40px);
  margin: -20px;
  padding: 0 0 20px;
  display: block;
  overflow: hidden;
  background: var(--bg-fff);
}
.controller-drive_entries #copy-modal-form .box,
.controller-drive_entries #move-modal-form .box {
  height: auto;
}
.controller-drive_entries #copy-modal-form table#folders,
.controller-drive_entries #move-modal-form table#folders {
  border-bottom: 1px solid var(--border-color-content);
  border-top: 1px solid var(--border-color-content);
  border-radius: 0;
}
.controller-drive_entries #copy-modal-form table#folders td,
.controller-drive_entries #move-modal-form table#folders td {
  border-radius: 0 !important;
}
.controller-drive_entries #copy-modal-form .expander,
.controller-drive_entries #move-modal-form .expander {
  float: right;
  margin-top: 2px;
}
.controller-drive_entries #new-files-form .buttons {
  margin-top: 20px;
}
div.modal #file-explorer {
  width: calc(100% + 40px);
  margin: -20px -20px 0;
  background: var(--bg-fff);
}
div.modal #file-explorer .breadcrumb {
  margin: 0;
}
div.modal #file-explorer table th,
div.modal #file-explorer table td {
  text-align: left;
}
div.modal form[action*="/drive/create_files"] .attachments_form .description {
  margin: 5px 0 5px 0!important;
  width: calc(100% - 36px);
}
div.modal form[action*="/drive/create_files"] .attachments_form .attachments_fields {
  display: block;
}
div.modal form[action*="/drive/create_files"] .attachments_form .attachments_fields > span {
  border-bottom: 1px solid var(--color-dark-grey);
  padding: 0 0 5px;
  margin: 0 0 5px;
}
div.modal form[action*="/drive/create_files"] .icon-only:before {
  background: var(--icon_bg-bg);
}
div.modal form[action*="/drive/create_files"] .icon-only:after {
  color: var(--icon-color-bg);
}
div.modal form[action*="/drive/create_files"] .icon-only:hover:after {
  color: var(--icon-color-hover-bg);
}
div.modal form[action*="/drive/create_files"] .icon-only:hover:before {
  background: var(--icon_bg_hover);
}
#share-modal-form .public-link .filler {
  padding: 0 5px 0 0;
}
#share-modal-form p .inline,
#share-modal-form p .inline + label {
  display: inline-block;
  width: auto;
}
#share-modal-form p .expires {
  padding-top: 2px;
}
#share-modal-form .ui-widget-content a span {
  color: var(--icon-color-bg);
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#share-modal-form .ui-widget-content a:hover span {
  color: var(--icon-color-hover-bg);
}
/* START ADMIN */
#settings_storage_size {
  margin-right: 10px;
}
@media screen and (max-width: 650px) {
  #main > #content form .box p #settings_storage_size {
    min-width: calc(100% - 50px) !important;
    margin-right: 10px !important;
  }
}
/* --------------------- https://redmine-evolution.com/ -- */
/* --------------------- https://redmine-evolution.com/ -- */
/* START REDMINEUP CMS PLAGIN */
#content form #settings_cache_expires_in {
  margin: 0 10px 0 0;
}
body #top-menu ul.menu-children > li {
  margin: 0;
  padding: 0;
}
body #top-menu li ul.menu-children {
  top: 30px;
}
body #top-menu li ul.menu-children .cms:after {
  display: none;
}
body #settings_cache_expires_in {
  margin-left: 10px;
}
body #tab-content-page_fields .add-to-table {
  margin: 0 0 15px;
  text-align: end;
}
body #tab-content-page_fields table.list th {
  border-bottom: 0;
}
body .cms-page-tags-edit {
  width: 100%;
}
body.controller-cms_parts .CodeMirror,
body.controller-cms_pages #tab-content-content p,
body.controller-cms_pages #tab-content-content .CodeMirror,
body #cms_layout_content ~ .CodeMirror,
body #cms_snippet_content ~ .CodeMirror {
  margin: 10px 0 0 0!important;
}
#main .open .icon-folder {
  background: none;
}
#main #sidebar #cms-settings-menu .icon {
  background-image: none;
  display: block;
  position: relative;
  font-size: 1rem;
  line-height: 1.4;
  height: auto;
  min-height: auto;
  width: 100%;
  color: var(--icon-color);
  padding: 4px 5px 4px 32px;
  background-image: none !important;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  z-index: 2;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
#main #sidebar #cms-settings-menu .icon:after,
#main #sidebar #cms-settings-menu .icon:before {
  position: absolute;
  top: 0;
  left: 0;
  width: var(--icon-smaller-width);
  height: var(--icon-smaller-width);
  font-size: var(--icon-smaller-width);
  line-height: var(--icon-smaller-width);
}
#main #sidebar #cms-settings-menu .icon:before {
  background: var(--icon_bg);
}
#main #sidebar #cms-settings-menu .icon:after {
  color: var(--icon-color);
}
#main #sidebar #cms-settings-menu .icon:hover {
  text-decoration: none;
  color: var(--icon-color-hover);
}
#main #sidebar #cms-settings-menu .icon:hover:after {
  color: var(--icon-color-hover);
}
#main #sidebar #cms-settings-menu .icon:hover:before {
  background: var(--icon_bg_hover);
}
#main #sidebar #cms-settings-menu .selected {
  background: none;
  padding-left: 32px !important;
  color: var(--main_color);
}
#main #sidebar #cms-settings-menu .selected:after {
  color: var(--main_color);
}
#main form[action*="/cms/assets"] .autoscroll {
  margin: 0 0 10px;
}
.controller-cms_pages .contextual.page-edit {
  background: none;
  justify-content: flex-end;
  border: 0;
}
.controller-cms_pages .contextual.page-edit hr {
  display: none;
}
.controller-cms_assets #main .tabular .box a.icon-only:after {
  color: var(--icon-color);
}
.controller-cms_assets #main .tabular .box a.icon-only:hover:after {
  color: var(--icon-color-hover);
}
/* --------------------- https://redmine-evolution.com/ -- */
.controller-cms_menus #cms_menus a[href*="highest"],
.controller-cms_menus #cms_menus a[href*="higher"],
.controller-cms_menus #cms_menus a[href*="lower"],
.controller-cms_menus #cms_menus a[href*="lowest"] {
  opacity: 1 !important;
  border: none;
  background: none;
  padding: 0;
  display: inline-block;
  height: var(--icon-smaller-width);
  width: var(--icon-smaller-width);
  margin: 0 5px;
  overflow: hidden;
  position: relative;
  z-index: 2;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  font-size: 0px;
  line-height: 0px;
  color: var(--icon-color-bg);
  vertical-align: middle;
  min-width: var(--icon-smaller-width);
  min-height: var(--icon-smaller-width);
  -webkit-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out, background-color var(--time-hover) ease-in-out;
  cursor: pointer;
}
.controller-cms_menus #cms_menus a[href*="highest"]:after,
.controller-cms_menus #cms_menus a[href*="higher"]:after,
.controller-cms_menus #cms_menus a[href*="lower"]:after,
.controller-cms_menus #cms_menus a[href*="lowest"]:after {
  text-align: center;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  clear: both;
  height: 100%;
  width: 100%;
  margin: 0;
  overflow: hidden;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  z-index: 1;
  font-style: normal;
  font-variant: normal;
  text-decoration: none;
  text-transform: none;
  font-size: var(--icon-smaller-width);
  line-height: var(--icon-smaller-width);
  font-family: var(--icon-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: normal;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.controller-cms_menus #cms_menus a[href*="highest"]:before,
.controller-cms_menus #cms_menus a[href*="higher"]:before,
.controller-cms_menus #cms_menus a[href*="lower"]:before,
.controller-cms_menus #cms_menus a[href*="lowest"]:before {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: var(--icon_bg);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  z-index: -1;
  -webkit-border-radius: var(--icon-border-radius);
  -moz-border-radius: var(--icon-border-radius);
  border-radius: var(--icon-border-radius);
  -webkit-transition: transform var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  -moz-transition: transform var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  -ms-transition: transform var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  -o-transition: transform var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
  transition: transform var(--time-hover) ease-in-out, background var(--time-hover) ease-in-out;
}
.controller-cms_menus #cms_menus a[href*="highest"] img,
.controller-cms_menus #cms_menus a[href*="higher"] img,
.controller-cms_menus #cms_menus a[href*="lower"] img,
.controller-cms_menus #cms_menus a[href*="lowest"] img {
  display: none;
}
.controller-cms_menus #cms_menus a[href*="highest"]:hover,
.controller-cms_menus #cms_menus a[href*="higher"]:hover,
.controller-cms_menus #cms_menus a[href*="lower"]:hover,
.controller-cms_menus #cms_menus a[href*="lowest"]:hover {
  color: var(--icon-color-hover);
  background-image: none !important;
}
.controller-cms_menus #cms_menus a[href*="highest"]:hover:before,
.controller-cms_menus #cms_menus a[href*="higher"]:hover:before,
.controller-cms_menus #cms_menus a[href*="lower"]:hover:before,
.controller-cms_menus #cms_menus a[href*="lowest"]:hover:before {
  background: var(--icon_bg_hover);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-cms_menus #cms_menus a[href*="highest"].selected,
.controller-cms_menus #cms_menus a[href*="higher"].selected,
.controller-cms_menus #cms_menus a[href*="lower"].selected,
.controller-cms_menus #cms_menus a[href*="lowest"].selected {
  color: var(--icon_color_active);
}
.controller-cms_menus #cms_menus a[href*="highest"].selected:before,
.controller-cms_menus #cms_menus a[href*="higher"].selected:before,
.controller-cms_menus #cms_menus a[href*="lower"].selected:before,
.controller-cms_menus #cms_menus a[href*="lowest"].selected:before {
  background: var(--icon_bg_active);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.controller-cms_menus #cms_menus a[href*="highest"].disabled,
.controller-cms_menus #cms_menus a[href*="higher"].disabled,
.controller-cms_menus #cms_menus a[href*="lower"].disabled,
.controller-cms_menus #cms_menus a[href*="lowest"].disabled {
  opacity: 0.3;
}
.controller-cms_menus #cms_menus a[href*="highest"].disabled:hover,
.controller-cms_menus #cms_menus a[href*="higher"].disabled:hover,
.controller-cms_menus #cms_menus a[href*="lower"].disabled:hover,
.controller-cms_menus #cms_menus a[href*="lowest"].disabled:hover {
  color: var(--icon_color_active);
}
.controller-cms_menus #cms_menus a[href*="highest"].disabled:hover:before,
.controller-cms_menus #cms_menus a[href*="higher"].disabled:hover:before,
.controller-cms_menus #cms_menus a[href*="lower"].disabled:hover:before,
.controller-cms_menus #cms_menus a[href*="lowest"].disabled:hover:before {
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
}
.controller-cms_pages #content div.tabs,
.controller-cms_parts #content div.tabs {
  padding: 0;
  border: none;
  margin: 0 0 20px;
  position: relative;
  z-index: 2;
  font-size: 1rem;
  line-height: 1.4;
  overflow: hidden;
  height: 50px;
}
.controller-cms_pages #content div.tabs:after,
.controller-cms_parts #content div.tabs:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  bottom: 1px;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--border-color);
  z-index: -1;
}
.controller-cms_pages #content div.tabs > ul,
.controller-cms_parts #content div.tabs > ul {
  position: relative;
  padding: 0;
  margin: 0;
  border: none;
  list-style: none;
  white-space: nowrap;
  font-size: 0;
}
.controller-cms_pages #content div.tabs > ul > li,
.controller-cms_parts #content div.tabs > ul > li {
  padding: 0;
  margin: 0;
  overflow: hidden;
  display: inline-block;
  float: none;
  background: none;
}
.controller-cms_pages #content div.tabs > ul > li a,
.controller-cms_parts #content div.tabs > ul > li a {
  float: left;
  margin: 0 15px 0 0;
  font-family: sans-serif;
  padding: 15px 0 15px;
  border: none;
  display: block;
  position: relative;
  background: none;
  color: #cccccc;
  font-size: 1.1428rem;
  font-weight: 600;
  text-decoration: none;
  -webkit-transition: color var(--time-hover) ease-in-out;
  -moz-transition: color var(--time-hover) ease-in-out;
  -ms-transition: color var(--time-hover) ease-in-out;
  -o-transition: color var(--time-hover) ease-in-out;
  transition: color var(--time-hover) ease-in-out;
}
.controller-cms_pages #content div.tabs > ul > li a.selected,
.controller-cms_parts #content div.tabs > ul > li a.selected,
.controller-cms_pages #content div.tabs > ul > li a.page,
.controller-cms_parts #content div.tabs > ul > li a.page {
  color: var(--color-main-color);
  border: none;
  background: none;
}
.controller-cms_pages #content div.tabs > ul > li a.selected:after,
.controller-cms_parts #content div.tabs > ul > li a.selected:after,
.controller-cms_pages #content div.tabs > ul > li a.page:after,
.controller-cms_parts #content div.tabs > ul > li a.page:after {
  width: 100%;
  left: 0;
}
.controller-cms_pages #content div.tabs > ul > li a.selected:hover,
.controller-cms_parts #content div.tabs > ul > li a.selected:hover,
.controller-cms_pages #content div.tabs > ul > li a.page:hover,
.controller-cms_parts #content div.tabs > ul > li a.page:hover {
  background: none;
}
.controller-cms_pages #content div.tabs > ul > li a:hover,
.controller-cms_parts #content div.tabs > ul > li a:hover {
  color: var(--color-main-color);
  background: none;
  text-decoration: none;
}
.controller-cms_pages #content div.tabs > ul > li a:hover:after,
.controller-cms_parts #content div.tabs > ul > li a:hover:after {
  width: 100%;
  left: 0;
}
.controller-cms_pages #content div.tabs > ul > li a:after,
.controller-cms_parts #content div.tabs > ul > li a:after {
  content: '';
  display: block;
  clear: both;
  position: absolute;
  bottom: 0px;
  left: 50%;
  width: 0;
  height: 3px;
  background: var(--color-main-color);
  -webkit-transition: width var(--time-hover) ease-in-out, left var(--time-hover) ease-in-out;
  -moz-transition: width var(--time-hover) ease-in-out, left var(--time-hover) ease-in-out;
  -ms-transition: width var(--time-hover) ease-in-out, left var(--time-hover) ease-in-out;
  -o-transition: width var(--time-hover) ease-in-out, left var(--time-hover) ease-in-out;
  transition: width var(--time-hover) ease-in-out, left var(--time-hover) ease-in-out;
}
/* END REDMINEUP CSS */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl92YXJzX2NvbG91ci5sZXNzIiwiX3ZhcnMubGVzcyIsIl9yZWRtaW5lVVBfY29udGFjdHMubGVzcyIsIl92YXJzLWljb24ubGVzcyIsIl9yZWRtaW5lVVBfaW52b2NlLmxlc3MiLCJfcmVkbWluZVVQX3Blb3BsZS5sZXNzIiwiX3JlZG1pbmVVUC5sZXNzIiwiX3JlZG1pbmVVUF9oZWxwLXN1cHBvcnQubGVzcyIsIl9yZWRtaW5lVVBfYWdpbGUubGVzcyIsIl9yZWRtaW5lVVBfcHJvZHVjdHMubGVzcyIsIl9yZWRtaW5lVVBfcmVzb3VyY2VzLmxlc3MiLCJfcmVkbWluZVVQX2JhY2tsb2cubGVzcyIsIl9yZWRtaW5lVVBfZGVhbC5sZXNzIiwiX3JlZG1pbmVVUF9leHBlbnNlcy5sZXNzIiwiX3JlZG1pbmVVUF9vcGVyYXRpb25zLmxlc3MiLCJfcmVkbWluZVVQX29yZGVycy5sZXNzIiwiX3JlZG1pbmVVUF9mYXZvcml0ZV9wcm9qZWN0cy5sZXNzIiwiX3JlZG1pbmVVcF9kcml2ZS5sZXNzIiwiX3JlZG1pbmVVcF9DTVMubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFpVEE7O0VBR0UsaUJBQUE7RUFDQSxxQkFBQTtFQUNBLHFCQUFBO0VBQ0EsMkJBQUE7RUFDQSwyQkFBQTtFQUVFLG9CQUFBO0VBQ0YsMEJBQUE7RUFDQSwrQkFBQTtFQUNBLHNCQUFBO0VBQ0EsMkJB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SUFBRyxLQXdCQyxLQVNFLEtBUUEsRUE4Q0c7RUFDQyxTQUFRLEVBQVI7RUFDQSxjQUFBO0VBQ0EsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLFNBQUE7RUFDQSxRQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQVksdUJBQVo7RUFDQSwwQkFBMEIsb0NBQW9DLDZCQUE5RDtFQUNBLHVCQUF1QixvQ0FBb0MsNkJBQTNEO0VBQ0Esc0JBQXNCLG9DQUFvQyw2QkFBMUQ7RUFDQSxxQkFBcUIsb0NBQW9DLDZCQUF6RDtFQUNBLGtCQUFrQixvQ0FBb0MsNkJBQXREIiwiZmlsZSI6InBsdWdpbi1yZWRtaW5ldXAtc3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgQ09MT1IgVkFSSUFCTEVTICovXHJcbkBmZmY6ICNmZmZmZmY7XHJcbkBkYXJrOiAjMmYyZjJmO1xyXG5Ac3VkZXJkYXJrZ3JleTogIzc3Nzc3NztcclxuQGdyZXk6ICNjY2NjY2M7XHJcbi8vQGJsdWU6ICM0MzhhZmY7XHJcbkBibHVlOiAjNzYwMGJhO1xyXG5AYmx1ZTUwOiAjYTFjNGZmO1xyXG5AYmx1ZVJnYmE6IDY3LDEzOCwyNTU7XHJcbi8vQGxpZ2h0Qmx1ZTogI2VjZjNmZjtcclxuQGxpZ2h0Qmx1ZTogI2Y3MDBmNDtcclxuQGJvZHk6ICNmOGY0ZmU7XHJcbi8vQGJvZHk6ICNmNGY3ZmM7XHJcbkByZWRfYm9yZGVyX2Vycm9yOiAjZmY2NjY2O1xyXG5AcmVkX2Vycm9mOiAjZTQ3ZDdkO1xyXG5AZ3JleV9saWdodDogI2QwZDBkMDtcclxuQHN1cGVyX2dyZXlfbGlnaHQ6ICNlYmViZWM7XHJcbkBwcmlvcml0eS0xOiAjNDM4YWZmO1xyXG5AcHJpb3JpdHktMjogIzZhYzI1OTtcclxuQHByaW9yaXR5LTM6ICNmNWMyMjU7XHJcbkBwcmlvcml0eS00OiAjZjcwMGY0O1xyXG5AcHJpb3JpdHktNTogI2YwMDtcclxuQHRyYWNrZXItMTogI2ZkNzI4NTtcclxuQHRyYWNrZXItMjogIzZhYzI1OTtcclxuQHRyYWNrZXItMzogIzU0OTNmZjtcclxuQGhvdmVyQmc6ICNkZGVjZmI7XHJcbkBmYmZjZmU6ICNmYmZjZmU7XHJcbkBncmVlbi1kYXJrOiAjNmFjMjU5O1xyXG5AcmVkOiAjZmQ3Mjg1O1xyXG5AZGFya2dyZXk6ICNBNUE1QTU7XHJcbkBiZ21lbnU6ICM4MThFOTQ7XHJcbi8vQHRvb2x0aXAtYmc6ICM0MzhhZmY7XHJcbkB0b29sdGlwLWJnOiAjZjAwO1xyXG5Ac2VsZWN0VGFibGU6ICNhZmQ2ZmQ7XHJcblxyXG5Abm90aWNlLXN1Y2Nlc3NmdWw6ICM2YWMyNTk7XHJcbkByZWQ6ICNmZDcyODU7XHJcblxyXG5AZXJyb3I6ICNmMDA7XHJcbkBpY29ud2FybmluZzogI2ZmODQwMDtcclxuXHJcblxyXG5AbWFpbkJ1dHRvbkJnOiBAYmx1ZTtcclxuQG1haW5CdXR0b25Db2xvcjogQGZmZjtcclxuQG1haW5CdXR0b25CZ0hvdmVyOiBAYm9keTtcclxuQG1haW5CdXR0b25Db2xvckhvdmVyOiBAYmx1ZTtcclxuXHJcbkBtYWluQnV0dG9uQmctYm94OiBAYmx1ZTtcclxuQG1haW5CdXR0b25Db2xvci1ib3g6IEBmZmY7XHJcbkBtYWluQnV0dG9uQmdIb3Zlci1ib3g6IEBmZmY7XHJcbkBtYWluQnV0dG9uQ29sb3JIb3Zlci1ib3g6IEBibHVlO1xyXG5cclxuQGJ1dHRvbkJnOiBAYm9keTtcclxuQGJ1dHRvbkNsb2xvcjogQGJsdWU7XHJcbkBidXR0b25CZ0hvdmVyOiBAYmx1ZTtcclxuQGJ1dHRvbkNsb2xvckhvdmVyOiBAZmZmO1xyXG5cclxuQGJ1dHRvbldoaXRlOiBAZmZmO1xyXG5AYnV0dG9uV2hpdGVDbG9sb3I6IEBibHVlO1xyXG5AYnV0dG9uV2hpdGVCZ0hvdmVyOiBAYmx1ZTtcclxuQGJ1dHRvbldoaXRlQ2xvbG9ySG92ZXI6IEBmZmY7XHJcblxyXG5AYnV0dG9uQmdEaXNhYmxlZDogQGRhcmtncmV5O1xyXG5AYnV0dG9uQ2xvbG9yRGlzYWJsZWQ6IEBmZmY7XHJcbkBidXR0b25CZ0hvdmVyRGlzYWJsZWQ6IEBkYXJrZ3JleTtcclxuQGJ1dHRvbkNsb2xvckhvdmVyRGlzYWJsZWQ6IEBmZmY7XHJcblxyXG5AZHJvcHBMaW5rTWFpbjogQGJvZHk7XHJcbkBkcm9wcExpbmtNYWluQ29sb3I6IEBkYXJrO1xyXG5AZHJvcHBMaW5rTWFpbkFycm93OiBAYmdtZW51O1xyXG5AZHJvcHBMaW5rTWFpbkFycm93Qmc6IEBmZmY7XHJcbkBkcm9wcExpbmtNYWluQXJyb3dIb3ZlcjogQGJsdWU7XHJcblxyXG5AaWNvbi1ib3gtY29sb3I6IEBiZ21lbnU7XHJcbkBpY29uLWJveC1iYWNrZ3JvdW5kOiBAZmZmO1xyXG5AaWNvbi1ib3gtY29sb3ItaG92ZXI6IEBibHVlO1xyXG5cclxuQGljb24tc2VhcmNoLWNvbG9yOiBAYmdtZW51O1xyXG5AaWNvbi1zZWFyY2gtYmFja2dyb3VuZDogQGZmZjtcclxuQGljb24tc2VhcmNoLWNvbG9yLWhvdmVyOiBAZmZmO1xyXG5AaWNvbi1zZWFyY2gtYmFja2dyb3VuZC1ob3ZlcjogQGJsdWU7XHJcblxyXG4vKiBFTkQgQ09MT1IgVkFSSUFCTEVTICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBOT1RJQ0UgKi9cclxuXHJcbkBiZy1ub3RpY2Utc3VjY2Vzc2Z1bDogI2UxZjNkZTtcclxuXHJcbkByZWQtbm90aWNlLWVycm9yOiAjZmQ3Mjg1O1xyXG5AYmctbm90aWNlLWVycm9yOiAjZmZlM2U3O1xyXG5cclxuLy9AYmx1ZS1saWdodC1iZzogI2UwZWNmZjtcclxuQGJsdWUtbGlnaHQtYmc6ICNjZmFlZTI7XHJcblxyXG4vKkQ5RThGRiovXHJcblxyXG5AeWVsbG93OiAjZjVjMjI1O1xyXG5AbGlnaHQteWVsbG93OiAjZmRmNWNmO1xyXG5cclxuLyogRU5EIE5PVElDRSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTU9CSUxFIE1FTlUgKi9cclxuQGZseW91dC1tZW51LWJnOiAjNDM4YWZmO1xyXG5AbWVudS10aXRsZS1iZzogIzAwNjdjMztcclxuQG1lbnUtdGl0bGUtY29sb3I6ICNmZmZmO1xyXG5AanMtZ2VuZXJhbC1tZW51LWJnOiAjODE3ZWZmO1xyXG5Ac2VsZWN0LWJnLXJlZG1pbmV1cDogIzVmNWJmYTtcclxuQGpzLWdlbmVyYWwtbWVudS1jb2xvcjogI2ZmZjtcclxuQGpzLXByb2ZpbGUtbWVudS1iZzogIzEwYTU3ODtcclxuQGpzLXByb2ZpbGUtbWVudS1jb2xvcjogI2ZmZjtcclxuQG1lbnUtYWRtaW4tbWVudS1iZzogIzZiOGVmZjtcclxuQG1lbnUtYWRtaW4tbWVudS1jb2xvcjogI2ZmZjtcclxuQG1vYmlsZS1tZW51LWNoaWxkcmVuLWJnOiAjNjhiZWVmO1xyXG5AbW9iaWxlLW1lbnUtY2hpbGRyZW4tY29sb3I6ICNmZmZmO1xyXG5AbW9iaWxlLWN1c3RvbWVyX3Byb2ZpbGUtYmc6ICNmNGU5ZjI7XHJcbkBtb2JpbGUtY3VzdG9tZXJfcHJvZmlsZS1jb2xvcjogQGRhcms7XHJcbkBjdXN0b21lcl9wcmV2aW91c19pc3N1ZXMtYmc6ICM2YjhlZmY7XHJcbkBjdXN0b21lcl9wcmV2aW91c19pc3N1ZXMtY29sb3I6ICNmZmZmZmY7XHJcbkBtb2JpbGUtaXNzdWUtY29udGFjdHMtYmc6ICMwMWRjN2Q7XHJcbkBtb2JpbGUtaXNzdWUtY29udGFjdHMtY29sb3I6ICNmZmZmO1xyXG5AbW9iaWxlLXdhdGNoZXJzLWJnOiAjMWVjNTkyO1xyXG5AbW9iaWxlLXdhdGNoZXJzLWNvbG9yOiAjZmZmO1xyXG5cclxuLyogRU5EIE1PQklMRSBNRU5VICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBCT1gtU0hBRE9XUyAqL1xyXG5cclxuQGJpZ3NoYWRvdzogMCAxMHB4IDEwcHggcmdiYSgwLDAsMCwwLjEpO1xyXG5AYmlnc2hhZG93TnVsbDogMCAxMHB4IDEwcHggcmdiYSgwLDAsMCwwKTtcclxuQGJpZ3NoYWRvd2hvdmVyOiAwIDEwcHggMTBweCByZ2JhKDY3LDEzOCwyNTUsMC41KTtcclxuQG1vZGFsc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsMCwwLDAuMik7XHJcbkBzaGFkb3dzbWFsbDogM3B4IDNweCA2cHggcmdiYSgwLDAsMCwwLjIpO1xyXG5cclxuLyogRU5EIEJPWC1TSEFET1dTICovXHJcblxyXG4vKiBTVEFSVCB0YWJsZXMgKi9cclxuQHRhYmxlc19jb2xvcjogIzM3MzczNztcclxuLyogRU5EIHRhYmxlcyovXHJcblxyXG5cclxuLyogU1RBUlQgcGFnaW5hdGlvbiAqL1xyXG5AcGFnaW5hdGlvbl9jb2xvcjogIzgxOEU5NDtcclxuLyogRU5EIHBhZ2luYXRpb24qL1xyXG5cclxuXHJcbi8vZmNmNmZhICsgYWUwMGUwXHJcblxyXG5cclxuLyogU1RBUlQgVE9QIE1FTlUgKi9cclxuXHJcbkB0b3BfbWVudV9iZzogQGZmZjtcclxuQHRvcF9tZW51X2ljb25fY29sb3I6IEBkYXJrZ3JleTtcclxuQHRvcF9tZW51X2JvcmRlcjogQGdyZXk7XHJcblxyXG5cclxuLyogSE9WRVIgKi9cclxuQHRvcF9tZW51X2ljb25fY29sb3JfaG92ZXI6IEBmZmY7XHJcbkB0b3BfbWVudV9pY29uX2JnX2hvdmVyOiBAYmx1ZTtcclxuXHJcblxyXG5AdG9wX21lbnVfZHJvcGRvd25fYmc6IEBmZmY7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9jb2xvcjogQGRhcms7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9hZnRlcjogQGxpZ2h0Qmx1ZTtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2ljb246IEBkYXJrZ3JleTtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2ljb25faG92ZXI6IEBibHVlO1xyXG5AdG9wX21lbnVfZHJvcGRvd25fYm9yZGVyOiBAZ3JleTtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2NvbG9yX2hvdmVyOiBAYmx1ZTtcclxuXHJcbi8qIEVORCBUT1AgTUVOVSAqL1xyXG5cclxuLyogU1RBUlQgTUFJTiBNRU5VICovXHJcbkBtYWluX21lbnVfYmc6IEBmZmY7XHJcbkBtYWluX21lbnVfY29sb3I6IEBkYXJrO1xyXG5AbWFpbl9tZW51X2JvcmRlcjogQGdyZXk7XHJcbkBtYWluX21lbnVfY29sb3JfaWNvbjogQGJnbWVudTtcclxuQG1haW5fbWVudV9jb2xvcl9pY29uX2hvdmVyOiBAYmx1ZTtcclxuQG1haW5fbWVudV9iZ19ob3ZlcjogQGZmZjtcclxuQG1haW5fbWVudV9jb2xvcl9ob3ZlcjogQGJsdWU7XHJcbkBtYWluX21lbnVfZHJvcF9iZ19ob3ZlcjogQGhvdmVyQmc7XHJcbkBtYWluX21lbnVfc2Nyb2xsYmFyOiBAc3VwZXJfZ3JleV9saWdodDtcclxuQG1haW5fbWVudV9zY3JvbGxiYXJfaGFuZGxlOiBAYmx1ZTtcclxuXHJcbi8qIE1PQklMRSAqL1xyXG5AZmx5b3V0X21lbnVfYmc6IEBibHVlO1xyXG5AZmx5b3V0X21lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9ib3JkZXI6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9idXR0b25fYmc6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9idXR0b25fY29sb3I6IEBibHVlO1xyXG5AZmx5b3V0X21lbnVfYmdfc2VsZWN0ZWQ6IEByZWQ7XHJcbkBmbHlvdXRfbWVudV9jb2xvcl9zZWxlY3RlZDogQGZmZjtcclxuQGZseW91dF9tZW51X3RpdGxlX2JnOiBAbWVudS10aXRsZS1iZztcclxuQGZseW91dF9tZW51X3RpdGxlX2NvbG9yOiBAZmZmO1xyXG5AZmx5b3V0X21lbnVfYWRtaW5fbWVudV9iZzogQG1lbnUtYWRtaW4tbWVudS1iZztcclxuQGZseW91dF9tZW51X2FkbWluX21lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9nZW5lcmFsLW1lbnVfYmc6IEBqcy1nZW5lcmFsLW1lbnUtYmc7XHJcbkBmbHlvdXRfbWVudV9nZW5lcmFsLW1lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9wcm9maWxlLW1lbnVfYmc6IEBqcy1wcm9maWxlLW1lbnUtYmc7XHJcbkBmbHlvdXRfbWVudV9wcm9maWxlLW1lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV93YXRjaGVycy1tZW51X2JnOiBAbW9iaWxlLXdhdGNoZXJzLWJnO1xyXG5AZmx5b3V0X21lbnVfd2F0Y2hlcnMtbWVudV9jb2xvcjogQGZmZjtcclxuXHJcbi8qIEVORCBNQUlOIE1FTlUgKi9cclxuXHJcblxyXG5cclxuXHJcblxyXG4vKiBuZXcgICovXHJcblxyXG5AbWFpbl9iZzogIzI5MmY0YztcclxuQG1haW5fYmdfY29sb3I6ICNmZmY7XHJcbkBtYWluX2JnX2Rhcms6ICMxMDEzMWU7XHJcbkBncmV5X21lbnU6ICM2YTZlODI7XHJcbkBjb250ZW50X2JnOiAjZjVmNmY4O1xyXG5AY29udGVudF9pY29uX2NvbG9yOiAjNjc2ODc5O1xyXG5AY29udGVudF9pY29uX2JnOiAjY2NlNWZmO1xyXG5cclxuLyogU1RBUlQgVE9QIE1FTlUgKi9cclxuXHJcbkB0b3BfbWVudV9iZzogI2Y1ZjZmODtcclxuQHRvcF9tZW51X2JvcmRlcjogI2U2ZTllZjtcclxuXHJcblxyXG4vKiBIT1ZFUiAqL1xyXG5AdG9wX21lbnVfaWNvbl9jb2xvcjogIzY3Njg3OTtcclxuQHRvcF9tZW51X2ljb25fY29sb3JfaG92ZXI6ICMzMjMzMzg7XHJcbkB0b3BfbWVudV9pY29uX2NvbG9yX2FjdGl2ZTogIzMyMzMzODtcclxuQHRvcF9tZW51X2ljb25fYmc6ICNlNWY0ZmY7XHJcbkB0b3BfbWVudV9pY29uX2JnX2hvdmVyOiAjZTVmNGZmO1xyXG5AdG9wX21lbnVfaWNvbl9iZ19hY3RpdmU6ICNlNWY0ZmY7XHJcblxyXG5cclxuQHRvcF9tZW51X2Ryb3Bkb3duX2JnOiBAZmZmO1xyXG5AdG9wX21lbnVfZHJvcGRvd25fY29sb3I6IEBkYXJrO1xyXG5AdG9wX21lbnVfZHJvcGRvd25fYWZ0ZXI6IEBsaWdodEJsdWU7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9pY29uOiBAZGFya2dyZXk7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9pY29uX2hvdmVyOiBAYmx1ZTtcclxuQHRvcF9tZW51X2Ryb3Bkb3duX2JvcmRlcjogQGdyZXk7XHJcbkB0b3BfbWVudV9kcm9wZG93bl9jb2xvcl9ob3ZlcjogQGJsdWU7XHJcblxyXG4vKiBFTkQgVE9QIE1FTlUgKi9cclxuXHJcbi8qIFNUQVJUIE1BSU4gTUVOVSAqL1xyXG5cclxuQG1haW5fbWVudV9iZzogQG1haW5fYmc7XHJcbkBtYWluX21lbnVfY29sb3I6IEBtYWluX2JnX2NvbG9yO1xyXG5AbWFpbl9tZW51X2JvcmRlcjogQG1haW5fYmc7XHJcbkBtYWluX21lbnVfY29sb3JfaWNvbjogQG1haW5fYmdfY29sb3I7XHJcbkBtYWluX21lbnVfY29sb3JfaWNvbl9ob3ZlcjogQG1haW5fYmdfY29sb3I7XHJcbkBtYWluX21lbnVfYmdfaG92ZXI6IEBtYWluX2JnX2Rhcms7XHJcbkBtYWluX21lbnVfY29sb3JfaG92ZXI6IEBtYWluX2JnX2NvbG9yO1xyXG5AbWFpbl9tZW51X2JnX3NlbGVjdGVkOiBAZ3JleV9tZW51O1xyXG5AbWFpbl9tZW51X2NvbG9yX3NlbGVjdGVkOiBAbWFpbl9iZ19jb2xvcjtcclxuQG1haW5fbWVudV9kcm9wX2JnX2hvdmVyOiBAbWFpbl9iZ19kYXJrO1xyXG5cclxuXHJcbi8qIE1PQklMRSAqL1xyXG5AZmx5b3V0X21lbnVfYmc6IEBibHVlO1xyXG5AZmx5b3V0X21lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9ib3JkZXI6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9idXR0b25fYmc6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9idXR0b25fY29sb3I6IEBibHVlO1xyXG5AZmx5b3V0X21lbnVfYmdfc2VsZWN0ZWQ6IEByZWQ7XHJcbkBmbHlvdXRfbWVudV9jb2xvcl9zZWxlY3RlZDogQGZmZjtcclxuQGZseW91dF9tZW51X3RpdGxlX2JnOiBAbWVudS10aXRsZS1iZztcclxuQGZseW91dF9tZW51X3RpdGxlX2NvbG9yOiBAZmZmO1xyXG5AZmx5b3V0X21lbnVfYWRtaW5fbWVudV9iZzogQG1lbnUtYWRtaW4tbWVudS1iZztcclxuQGZseW91dF9tZW51X2FkbWluX21lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9nZW5lcmFsLW1lbnVfYmc6IEBqcy1nZW5lcmFsLW1lbnUtYmc7XHJcbkBmbHlvdXRfbWVudV9nZW5lcmFsLW1lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV9wcm9maWxlLW1lbnVfYmc6IEBqcy1wcm9maWxlLW1lbnUtYmc7XHJcbkBmbHlvdXRfbWVudV9wcm9maWxlLW1lbnVfY29sb3I6IEBmZmY7XHJcbkBmbHlvdXRfbWVudV93YXRjaGVycy1tZW51X2JnOiBAbW9iaWxlLXdhdGNoZXJzLWJnO1xyXG5AZmx5b3V0X21lbnVfd2F0Y2hlcnMtbWVudV9jb2xvcjogQGZmZjtcclxuXHJcbi8qIEVORCBNQUlOIE1FTlUgKi9cclxuXHJcblxyXG5AZGFya19ibHVlOiAjMjkyZjRjO1xyXG5AZmZmOiAjZmZmO1xyXG5AZGFyazogIzEwMTMxZTtcclxuQGdyZXlfbWVudTogIzZhNmU4MjtcclxuQGNvbnRlbnRfYmc6ICNmNWY2Zjg7XHJcbkBjb250ZW50X2ljb25fY29sb3I6ICM2NzY4Nzk7XHJcbkBjb250ZW50X2ljb25fYmc6ICNjY2U1ZmY7XHJcblxyXG4vKiBDT05URU5UIENPTE9SIFNFVFRJTkdTICAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuQGJsdWU6ICM3NjAwYmE7XHJcbkBibHVlNTA6ICNhMWM0ZmY7XHJcbkBibHVlUmdiYTogNjcsMTM4LDI1NTtcclxuLy9AbGlnaHRCbHVlOiAjZWNmM2ZmO1xyXG5AbGlnaHRCbHVlOiAjZjcwMGY0O1xyXG5AYm9keTogI2Y4ZjRmZTtcclxuXHJcbjpyb290IHtcclxuICAvKiBTVEFSVCBHRU5FUkFMIENPTE9SICovXHJcblxyXG4gIC0tY29sb3ItZmZmOiAjZmZmO1xyXG4gIC0tY29sb3ItZGFyazogIzEwMTMxZTtcclxuICAtLWNvbG9yLWJsdWU6ICM2NTRFRkY7XHJcbiAgLS1jb2xvci1kYXJjay1ibHVlOiAjOEE3OEQwO1xyXG4gIC0tY29sb3ItYmx1ZS1saWdodDogI2NjZTVmZjtcclxuICAvLyDRhdC+0LLQtdGAINC/0YDQvtGB0YLQvtC5INC60L3QvtC/0LrQuCAtICNlNmU5ZWYgLyDQsdC+0YDQtNC10YAgLSAjYzVjN2QwXHJcbiAgICAtLWNvbG9yLXJlZDogI0ZGNTc1NztcclxuICAtLWNvbG9yLXJlZC1lcnJvZjogI0JFNDY0NjtcclxuICAtLWNvbG9yLXJlZC1zdXBlcmxpZ2h0OiAjRkZEMUQxO1xyXG4gIC0tY29sb3ItZ3JlZW46ICM2NkM4QUI7XHJcbiAgLS1jb2xvci1ncmVlbi1kYXJrOiAjNWNhYTkzO1xyXG4gIC0tY29sb3ItZ3JlZW4tc3VwZXItbGlnaHQ6ICNDRkZGRjE7XHJcbiAgLS1jb2xvci1wdXJwbGU6ICNFMjg0RkU7XHJcbiAgLS1jb2xvci1wdXJwbGUtZGFyazogI0MwNzJEODtcclxuICAtLWNvbG9yLXllbGxvdzogI0ZGQ0Y2OTtcclxuICAtLWNvbG9yLXllbGxvdy1saWdodDogI0ZGRjFEMztcclxuICAtLWNvbG9yLWVycm9yOiAjRkY1NzU3O1xyXG4gIC0tY29sb3Itb3JhbmdlOiAjRkU5QTUxO1xyXG4gIC0tY29sb3ItZ3JleTogI2NjY2NjYztcclxuICAtLXN1cGVyX2dyZXlfbGlnaHQ6ICNlYmViZWM7XHJcbiAgLS1zdWRlci1kYXJrLWdyZXk6ICNCQkJGQ0Q7XHJcbiAgLS1tYWluLWJnLWJveDogI0VDRURGMDtcclxuICAtLW1lbnUtZ3JleTogIzZhNmU4MjtcclxuICAtLWljb24tZ3JleTogIzY3Njg3OTtcclxuICAtLWljb24tZ3JleS1kYXJrOiAjMzIzMzM4O1xyXG4gICAgLS1tZW51LWJnOiAjMkUzMTRGO1xyXG4gIC0tY29sb3ItbWFpbi1jb2xvcjogIzlEODlFRTtcclxuICAtLWNvbG9yLW1haW4tY29sb3ItYWN0aXZldHk6ICM4RTdERDY7XHJcbiAgLS1iZy1ib3gtYWN0aXZldHk6ICNjY2U1ZmY7XHJcbiAgLS1jb2xvci1tYWluLWNvbG9yLXRleHQ6ICNmZmZmZmY7XHJcbiAgLS1ncmV5OiAjY2NjY2NjO1xyXG4gIC0tY29sb3ItZGFyay1ncmV5OiAjQTVBNUE1O1xyXG4gIC0taWNvbi1iZzogI2NjZTVmZjtcclxuICAvKi0tbWFpbi1iYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvbG9naW4tYmcwMS5qcGdcIikgcmVwZWF0OyovXHJcbiAgLS1tYWluLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcblxyXG4gIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgLS10ZXh0LWNvbG9yLW1haW46IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYmctaW4tY29udGVudDogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcbiAgLS1iZy1ib2R5OiB2YXIoLS1iZy1mZmYpO1xyXG4gIC0tYmctbW9iaWxlOiAjZmZmO1xyXG4gIC0tYmctYm94OiAjRUNFREYwO1xyXG4gIC0tYmctb3RoZXI6ICNFQ0VERjA7XHJcbiAgLS1iZy1vdGhlci1pbjogI2ZmZmZmZjtcclxuICAtLWJnLWZmZjogI2ZmZmZmZjtcclxuICAtLWxpZ2h0LWJnOiAjZWNlMWZjO1xyXG4gIC0tc2VsZWN0LWJnLXJlZG1pbmV1cDogIzVmNWJmYTtcclxuICAtLWFsbC1ob3Zlci1iZzogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcbiAgLS1hbGwtaG92ZXItYmctY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG5cclxuICAtLXNjcm9sbC1iZzogI0VDRURGMDtcclxuICAtLXNjcm9sbC1oYW5kbGU6ICNCQkJGQ0Q7XHJcbiAgLS1qY2YtZHJvcC1hY3RpdmU6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcblxyXG4gIC8qIEVORCBHRU5FUkFMIENPTE9SICovXHJcblxyXG4gIC8qIFNUQVJUIFRBQlMgKi9cclxuXHJcbiAgLS10YWItY29sb3ItdGV4dDogdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gIC0tdGFiLWNvbG9yLXRleHQtc2VsZWNlZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcblxyXG4gIC8qIEVORCBUQUJTICovXHJcblxyXG4gIC8qIFNUQVJUIE5PVElDRSAqL1xyXG5cclxuICAtLW5vdGljZS1lcnJvci1iZzogdmFyKC0tY29sb3ItcmVkLXN1cGVybGlnaHQpO1xyXG4gIC0tbm90aWNlLWVycm9yLW1haW46IHZhcigtLWNvbG9yLXJlZCk7XHJcbiAgLS1ub3RpY2UtZXJyb3ItbWFpbi10ZXh0OiB2YXIoLS1jb2xvci1yZWQpO1xyXG4gIC0tbm90aWNlLXN1Y2Nlc3NmdS1tYWluOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcbiAgLS1ub3RpY2Utc3VjY2Vzc2Z1LW1haW4tdGV4dDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLW5vdGljZS1zdWNjZXNzZnUtYmc6IHZhcigtLWNvbG9yLWdyZWVuLXN1cGVyLWxpZ2h0KTtcclxuICAtLW5vdGljZS1zdWNjZXNzZnUtYmctdGV4dDogdmFyKC0tY29sb3ItZ3JlZW4tZGFyayk7XHJcbiAgLS1ub3RpY2Utd29ybmluZy1tYWluOiB2YXIoLS1jb2xvci15ZWxsb3cpO1xyXG4gIC0tbm90aWNlLXdvcm5pbmctYmc6IHZhcigtLWNvbG9yLXllbGxvdy1saWdodCk7XHJcbiAgLS1ub3RpY2Utd29ybmluZy1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcblxyXG4gIC0tcmVkX2JvcmRlcl9lcnJvcjogdmFyKC0tY29sb3ItcmVkKTtcclxuICAtLXJlZF9lcnJvcl90ZXh0OiB2YXIoLS1jb2xvci1mZmYpO1xyXG5cclxuICAvKiBFTkQgTk9USUNFICovXHJcblxyXG5cclxuICAvKiBTVEFSVCBCT1JERVIgUkFESVVTICovXHJcbiAgLS1ib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgLS1ib3JkZXItcmFkaXVzLWZ1bGw6IDEwMCU7XHJcbiAgLS1ib3JkZXItcmFkaXVzLXNtYWxsOiAzcHg7XHJcbiAgLS1ib3JkZXItcmFkaXVzLW1pZGxlOiA1cHg7XHJcbiAgLS1pY29uLWJvcmRlci1yYWRpdXM6IDhweDtcclxuICAvKiBTVEFSVCBCT1JERVIgUkFESVVTICovXHJcblxyXG4gIC8qIFNUQVJUIEFOSU1BVEUgVElNRSovXHJcbiAgLS10aW1lLWhvdmVyOiAuMnM7XHJcbiAgLS10aW1lLW1haW46IC41cztcclxuICAtLXRpbWUtaG92ZXItbnVsbDogLjBzO1xyXG4gIC8qIEVORCBBTklNQVRFIFRJTUUqL1xyXG5cclxuICAvKiBTVEFSVCBJQ09OUyAqL1xyXG4gIC0taWNvbi13aWR0aDogMzBweDtcclxuICAtLWljb24tZm9udC1zaXplOiAzMHB4O1xyXG4gIC0taWNvbi1zbWFsbGVyLXdpZHRoOiAyNnB4O1xyXG4gIC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZTogMjZweDtcclxuICAtLWljb24td2lkdGgtc21hbGw6IDIwcHg7XHJcbiAgLS1pY29uLWZvbnQtc2l6ZS1zbWFsbDogMjBweDtcclxuICAtLWljb24tZm9udDogQGZvbnRJY29uO1xyXG5cclxuICAtLWljb24tY29sb3I6IHZhcigtLWljb24tZ3JleSk7XHJcbiAgLS1pY29uLWNvbG9yLWhvdmVyOiAjNDQ0NDQ0O1xyXG4gIC0taWNvbl9jb2xvcl9hY3RpdmU6ICM0NDQ0NDQ7XHJcbiAgLS1pY29uX2JnOiAjYmZkNmZkO1xyXG4gIC0taWNvbl9iZ19ob3ZlcjogI2JmZDZmZDtcclxuICAtLWljb25fYmdfYWN0aXZlOiAjYmZkNmZkO1xyXG5cclxuICAtLWljb24tY29sb3ItZGlzYWJsZWQ6IHZhcigtLWljb24tZ3JleSk7XHJcbiAgLS1pY29uX2JnLWRpc2FibGVkOiB2YXIoLS1jb2xvci1ncmV5KTtcclxuXHJcbiAgLS1pY29uLWNvbG9yLWJnOiB2YXIoLS1pY29uLWdyZXkpO1xyXG4gIC0taWNvbi1jb2xvci1ob3Zlci1iZzogdmFyKC0taWNvbi1ncmV5LWRhcmspO1xyXG4gIC0taWNvbl9jb2xvcl9hY3RpdmUtYmc6IHZhcigtLWljb24tZ3JleS1kYXJrKTtcclxuICAtLWljb25fYmctYmc6ICB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWljb25fYmdfaG92ZXItYmc6ICB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWljb25fYmdfYWN0aXZlLWJnOiAgdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcblxyXG5cclxuICAtLWljb24tY29sb3ItbGlzdDogdmFyKC0taWNvbi1ncmV5KTtcclxuICAtLWljb24tY29sb3ItaG92ZXItbGlzdDogdmFyKC0tYmctZmZmKTtcclxuICAtLWljb25fY29sb3JfYWN0aXZlLWxpc3Q6IHZhcigtLWJnLWZmZik7XHJcbiAgLS1pY29uX2JnLWxpc3Q6ICB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAtLWljb25fYmdfaG92ZXItbGlzdDogIHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0taWNvbl9iZ19hY3RpdmUtbGlzdDogIHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG5cclxuICAtLWljb24tY29sb3ItOiB2YXIoLS1pY29uLWdyZXkpO1xyXG5cclxuICAtLWljb24tY29udGVudC1jb2xvcjogdmFyKC0tY29sb3Itb3JhbmdlKTtcclxuICAtLWljb24tY29udGVudC1jb2xvci1ob3ZlcjogI2ZmZjtcclxuICAtLWljb24tY29udGVudF9iZzogIHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcbiAgLS1pY29uLWNvbnRlbnRfYmdfaG92ZXI6ICB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG4gIC0taWNvbi1jb250ZW50X2JnX2FjdGl2ZTogIHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblxyXG4gIC0taWNvbi1zdGFyOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG5cclxuICAtLWJ1dHRvbi1tYWluLWNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tYnV0dG9uLW1haW4tYmc6IHZhcigtLWNvbG9yLXB1cnBsZSk7XHJcbiAgLS1idXR0b24tbWFpbi1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWJ1dHRvbi1tYWluLWJnLWhvdmVyOiB2YXIoLS1jb2xvci1wdXJwbGUtZGFyayk7XHJcblxyXG4gIC0tYnV0dG9uLW1haW4tY29sb3ItZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYnV0dG9uLW1haW4tYmctZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG5cclxuICAtLWJ1dHRvbi1jb2xvcjogIzY1NEVGRjtcclxuICAtLWJ1dHRvbi1iZzogI2ViZTdmYztcclxuICAtLWJ1dHRvbi1jb2xvci1ob3ZlcjogIzY1NEVGRjtcclxuICAtLWJ1dHRvbi1iZy1ob3ZlcjogI2Q4ZDBmODtcclxuXHJcbiAgLS1idXR0b24tY29sb3ItZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYnV0dG9uLWJnLWRpc2FibGVkOiB2YXIoLS1jb2xvci1ncmV5KTtcclxuXHJcbiAgLS1idXR0b24tY29sb3ItZGlzYWJsZWQ6ICNmZmY7XHJcbiAgLS1idXR0b24tYmctZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWRhcmstZ3JleSk7XHJcblxyXG4gIC0tYnV0dG9uLWdyZXktY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYnV0dG9uLWdyZXktYmc6IHZhcigtLXN1cGVyX2dyZXlfbGlnaHQpO1xyXG4gIC0tYnV0dG9uLWdyZXktY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYnV0dG9uLWdyZXktYmctaG92ZXI6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG5cclxuICAtLWJ1dHRvbi1mb250LXdlaWdodDogNjAwO1xyXG4gIC0tYnV0dG9uLWJvcmRlci1yYWRpdXM6IDhweDtcclxuICAtLWJnLWRpc2FibGVkOiB2YXIoLS1jb2xvci1kYXJrLWdyZXkpO1xyXG4gIC0tY29sb3ItZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWZmZik7XHJcblxyXG4gIC0tYnV0dG9uLW1haW4tY29sb3ItYmc6ICNmZmY7XHJcbiAgLS1idXR0b24tbWFpbi1iZy1iZzogdmFyKC0tY29sb3ItcHVycGxlLWRhcmspO1xyXG4gIC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXItYmc6ICNmZmY7XHJcbiAgLS1idXR0b24tbWFpbi1iZy1ob3Zlci1iZzogdmFyKC0tY29sb3ItcHVycGxlLWRhcmspO1xyXG5cclxuICAtLWJ1dHRvbi1tYWluLWNvbG9yLWRpc2FibGVkLWJnOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLWJ1dHRvbi1tYWluLWJnLWRpc2FibGVkLWJnOiB2YXIoLS1jb2xvci1ncmV5KTtcclxuXHJcbiAgLS1idXR0b24tY29sb3ItYmc6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYnV0dG9uLWJnLWJnOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWJ1dHRvbi1jb2xvci1ob3Zlci1iZzogI2ZmZjtcclxuICAtLWJ1dHRvbi1iZy1ob3Zlci1iZzogdmFyKC0tY29sb3ItYmx1ZSk7XHJcbiAgLyogRU5EIElDT05TICovXHJcblxyXG4gIC0tdGFibGUtYmctaG92ZXI6IEBzZWxlY3RUYWJsZTtcclxuXHJcbiAgLS1wb3B1cC1vdmVybGF5OiByZ2JhKDQxLCA0NywgNzYsIDAuNyk7XHJcbiAgLS1wb3B1cC1vdmVybGF5LWZhbmN5OiB2YXIoLS1tZW51LWJnKTtcclxuICAtLW1haW4tYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLDAsMCwwLjEpO1xyXG4gIC0tc21hbGwtYm94LXNoYWRvdzogM3B4IDNweCA2cHggcmdiYSgwLDAsMCwwLjEpO1xyXG4gIC0tYm94LXNoYWRvdy1udWxsOiAwIDEwcHggMTBweCByZ2JhKDAsMCwwLDApO1xyXG4gIC0tdGFibGUtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDNweCA1cHg7XHJcbiAgLS1iaWctc2hhZG93OiAwIDEwcHggMTBweCByZ2JhKDAsMCwwLDAuMSk7XHJcbiAgLS1iaWctc2hhZG93LWhvdmVyOiAwIDEwcHggMTBweCByZ2JhKDEwMSwxNTQsMjQ0LDAuNSk7XHJcblxyXG4gIC0tcG9wdXAtY2xvc2UtY29sb3I6IHZhcigtLWNvbG9yLXJlZCk7XHJcbiAgLS1wb3B1cC1jbG9zZS1iZzogdmFyKC0tY29sb3ItcmVkKTtcclxuICAtLXBvcHVwLWNsb3NlLWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tcG9wdXAtY2xvc2UtYmctaG92ZXI6IHZhcigtLWNvbG9yLXJlZCk7XHJcblxyXG4gIC0tcG9wdXAtY2xvc2UtY29sb3ItMjogdmFyKC0tY29sb3ItcmVkKTtcclxuICAtLXBvcHVwLWNsb3NlLWJnLTI6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1wb3B1cC1jbG9zZS1jb2xvci1ob3Zlci0yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tcG9wdXAtY2xvc2UtYmctaG92ZXItMjogdmFyKC0tY29sb3ItcmVkKTtcclxuXHJcblxyXG4gIC8qIFNUQVJUIFBSSU9SSVRZIENPTE9SICovXHJcbiAgLS1jb2xvci13YXJuaW5nOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG4gIC0tcHJpb3JpdHktMTogdmFyKC0tY29sb3ItYmx1ZSk7XHJcbiAgLS1wcmlvcml0eS0yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcbiAgLS1wcmlvcml0eS0zOiB2YXIoLS1jb2xvci15ZWxsb3cpO1xyXG4gIC0tcHJpb3JpdHktNDogdmFyKC0tY29sb3ItcHVycGxlKTtcclxuICAtLXByaW9yaXR5LTU6IHZhcigtLWNvbG9yLWVycm9yKTtcclxuICAtLXByaW9yaXR5LWNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC8qIEVORCBQUklPUklUWSBDT0xPUiAqL1xyXG5cclxuICAvKiBTVEFSVCBUUkFDS0VSIENPTE9SICovXHJcbiAgLS10cmFja2VyLTE6IHZhcigtLWNvbG9yLXJlZCk7XHJcbiAgLS10cmFja2VyLTI6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuICAtLXRyYWNrZXItMzogdmFyKC0tY29sb3ItYmx1ZSk7XHJcbiAgLyogRU5EIFRSQUNLRVIgQ09MT1IgKi9cclxuXHJcbiAgLyogU1RBUlQgRFJPUERPV04gKi9cclxuICAtLWRyb3AtdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1kcm9wLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tZHJvcC1pY29uLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLWRyb3AtaWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1kcm9wLWJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XHJcbiAgLS1kcm9wLWJnOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWRyb3AtYmctaG92ZXI6IHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG4gIC0tZHJvcC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgLyogU1RBUlQgRFJPUERPV04gKi9cclxuXHJcbiAgLyogU1RBUlQgSVNTVUVTICovXHJcblxyXG4gIC0taWNvbi1zYXZlLWNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcbiAgLS1pY29uLXNhdmUtY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1pY29uLXNhdmUtYmc6IHZhcigtLWNvbG9yLWdyZWVuLXN1cGVyLWxpZ2h0KTtcclxuICAtLWljb24tc2F2ZS1iZy1ob3ZlcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cclxuICAtLWljb24tY2xvc2UtY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcclxuICAtLWljb24tY2xvc2UtY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1pY29uLWNsb3NlLWJnOiB2YXIoLS1jb2xvci1yZWQtc3VwZXJsaWdodCk7XHJcbiAgLS1pY29uLWNsb3NlLWJnLWhvdmVyOiB2YXIoLS1jb2xvci1lcnJvcik7XHJcblxyXG4gIC0taWNvbi1kZWxsLWJnOiB2YXIoLS1jb2xvci1yZWQpO1xyXG4gIC0taWNvbi1kZWxsLWJnLWhvdmVyOiB2YXIoLS1jb2xvci1lcnJvcik7XHJcbiAgLS1pY29uLWRlbGwtY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1pY29uLWRlbGwtY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLWZmZik7XHJcblxyXG4gIC0tY29sb3ItbGluazogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgLS1ib3JkZXItY29sb3ItY29udGVudDogI0JCQkZDRDtcclxuICAvKiBFTkQgSVNTVUVTICovXHJcblxyXG4gIC8qIFNUQVJUIFBBR0lOQVRJT04gKi9cclxuXHJcbiAgLS1wYWdpbmF0aW9uLWNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAtLXBhZ2luYXRpb24tY29sb3ItaG92ZXI6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO1xyXG4gIC0tcGFnaW5hdGlvbi1jb2xvci1hdnRpdmU6IHZhcigtLWljb25fY29sb3JfYWN0aXZlKTtcclxuICAtLXBhZ2luYXRpb24tYmc6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1wYWdpbmF0aW9uLWJnLWhvdmVyOiB2YXIoLS1pY29uX2JnX2hvdmVyKTtcclxuICAtLXBhZ2luYXRpb24tYmctYWN0aXZlOiB2YXIoLS1pY29uX2JnX2FjdGl2ZSk7XHJcbiAgLS1wYWdpbmF0aW9uLWZvbnQtd2VpZ2h0OiA3MDA7XHJcblxyXG4gIC8qIEVORCBQQUdJTkFUSU9OICovXHJcblxyXG5cclxuICAvKiBTVEFSVCBGTFlPVVQgTUVOVSAqL1xyXG4gIC0tZmx5b3V0X21lbnVfYmc6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0tZmx5b3V0X21lbnVfY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1mbHlvdXRfbWVudV9ib3JkZXI6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1mbHlvdXRfbWVudV9idXR0b25fYmc6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1mbHlvdXRfbWVudV9idXR0b25fY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0tZmx5b3V0X21lbnVfYmdfc2VsZWN0ZWQ6IHZhcigtLWNvbG9yLXJlZCk7XHJcbiAgLS1mbHlvdXRfbWVudV9jb2xvcl9zZWxlY3RlZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X3RpdGxlX2JnOiAjMDA2N2MzO1xyXG4gIC0tZmx5b3V0X21lbnVfdGl0bGVfY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1mbHlvdXRfbWVudV9hZG1pbl9tZW51X2JnOiAjNmI4ZWZmO1xyXG4gIC0tZmx5b3V0X21lbnVfYWRtaW5fbWVudV9jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X2dlbmVyYWwtbWVudV9iZzogIzgxN2VmZjtcclxuICAtLWZseW91dF9tZW51X2dlbmVyYWwtbWVudV9jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X3Byb2ZpbGUtbWVudV9iZzogIzVEQ0E4NjtcclxuICAtLWZseW91dF9tZW51X3Byb2ZpbGUtbWVudV9jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWZseW91dF9tZW51X3dhdGNoZXJzLW1lbnVfYmc6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuICAtLWZseW91dF9tZW51X3dhdGNoZXJzLW1lbnVfY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS1mbHlvdXQtdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLyogRU5EIEZMWU9VVCBNRU5VICovXHJcblxyXG4gIC8qIFNUQVJUIFRPT0xUSVAgKi9cclxuXHJcbiAgLS10b29sdGlwLWJnOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAtLXRvb2x0aXAtYmctaG92ZXI6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0tdG9vbHRpcC1jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLXRvb2x0aXAtY29sb3ItaG92ZXI6IHZhcigtLWNvbG9yLWZmZik7XHJcblxyXG4gIC8qIEVORCBUT09MVElQICovXHJcblxyXG4gIC8qIFNUQVJUIFNDUk9MTEJBUiAqL1xyXG5cclxuICAtLXNjcm9sbGJhcjogdmFyKC0tY29sb3ItZ3JleSk7XHJcbiAgLS1zY3JvbGxiYXJfaGFuZGxlOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuXHJcbiAgLyogRU5EIFNDUk9MTEJBUiAqL1xyXG59XHJcblxyXG4vKiBTVEFSVCBGT09URVIgKi9cclxuXHJcbiNmb290ZXIge1xyXG4gIC0tYmc6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgLS10ZXh0LWNvbG9yLW1haW46IHZhcigtLWNvbG9yLWdyZXkpO1xyXG4gIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcclxufVxyXG5cclxuLyogRU5EIEZPT1RFUiAqL1xyXG5cclxuLyogU1RBUlQgU0lERUJBUiAqL1xyXG5cclxuI3NpZGViYXIge1xyXG4gIC0tYmc6IHZhcigtLW1haW4tYmctYm94KTtcclxuICAtLW1haW5fY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0tdGV4dC1jb2xvci1tYWluOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLWJvcmRlci1jb2xvcjogI0JCQkZDRDtcclxuXHJcbiAgLS1pY29uLWNvbG9yOiB2YXIoLS1pY29uLWdyZXkpO1xyXG4gIC0taWNvbi1jb2xvci1ob3ZlcjogdmFyKC0taWNvbi1ncmV5LWRhcmspO1xyXG4gIC0taWNvbl9jb2xvcl9hY3RpdmU6IHZhcigtLWljb24tZ3JleS1kYXJrKTtcclxuICAtLWljb25fYmc6IHZhcigtLWNvbG9yLWJsdWUtbGlnaHQpO1xyXG4gIC0taWNvbl9iZ19ob3ZlcjogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcbiAgLS1pY29uX2JnX2FjdGl2ZTogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcblxyXG4gIC0tYnV0dG9uLW1haW4tY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgLS1idXR0b24tbWFpbi1iZzogdmFyKC0tY29sb3ItcHVycGxlKTtcclxuICAtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyOiB2YXIoLS1iZy1mZmYpO1xyXG4gIC0tYnV0dG9uLW1haW4tYmctaG92ZXI6IHZhcigtLWNvbG9yLXB1cnBsZS1kYXJrKTtcclxuXHJcbiAgLS1idXR0b24tY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgLS1idXR0b24tYmc6IHZhcigtLWNvbG9yLXB1cnBsZSk7XHJcbiAgLS1idXR0b24tY29sb3ItaG92ZXI6IHZhcigtLWJnLWZmZik7XHJcbiAgLS1idXR0b24tYmctaG92ZXI6IHZhcigtLWNvbG9yLXB1cnBsZS1kYXJrKTtcclxuXHJcbiAgLS1zY3JvbGwtYmc6ICNFQ0VERjA7XHJcbiAgLS1zY3JvbGwtaGFuZGxlOiAjQkJCRkNEO1xyXG59XHJcblxyXG4jbWFpbiB7XHJcbiAgLS1zaWRlYmFyLW1haW5fY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gIC0tc2lkZWJhci1tYWluX2NvbG9yX3RleHQ6IHZhcigtLWJnLWZmZik7XHJcbiAgLS1zaWRlYmFyLW1haW5fY29sb3JfaG92ZXI6ICMyOTJmNGM7XHJcbiAgLS1zaWRlYmFyLW1haW5fY29sb3JfdGV4dF9ob3ZlcjogdmFyKC0tYmctZmZmKTtcclxuXHJcbiAgLS1zaWRlYmFyLW9wZW4tYnV0dG9uLWJnOiAjZmZmO1xyXG4gIC0tc2lkZWJhci1vcGVuLWJ1dHRvbi1ib3JkZXI6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgLS1zaWRlYmFyLW9wZW4tYnV0dG9uLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLXNpZGViYXItb3Blbi1idXR0b24tYmctaG92ZXI6ICM5RDg5RUU7XHJcbiAgLS1zaWRlYmFyLW9wZW4tYnV0dG9uLWJvcmRlci1ob3ZlcjogIzlEODlFRTtcclxuICAtLXNpZGViYXItb3Blbi1idXR0b24tY29sb3ItaG92ZXI6ICNmZmY7XHJcbn1cclxuXHJcbi8qIEVORCBTSURFQkFSICovXHJcblxyXG4jYWRtaW4tbWVudSxcclxuI21haW4tbWVudSxcclxuLm1vZC1vYmoge1xyXG4gIC0tYmc6ICMyMDIzM0Q7XHJcbiAgLS1ib3JkZXItY29sb3I6ICMyMDIzM0Q7XHJcbiAgLS1ib3JkZXItY29sb3ItbG9nbzogIzQ4NEM3ODtcclxuICAtLWxpbmstY29sb3I6ICNDN0I4RkY7XHJcbiAgLS1saW5rLWNvbG9yLWhvdmVyOiAjRTE4MkZGO1xyXG4gIC0tbGluay1jb2xvci1hY3RpdmU6ICNDN0I4RkY7XHJcbiAgLS1zY3JvbGxiYXI6ICMyMDIzM0Q7XHJcbiAgLS1zY3JvbGxiYXJfaGFuZGxlOiAjQzdCOEZGO1xyXG4gIC0taWNvbi1jb2xvcjogI0M3QjhGRjtcclxuICAtLWljb24tY29sb3ItaG92ZXI6ICNFMTgyRkY7XHJcbiAgLS1pY29uX2NvbG9yX2FjdGl2ZTogI0M3QjhGRjtcclxuXHJcbiAgLS1pY29uX2JnOiB2YXIoLS1tZW51LWJnKTtcclxuICAtLWljb25fYmdfaG92ZXI6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0taWNvbl9iZ19hY3RpdmU6IHZhcigtLW1lbnUtZ3JleSk7XHJcbiAgLS1tYWluLW1lbnUtZm9udC13ZWlnaHQ6IDcwMDtcclxuICAtLW1lbnUtY2hpbGRyZW4tZm9udC13ZWlnaHQ6IDUwMDtcclxuICAtLWZseW91dC1tZW51LWZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgLS1zdWJtaXQtZm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuI2FkbWluLWluZGV4IHtcclxuICAtLWFkbWluLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tYWRtaW4tY29sb3ItYWZ0ZXI6IHZhcigtLW1lbnUtYmcpO1xyXG4gIC0tYWRtaW4tY29sb3ItYWZ0ZXItaG92ZXI6IHZhcigtLW1lbnUtYmcpO1xyXG4gIC0tYWRtaW4tY29sb3ItdGV4dC1ob3ZlcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbn1cclxuXHJcbiN0b3AtbWVudSB7XHJcbiAgLS1iZzogdmFyKC0tbWFpbi1iZy1ib3gpO1xyXG4gIC0taWNvbi1jb2xvcjogdmFyKC0taWNvbi1ncmV5KTtcclxuICAtLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWljb24tZ3JleS1kYXJrKTtcclxuICAtLWljb25fY29sb3JfYWN0aXZlOiB2YXIoLS1pY29uLWdyZXktZGFyayk7XHJcbiAgLS1ib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWdyZXkpO1xyXG4gIC0taWNvbl9iZzogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcbiAgLS1pY29uX2JnX2hvdmVyOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuICAtLWljb25fYmdfYWN0aXZlOiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KTtcclxuXHJcbiAgLS10b3Atbm90aWZpY2F0aW9uOiB2YXIoLS10cmFja2VyLTEpO1xyXG4gIC0tdG9wLW5vdGlmaWNhdGlvbi1jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWxpbmstY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tbGluay1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItYmx1ZSk7XHJcbiAgLS1saW5rLWJnOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tbGluay1iZy1ob3ZlcjogdmFyKC0tY29sb3ItYmx1ZS1saWdodCk7XHJcbiAgLS10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcclxuICAtLXN0YXJ0LXRpbWUtYmctdGltZTogdmFyKC0tbWVudS1iZyk7XHJcbiAgLS1zdGFydC10aW1lLXRleHQtY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbn1cclxuXHJcbi5yZXZvLW1vZGFsLWJhZGdlIHtcclxuICAtLWJnOiB2YXIoLS1iZy1ib3gpO1xyXG4gIC0tbGluay1iZzogdmFyKC0tY29sb3ItZmZmKTtcclxuICAtLWJnLXRpdGxlOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1saW5rLWNvbG9yOnZhcigtLWNvbG9yLWRhcmspO1xyXG4gIC0tbGluay1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbiAgLS1saW5rLWJnOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gIC0tbGluay1iZy1ob3ZlcjogdmFyKC0tYWxsLWhvdmVyLWJnKTtcclxuICAtLWJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XHJcbn1cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5AaW1wb3J0IFwiX3ZhcnMtaWNvblwiO1xyXG4vKiAyMC4wMy4yMDIyICovXHJcbi8qIFNUQVJUIEZPTlQgVkFSSUFCTEVTICovXHJcbkBnZmY6IHNhbnMtc2VyaWY7XHJcbkBnZnM6IDFyZW07XHJcbkBnbGg6IDEuNDtcclxuQGdsaDI6IDEuNDtcclxuQGZvbnRJY29uOiBcIldGUy1STS1mb250XCI7XHJcbi8qIEVORCBGT05UIFZBUklBQkxFUyAqL1xyXG5cclxuLyogVkFSUyAqL1xyXG4uYm9yZGVyLXJhZGl1cyAoQHJhZGl1cykge1xyXG4gIGJvcmRlci1yYWRpdXM6IEByYWRpdXM7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogQHJhZGl1cztcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgQUxMIFZBUklBQkxFUyBGT1IgV09SSyBMRVNTICovXHJcbi5ib3JhZCAoQHJhZGl1cykge1xyXG4gIGJvcmRlci1yYWRpdXM6IEByYWRpdXM7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogQHJhZGl1cztcclxufVxyXG4uYm9yZGVyYigpe1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG4uYW5pbShAd2hhdCwgQHRpbWUpe1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogQHdoYXQgQHRpbWUgZWFzZS1pbi1vdXQ7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBAd2hhdCBAdGltZSBlYXNlLWluLW91dDtcclxuICB0cmFuc2l0aW9uOiBAd2hhdCBAdGltZSBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgQk9SREVSIFJBRElVUyBWQVJJQUJMRVMgKi9cclxuQHJhZDogOHB4O1xyXG5AcmFkTWlkZGxlOiA1cHg7XHJcbkByYWRzbWFsbDogM3B4O1xyXG5AcmFkRnVsbDogMTAwJTtcclxuLyogRU5EIEJPUkRFUiBSQURJVVMgVkFSSUFCTEVTICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBGT05UIFNJU0UgKyBMSU5FIEhJR0hUICovXHJcbkBmczIwOiAxLjQyODU3MTQyODU3MTQyOXJlbTtcclxuQGZzMTg6IDEuMjg1NzE0Mjg1NzE0Mjg2cmVtO1xyXG5AZnMxNjogMS4xNDI4cmVtO1xyXG5AZnMxMjogMC44NTcxNDI4NTcxNDI4NTdyZW07XHJcbkBmczExOiAwLjc4NTdyZW07XHJcbkBmczEwOiAwLjcxNDJyZW07XHJcbi8qIFNUQVJUIDEwMjQqL1xyXG5AMTAyNF9oMTogMS41cmVtO1xyXG5AMTAyNF9oMjogMS40Mjg1cmVtO1xyXG5AMTAyNF9oMzogMS41cmVtO1xyXG5AMTAyNF9oNDogMS41cmVtO1xyXG5AMTAyNF9oNTogMS41cmVtO1xyXG5AMTAyNF9oNjogMS41cmVtO1xyXG4vKiAgU1RBUlQgNzY4Ki9cclxuQDc4Nl9oMTogMS41cmVtO1xyXG5ANzg2X2gyOiAxLjEyODVyZW07XHJcbkA3ODZfaDM6IDEuNXJlbTtcclxuQDc4Nl9oNDogMS41cmVtO1xyXG5ANzg2X2g1OiAxLjVyZW07XHJcbkA3ODZfaDY6IDEuNXJlbTtcclxuLyogIFNUQVJUIDUwMCovXHJcbkA1MDBfaDE6IDEuMnJlbTtcclxuQDUwMF9oMjogMS4xNDI4cmVtO1xyXG5ANTAwX2gzOiAxLjJyZW07XHJcbkA1MDBfaDQ6IDEuMnJlbTtcclxuQDUwMF9oNTogMS4ycmVtO1xyXG5ANTAwX2g2OiAxLjJyZW07XHJcbi8qIEVORCBGT05UIFNJU0UgKyBMSU5FIEhJR0hUICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBKQ0YgKi9cclxuQHdiYXI6IDNweDtcclxuXHJcbkBoVXBEb3duOiAwO1xyXG4vKiBFTkQgSkNGICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBBTklNQVRFIFRJTUUqL1xyXG5AdGltZWhvdmVyOiAuMnM7IC8qIGhvdmVyICovXHJcbkB0aW1lbWFpbjogLjVzOyAvKiBNYWluIGJpZyBibG9rcyBhbmltYXRlZCAqL1xyXG5AdGltZU51bGw6IC4wcztcclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE9QQUNJVFkgKi9cclxuXHJcbkBvcGFjaXR5OiAwLjI7XHJcblxyXG4vKiBFTkQgT1BBQ0lUWSovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBJQ09OUyBWQVIgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIElDT04gRk9OVFMgKi9cclxuXHJcbkBhY3Rpdml0eS1saXN0OiBAaWNvbi10aGluLWFjdGl2aXR5LWxpc3Q7IC8qIE9LICovXHJcbkBhY3Rpdml0eTogQGljb24tdGhpbi1hY3Rpdml0eTsgLyogT0sgKi9cclxuQGFkZC1wYXltZW50OiBAaWNvbi10aGluLWFkZC1wYXltZW50OyAvKiBPSyAqL1xyXG5AYWRtaW5pc3RyYXRpb246IEBpY29uLXRoaW4tYWRtaW5pc3RyYXRpb247IC8qIE9LICovXHJcbkBhZ2lsZTogQGljb24tdGhpbi1hZ2lsZTsgLyogT0sgKi9cclxuQGFyY2hpdmU6IEBpY29uLXRoaW4tYXJjaGl2ZTsgLyogT0sgKi9cclxuQGFycm93LWJvdHRvbTogQGljb24tdGhpbi1hcnJvdy1ib3R0b207IC8qIE9LICovXHJcbkBhcnJvdy1kb3VibGUtZG93bjogQGljb24tdGhpbi1hcnJvdy1kb3VibGUtZG93bjsgLyogT0sgKi9cclxuQGFycm93LWRvdWJsZS11cDogQGljb24tdGhpbi1hcnJvdy1kb3VibGUtdXA7IC8qIE9LICovXHJcbkBhcnJvdy1kb3duOiBAaWNvbi10aGluLWFycm93LWRvd247IC8qIE9LICovXHJcbkBhcnJvdy1sZWZ0OiBAaWNvbi10aGluLWFycm93LWxlZnQ7IC8qIE9LICovXHJcbkBhcnJvdy1yaWdodDogQGljb24tdGhpbi1hcnJvdy1yaWdodDsgLyogT0sgKi9cclxuQGFycm93LXRvcDogQGljb24tdGhpbi1hcnJvdy10b3A7IC8qIE9LICovXHJcbkBhcnJvdy13aWRlLXJpZ2h0OiBAaWNvbi10aGluLWFycm93LXdpZGUtcmlnaHQ7IC8qIE9LICovXHJcbkBhdG9tOiBAaWNvbi10aGluLWF0b207IC8qIE9LICovXHJcbkBiYXNrZXQ6IEBpY29uLXRoaW4tYmFza2V0OyAvKiBPSyAqL1xyXG5AYm9hcmRzOiBAaWNvbi10aGluLWJvYXJkczsgLyogT0sgKi9cclxuQGJvb2ttYXJrOiBAaWNvbi10aGluLWJvb2ttYXJrOyAvKiBPSyAqL1xyXG5AY2FsZW5kYXI6IEBpY29uLXRoaW4tY2FsZW5kYXI7IC8qIE9LICovXHJcbkBjYXJ0OiBAaWNvbi10aGluLWNhcnQ7IC8qIE9LICovXHJcbkBjaGFuZ2UtdXNlcjogQGljb24tdGhpbi1jaGFuZ2UtdXNlcjsgLyogT0sgKi9cclxuQGNoZWNrZWQ6IEBpY29uLXRoaW4tY2hlY2tlZDsgLyogT0sgKi9cclxuQGNsaXA6IEBpY29uLXRoaW4tY2xpcDsgLyogT0sgKi9cclxuQGNsb3NlLW5ldy1zbWFsbDogQGljb24tdGhpbi1jbG9zZS1uZXctc21hbGw7IC8qIE9LICovXHJcbkBjbG9zZS1uZXc6IEBpY29uLXRoaW4tY2xvc2UtbmV3OyAvKiBPSyAqL1xyXG5AY29tbWVudDogQGljb24tdGhpbi1jb21tZW50OyAvKiBPSyAqL1xyXG5AY29tcGFueTogQGljb24tdGhpbi1jb21wYW55OyAvKiBPSyAqL1xyXG5AY29udGFjdHM6IEBpY29uLXRoaW4tY29udGFjdHM7IC8qIE9LICovXHJcbkBjb3B5OiBAaWNvbi10aGluLWNvcHk7IC8qIE9LICovXHJcbkBjc3Y6IEBpY29uLXRoaW4tY3N2OyAvKiBPSyAqL1xyXG5AY3VzdG9tLWZpZWxkczogQGljb24tdGhpbi1jdXN0b20tZmllbGRzOyAvKiBPSyAqL1xyXG5AZGVhbHM6IEBpY29uLXRoaW4tZGVhbHM7IC8qIE9LICovXHJcbkBkZWw6IEBpY29uLXRoaW4tZGVsOyAvKiBPSyAqL1xyXG5AZGVzY3JpcHRpb246IEBpY29uLXRoaW4tZGVzY3JpcHRpb247IC8qIE9LICovXHJcbkBkaWFtb25kOiBAaWNvbi10aGluLWRpYW1vbmQ7LyogT0sgKi9cclxuQGRvY3VtZW50czogQGljb24tdGhpbi1kb2N1bWVudHM7IC8qIE9LICovXHJcbkBkb2N4LWZpbGU6IEBpY29uLXRoaW4tZG9jeDsgLyogT0sgKi9cclxuQGRvbGxhcjogQGljb24tdGhpbi1kb2xsYXI7LyogT0sgKi9cclxuQGRvd25sb2FkOiBAaWNvbi10aGluLWRvd25sb2FkOyAvKiBPSyAqL1xyXG5AZWRpdDogQGljb24tdGhpbi1lZGl0OyAvKiBPSyAqL1xyXG5AZW1haWw6IEBpY29uLXRoaW4tZW1haWw7IC8qIE9LICovXHJcbkBlbnVtZXJhdGlvbnM6IEBpY29uLXRoaW4tZW51bWVyYXRpb25zOyAvKiBPSyAqL1xyXG5AZXhwZW5zZXM6IEBpY29uLXRoaW4tZXhwZW5zZXM7IC8qIE9LICovXHJcbkBleHRlcm5hbDogQGljb24tdGhpbi1leHRlcm5hbDsgLyogT0sgKi9cclxuQGV4dHJhLW1lbnU6IEBpY29uLXRoaW4tZXh0cmEtbWVudTsgLyogT0sgKi9cclxuQGZhdjpAaWNvbi10aGluLWZhdjsgLyogT0sgKi9cclxuQGZhdm9yaXQ6IEBpY29uLXRoaW4tZmF2b3JpdDsgLyogT0sgKi9cclxuQGZpbGVzOiBAaWNvbi10aGluLWZpbGVzOyAvKiBPSyAqL1xyXG5AZmlsdGVyOiBAaWNvbi10aGluLWZpbHRlcjsgLyogT0sgKi9cclxuQGZpbmFuY2U6IEBpY29uLXRoaW4tZmluYW5jZTsgLyogT0sgKi9cclxuQGZ1bGxzY3JlZW46IEBpY29uLXRoaW4tZnVsbHNjcmVlbjsgLyogT0sgKi9cclxuQGdhbnR0OiBAaWNvbi10aGluLWdhbnR0Oy8qIE9LICovXHJcbkBncm91cDogQGljb24tdGhpbi1ncm91cDsvKiBPSyAqL1xyXG5AaGVscDogQGljb24tdGhpbi1oZWxwOyAvKiBPSyAqL1xyXG5AaG9tZTogQGljb24tdGhpbi1ob21lOyAvKiBPSyAqL1xyXG5AaWNvbi1hY2NvdW50LXByb2plY3RzOiBAaWNvbi10aGluLWFjY291bnQtcHJvamVjdHM7IC8qIE9LICovXHJcbkBpY29uLWFjdGlvbi1sYXlvdXRzOiBAaWNvbi10aGluLWFjdGlvbi1sYXlvdXRzOyAvKiBPSyAqL1xyXG5AaWNvbi1hZGRpdGlvbmFsczogQGljb24tdGhpbi1hZGRpdGlvbmFsczsgLyogT0sgKi9cclxuQGljb24tYXJjaGl2ZTogQGljb24tdGhpbi1hcmNoaXZlOy8qIE9LICovXHJcbkBpY29uLWF0dGFjaG1lbnQ6IEBpY29uLXRoaW4tYXR0YWNobWVudDsgLyogT0sgKi9cclxuQGljb24tYmFjazogQGljb24tdGhpbi1iYWNrOyAvKiBPSyAqL1xyXG5AaWNvbi1iYWNrbG9nOiBAaWNvbi10aGluLWJhY2tsb2c7IC8qIE9LICovXHJcbkBpY29uLWJhdHRlcnk6IEBpY29uLXRoaW4tYmF0dGVyeTsgLyogT0sgKi9cclxuQGljb24tYzogQGljb24tdGhpbi1jcGx1czsgLyogT0sgKi9cclxuQGljb24tY2xvc2Utc2VhcmNoOiBAaWNvbi10aGluLWNsb3NlLXNlYXJjaDsgLyogT0sgKi9cclxuQGljb24tY29tbWVudHM6IEBpY29uLXRoaW4tY29tbWVudHM7IC8qIE9LICovXHJcbkBpY29uLWNybTogQGljb24tdGhpbi1jcm07IC8qIE9LICovXHJcbkBpY29uLWNzaGFycDogQGljb24tdGhpbi1jc2hhcnA7IC8qIE9LICovXHJcbkBpY29uLWNzczogQGljb24tdGhpbi1jc3M7IC8qIE9LICovXHJcbkBpY29uLWRpZmY6IEBpY29uLXRoaW4tZGlmZjsgLyogT0sgKi9cclxuQGljb24tZG1zZjogQGljb24tdGhpbi1kbXNmOyAvKiBPSyAqL1xyXG5AaWNvbi1kb2N1bWVudDogQGljb24tdGhpbi1kb2N1bWVudDsgLyogT0sgKi9cclxuQGljb24tZG9jeC0yOiBAaWNvbi10aGluLWRvY3g7IC8qIE9LICovXHJcbkBpY29uLWRvY3g6IEBpY29uLXRoaW4tZG9jeDsgLyogT0sgKi9cclxuQGljb24tZG93bi0xOiBAaWNvbi10aGluLWRvd24tMTsgLyogT0sgKi9cclxuQGljb24tZG93bi0yOiBAaWNvbi10aGluLWRvd24tMjsgLyogT0sgKi9cclxuQGljb24tZHJpdmU6IEBpY29uLXRoaW4tZHJpdmU7IC8qIE9LICovXHJcbkBpY29uLUVSUDogQGljb24tdGhpbi1FUlA7IC8qIE9LICovXHJcbkBpY29uLUVWTTogQGljb24tdGhpbi1FVk07IC8qIE9LICovXHJcbkBpY29uLWZhdi1vZmY6IEBpY29uLXRoaW4tZmF2LW9mZjsgLyogT0sgKi9cclxuQGljb24tZm9sZGVyOiBAaWNvbi10aGluLWZvbGRlcjsgLyogT0sgKi9cclxuQGljb24tZ2lmOiBAaWNvbi10aGluLWdpZjsgLyogT0sgKi9cclxuQGljb24tZ2l0LW5ldzogQGljb24tdGhpbi1naXQtbmV3O1xyXG5AaWNvbi1naXQ6IEBpY29uLXRoaW4tZ2l0OyAvKiBPSyAqL1xyXG5AaWNvbi1oZWFydDogQGljb24tdGhpbi1oZWFydDsgLyogT0sgKi9cclxuQGljb24taGlzdG9yeTogQGljb24tdGhpbi1oaXN0b3J5OyAvKiBPSyAqL1xyXG5AaWNvbi1ob3VyZ2xhc3M6IEBpY29uLXRoaW4taG91cmdsYXNzOyAvKiBPSyAqL1xyXG5AaWNvbi1odG1sOiBAaWNvbi10aGluLWh0bWw7IC8qIE9LICovXHJcbkBpY29uLWltcG9ydDogQGljb24tdGhpbi1pbXBvcnQ7IC8qIE9LICovXHJcbkBpY29uLWludmVudG9yeTogQGljb24tdGhpbi1pbnZlbnRvcnk7IC8qIE9LICovXHJcbkBpY29uLWphdmE6IEBpY29uLXRoaW4tamF2YTsgLyogT0sgKi9cclxuQGljb24tanBnOiBAaWNvbi10aGluLWpwZzsgLyogT0sgKi9cclxuQGljb24tanM6IEBpY29uLXRoaW4tanM7IC8qIE9LICovXHJcbkBpY29uLWthbmJhbjogQGljb24tdGhpbi1rYW5iYW47XHJcbkBpY29uLWtleTogQGljb24tdGhpbi1rZXk7IC8qIE9LICovXHJcbkBpY29uLWtleTI6IEBpY29uLXRoaW4ta2V5MjsgLyogT0sgKi9cclxuQGljb24ta25vd2xlZGdlYmFzZTogQGljb24tdGhpbi1rbm93bGVkZ2ViYXNlOyAvKiBPSyAqL1xyXG5AaWNvbi1saWtlOiBAaWNvbi10aGluLWxpa2U7IC8qIE9LICovXHJcbkBpY29uLWxvZ3M6IEBpY29uLXRoaW4tbG9nczsgLyogT0sgKi9cclxuQGljb24tbWVudXM6IEBpY29uLXRoaW4tbWVudXM7IC8qIE9LICovXHJcbkBpY29uLW1lcmdlOiBAaWNvbi10aGluLW1lcmdlOyAvKiBPSyAqL1xyXG5AaWNvbi1tb25pdG9yaW5nLWNvbnRyb2xsaW5nOiBAaWNvbi10aGluLW1vbml0b3JpbmctY29udHJvbGxpbmc7IC8qIE9LICovXHJcbkBpY29uLW1vdmU6IEBpY29uLXRoaW4tbW92ZTsgLyogT0sgKi9cclxuQGljb24tbm8taW52b2ljZXM6IEBpY29uLXRoaW4tbm8taW52b2ljZXM7IC8qIE9LICovXHJcbkBpY29uLW5vcm1hbC1pc3N1ZXM6IEBpY29uLXRoaW4tbm9ybWFsLWlzc3VlczsgLyogT0sgKi9cclxuQGljb24tbm90aWZpY2F0aW9uczogQGljb24tdGhpbi1ub3RpZmljYXRpb25zOyAvKiBPSyAqL1xyXG5AaWNvbi1vZHQ6IEBpY29uLXRoaW4tb2R0OyAvKiBPSyAqL1xyXG5AaWNvbi1vcGVuLXNlYXJjaDogQGljb24tdGhpbi1vcGVuLXNlYXJjaDsgLyogT0sgKi9cclxuQGljb24tcGFnZXM6IEBpY29uLXRoaW4tcGFnZXM7IC8qIE9LICovXHJcbkBpY29uLXBhc3N3ZDogQGljb24tdGhpbi1wYXNzd2Q7IC8qIE9LICovXHJcbkBpY29uLXBhdXNlOiBAaWNvbi10aGluLXBhdXNlOyAvKiBPSyAqL1xyXG5AaWNvbi1wZXJpb2RpYy10YXNrczogQGljb24tdGhpbi1wZXJpb2RpYy10YXNrczsgLyogT0sgKi9cclxuQGljb24tcGhwOiBAaWNvbi10aGluLXBocDsgLyogT0sgKi9cclxuQGljb24tcGxheTogQGljb24tdGhpbi1wbGF5OyAvKiBPSyAqL1xyXG5AaWNvbi1wbmc6IEBpY29uLXRoaW4tcG5nOyAvKiAgLS0tLSAgKi9cclxuQGljb24tcHJldmlldy1zYWxhcnk6IEBpY29uLXRoaW4tcHJldmlldy1zYWxhcnk7IC8qIE9LICovXHJcbkBpY29uLXByaW50OiBAaWNvbi10aGluLXByaW50OyAvKiBPSyAqL1xyXG5AaWNvbi1yZXBvcnRzOiBAaWNvbi10aGluLXJlcG9ydHM7IC8qIE9LICovXHJcbkBpY29uLXJpc2tzOiBAaWNvbi10aGluLXJpc2tzOyAvKiBPSyAqL1xyXG5AaWNvbi1yb2xlczogQGljb24tdGhpbi1yb2xlczsgLyogT0sgKi9cclxuQGljb24tcnVieTogQGljb24tdGhpbi1ydWJ5OyAvKiBPSyAqL1xyXG5AaWNvbi1zY3JvbGw6IEBpY29uLXRoaW4tc2Nyb2xsOyAvKiBPSyAqL1xyXG5AaWNvbi1zY3J1bTogQGljb24tdGhpbi1zY3J1bTsgLyogT0sgKi9cclxuQGljb24tc21hbGwtaXNzdWVzOiBAaWNvbi10aGluLXNtYWxsLWlzc3VlczsgLyogT0sgKi9cclxuQGljb24tc25pcHBldHM6IEBpY29uLXRoaW4tc25pcHBldHM7IC8qIE9LICovXHJcbkBpY29uLXNwcmludC1ib2FyZDogQGljb24tdGhpbi1zcHJpbnQtYm9hcmQ7IC8qIE9LICovXHJcbkBpY29uLXNwcmludC1idXJuZG93bjogQGljb24tdGhpbi1zcHJpbnQtYnVybmRvd247IC8qIE9LICovXHJcbkBpY29uLXN0YXRpc3RpY3M6IEBpY29uLXRoaW4tc3RhdGlzdGljczsgLyogT0sgKi9cclxuQGljb24tc3RvcDogQGljb24tdGhpbi1zdG9wOyAvKiBPSyAqL1xyXG5AaWNvbi1zdXJ2ZXk6IEBpY29uLXRoaW4tc3VydmV5OyAvKiBPSyAqL1xyXG5AaWNvbi10ZW1wbGF0ZXM6IEBpY29uLXRoaW4tdGVtcGxhdGVzOyAvKiBPSyAqL1xyXG5AaWNvbi10ZXh0OiBAY2xhc3NpYy10ZXh0O1xyXG5AaWNvbi10aWNrZXRzOiBAaWNvbi10aGluLXRpY2tldHM7IC8qIE9LICovXHJcbkBpY29uLXRpbWVyOiBAY2xhc3NpYy10aW1lcjtcclxuQGljb24tdW4tbGlrZTogQGljb24tdGhpbi11bi1saWtlOyAvKiBPSyAqL1xyXG5AaWNvbi11cC0xOiBAaWNvbi10aGluLXVwLTE7IC8qIE9LICovXHJcbkBpY29uLXVwLTI6IEBpY29uLXRoaW4tdXAtMjsgLyogT0sgKi9cclxuQGljb24tdXBsb2FkOiBAaWNvbi10aGluLXVwbG9hZDsgLyogT0sgKi9cclxuQGljb24tdmFyaWFibGVzOiBAaWNvbi10aGluLXZhcmlhYmxlczsgLyogT0sgKi9cclxuQGljb24td2JzOiBAaWNvbi10aGluLXdiczsgLyogT0sgKi9cclxuQGljb24td3JlY2s6IEBpY29uLXRoaW4td3JlY2s7IC8qIE9LICovXHJcbkBpY29uLXhtbDogQGljb24tdGhpbi14bWw7IC8qIE9LICovXHJcbkBpY29uLXlvdXR1YmU6IEBpY29uLXRoaW4teW91dHViZTsgLyogT0sgKi9cclxuQGljb24temlwOiBAaWNvbi10aGluLXppcDsgLyogT0sgKi9cclxuQGludm9pY2VzOiBAaWNvbi10aGluLWludm9pY2VzOyAvKiBPSyAqL1xyXG5AaXNzdWVzOiBAaWNvbi10aGluLWlzc3VlczsgLyogT0sgKi9cclxuQGxkYXAtYXV0aGVudGljYXRpb246IEBpY29uLXRoaW4tbGRhcC1hdXRoZW50aWNhdGlvbjsgLyogT0sgKi9cclxuQGxpbmstYnJlYWs6IEBpY29uLXRoaW4tbGluay1icmVhazsgLyogT0sgKi9cclxuQGxvY2s6IEBpY29uLXRoaW4tbG9jazsgLyogT0sgKi9cclxuQGxvZ2luOiBAaWNvbi10aGluLWxvZ2luOyAvKiBPSyAqL1xyXG5AbG9nb3V0OiBAaWNvbi10aGluLWxvZ291dDsgLyogT0sgKi9cclxuQG1haWxjaGltcDogQGNsYXNzaWMtbWFpbGNoaW1wO1xyXG5AbWVldGluZzogQGljb24tdGhpbi1tZWV0aW5nOyAvKiBPSyAqL1xyXG5AbW9uZXk6IEBpY29uLXRoaW4tbW9uZXk7IC8qIE9LICovXHJcbkBteS1hY2NvdW50OiBAaWNvbi10aGluLW15LWFjY291bnQ7IC8qIE9LICovXHJcbkBteS1wYWdlOiBAaWNvbi10aGluLW15LXBhZ2U7IC8qIE9LICovXHJcbkBuZXctb2JqZWN0OiBAaWNvbi10aGluLW5ldy1vYmplY3Q7IC8qIE9LICovXHJcbkBuZXdzOiBAaWNvbi10aGluLW5ld3M7IC8qIE9LICovXHJcbkBuZXh0OiBAaWNvbi10aGluLW5leHQ7IC8qIE9LICovXHJcbkBub3RlOiBAaWNvbi10aGluLW5vdGU7IC8qIE9LICovXHJcbkBvcGVuLWZvbGRlcjogQGljb24tdGhpbi1vcGVuLWZvbGRlcjsgLyogT0sgKi9cclxuQG9wZW4tc2lkZWJhci1ob3I6IEBpY29uLXRoaW4tb3Blbi1zaWRlYmFyLWhvcjsgLyogT0sgKi9cclxuQG9wZW4tc2lkZWJhcjogQGljb24tdGhpbi1vcGVuLXNpZGViYXI7IC8qIE9LICovXHJcbkBvcmRlcnM6IEBpY29uLXRoaW4tb3JkZXJzOyAvKiBPSyAqL1xyXG5Ab3ZlcnZpZXc6IEBpY29uLXRoaW4tb3ZlcnZpZXc7IC8qIE9LICovXHJcbkBwZGY6IEBpY29uLXRoaW4tcGRmOyAvKiBPSyAqL1xyXG5AcGVvcGxlOiBAaWNvbi10aGluLXBlb3BsZTsgLyogT0sgKi9cclxuQHBob25lOiBAaWNvbi10aGluLXBob25lOyAvKiBPSyAqL1xyXG5AcGhvdG86IEBpY29uLXRoaW4tcGhvdG87IC8qIE9LICovXHJcbkBwbGFubmluZzogQGljb24tdGhpbi1wbGFubmluZzsgLyogT0sgKi9cclxuQHBsdWdpbnM6IEBpY29uLXRoaW4tcGx1Z2luczsgLyogT0sgKi9cclxuQHBuZzogQGljb24tdGhpbi1wbmc7IC8qIE9LICovXHJcbkBwcmV2OiBAaWNvbi10aGluLXByZXY7IC8qIE9LICovXHJcbkBwcm9kdWN0czogQGljb24tdGhpbi1wcm9kdWN0czsgLyogT0sgKi9cclxuQHByb2plY3RzOiBAaWNvbi10aGluLXByb2plY3RzOyAvKiBPSyAqL1xyXG5AcXVlc3Rpb25zOiBAaWNvbi10aGluLXF1ZXN0aW9uczsgLyogT0sgKi9cclxuQHF1aWNrLXNlYXJjaDogQGljb24tdGhpbi1xdWljay1zZWFyY2g7XHJcbkByZWdpc3RlcjogQGljb24tdGhpbi1yZWdpc3RlcjsgLyogT0sgKi9cclxuQHJlbG9hZC0yOiBAaWNvbi10aGluLXJlbG9hZC0yOyAvKiBPSyAqL1xyXG5AcmVsb2FkOiBAaWNvbi10aGluLXJlbG9hZDsgLyogT0sgKi9cclxuQHJlcG9ydDogQGljb24tdGhpbi1yZXBvcnQ7IC8qIE9LICovXHJcbkByZXBvc2l0b3J5OiBAaWNvbi10aGluLXJlcG9zaXRvcnk7IC8qIE9LICovXHJcbkByZXNvdXJjZXM6IEBpY29uLXRoaW4tcmVzb3VyY2VzOyAvKiBPSyAqL1xyXG5Acm9hZG1hcDogQGljb24tdGhpbi1yb2FkbWFwOyAvKiBPSyAqL1xyXG5Acm9zZXR0ZTogQGljb24tdGhpbi1yb3NldHRlOyAvKiBPSyAqL1xyXG5Ac2F2ZS1uZXc6IEBpY29uLXRoaW4tc2F2ZS1uZXc7IC8qIE9LICovXHJcbkBzYXZlOiBAaWNvbi10aGluLXNhdmU7IC8qIE9LICovXHJcbkBzZWFyY2gtZG93bi1hcnJvdzogQGljb24tdGhpbi1zZWFyY2gtZG93bi1hcnJvdzsgLyogT0sgKi9cclxuQHNlYXJjaDogQGljb24tdGhpbi1zZWFyY2g7IC8qIE9LICovXHJcbkBzZXR0aW5nczogQGljb24tdGhpbi1zZXR0aW5nczsgLyogT0sgKi9cclxuQHNvcnQtaGFuZGxlOiBAaWNvbi10aGluLXNvcnQtaGFuZGxlOyAvKiBPSyAqL1xyXG5Ac3RhdHM6IEBpY29uLXRoaW4tc3RhdHM7IC8qIE9LICovXHJcbkBzdW1tYXJ5OiBAaWNvbi10aGluLXN1bW1hcnk7IC8qIE9LICovXHJcbkB0YWdzOiBAaWNvbi10aGluLXRhZ3M7IC8qIE9LICovXHJcbkB0aW1lLWVudHJpZXM6IEBpY29uLXRoaW4tdGltZS1lbnRyaWVzOyAvKiBPSyAqL1xyXG5AdHh0OiBAaWNvbi10aGluLXR4dDsgLyogT0sgKi9cclxuQHVubG9jazogQGljb24tdGhpbi11bmxvY2s7IC8qIE9LICovXHJcbkB1c2VyOiBAaWNvbi10aGluLXVzZXI7IC8qIE9LICovXHJcbkB2Y2Y6IEBpY29uLXRoaW4tdmNmOyAvKiBPSyAqL1xyXG5Adm90ZXM6IEBpY29uLXRoaW4tdm90ZXM7IC8qIE9LICovXHJcbkB3YXJuaW5nOiBAaWNvbi10aGluLXdhcm5pbmc7IC8qIE9LICovXHJcbkB3aWtpOiBAaWNvbi10aGluLXdpa2k7IC8qIE9LICovXHJcbkB3b3JrZmxvdzogQGljb24tdGhpbi13b3JrZmxvdzsgLyogT0sgKi9cclxuQHhsczogQGljb24tdGhpbi14bHM7IC8qIE9LICovXHJcbkB6b29tLWluOiBAaWNvbi10aGluLXpvb20taW47IC8qIE9LICovXHJcbkB6b29tLW91dDogQGljb24tdGhpbi16b29tLW91dDsgLyogT0sgKi9cclxuQGljb24tZ2xvc3Nhcnk6IEBpY29uLXRoaW4tZ2xvc3Nhcnk7XHJcbkBpY29uLWNyZWRlbnRpYWxzOiBAaWNvbi10aGluLWNyZWRlbnRpYWxzO1xyXG5AaWNvbi1zcHJpbnQta2FuYmFuOiBAaWNvbi10aGluLXNwcmludC1rYW5iYW47XHJcbkBpY29uLWF2YXRhcjogQGljb24tdGhpbi1hdmF0YXI7XHJcblxyXG5cclxuLyogRU5EIElDT04gRk9OVFMgKi9cclxuXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcblxyXG50YWJsZSB7XHJcbiAgLmV4cGFuZGVyIHtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgcGFkZGluZzowO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgbWFyZ2luOi0zcHggNXB4IDAgMDtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgei1pbmRleDoyO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGZvbnQtc2l6ZTowcHg7XHJcbiAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xyXG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDApO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogIHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiAgdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiAyNnB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAub3BlbiB7XHJcbiAgICAuZXhwYW5kZXIge1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jbWFpbiAjY29udGVudCB0YWJsZS5jb250YWN0cy5pbmRleCxcclxuI21haW4gI2NvbnRlbnQgLmNvbnRhY3QuZGV0YWlscyxcclxuI21haW4gI2NvbnRlbnQgLnBlcnNvbi5kZXRhaWxze1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgYm9yZGVyOiBub25lO1xyXG4gIG1hcmdpbjogMDtcclxuICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcblxyXG4gIC50YWdfbGlzdCB7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICB9XHJcblxyXG5cclxuICB0ZCB7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiAgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiAgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJi5pbmZvIHtcclxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICB9XHJcbiAgICAmLnN1YmplY3RfaW5mbyB7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAubmFtZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHRyIHtcclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIHRkIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi50b3RhbCB7XHJcbiAgICAgIHRoIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGgxIHtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgbWFyZ2luOiAwIDAgM3B4IDtcclxuXHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250ZXh0LW1lbnUtc2VsZWN0aW9uIGE6bm90KFtocmVmKj1cInRhZ3NcIl0pIHtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIC5jb250ZXh0LW1lbnUtc2VsZWN0aW9uIGE6aG92ZXIge1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIHRhYmxlLmNvbnRhY3RzLmluZGV4IHRyLmNvbnRleHQtbWVudS1zZWxlY3Rpb24gdGQge1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbikgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIGgxICsgcCB7XHJcbiAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgfVxyXG4gIGgyIHtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG5cclxuICAgIGEge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuICB9XHJcbiAgLnRhZ3Mge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICB9XHJcbiAgLnRpdGxlX2FuZF9jb21wYW55IHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgfVxyXG4gIHRyOmhvdmVyIHRke1xyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWJveCk7XHJcblxyXG4gICAgaDEgYSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgfVxyXG4gICAgaDIgYSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIH1cclxuICAgICYubmFtZSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICBwIGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICB0ci5jb250ZXh0LW1lbnUtc2VsZWN0aW9uIHRke1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctYm94KTtcclxuICB9XHJcbn1cclxuXHJcbi5zdWJqZWN0X2hlYWRlciB7XHJcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxufVxyXG5cclxuI21haW4gI2NvbnRlbnQgLmNvbnRhY3QuZGV0YWlscyxcclxuI21haW4gI2NvbnRlbnQgLnBlcnNvbi5kZXRhaWxze1xyXG4gIG1hcmdpbjogMDtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICBwYWRkaW5nOiAwO1xyXG5cclxuICAuc3ViamVjdF9oZWFkZXIge1xyXG5cclxuICAgIHRkIHtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNub3RlX2F0dHJpYnV0ZXMge1xyXG4gICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICB9XHJcblxyXG59XHJcblxyXG4jbWFpbiB7XHJcbiAgc3Bhbi50YWdfbGlzdCxcclxuICBkaXYudGFncyxcclxuICAucXVlc3Rpb25zLXRhZ3Mge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCA1MCU7XHJcbiAgICBmb250LXNpemU6IDA7XHJcbiAgICBsaW5lLWhlaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgbWluLWhlaWdodDogYXV0bztcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgLnRhZy1sYWJlbCxcclxuICAgIGxpIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICBtYXJnaW46IDJweCA1cHggMnB4IDAgIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZzogNHB4IDRweDtcclxuICAgICAgICBmb250LXNpemU6IEBmczExO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxMTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRhZy1sYWJlbC1jb2xvcntcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICBtYXJnaW46IDJweCA1cHggMnB4IDAgIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxOCAhaW1wb3J0YW50O1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZzogM3B4IDRweDtcclxuICAgICAgICBmb250LXNpemU6IEBmczExO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxMTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCk7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRhZy1jb3VudCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGZzMTE7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxMTtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBtYXJnaW46IDAgMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnF1ZXN0aW9ucy10YWdzIHtcclxuICAgIHNwYW4uY291bnQge1xyXG4gICAgICBmb250LXNpemU6IEBmczExO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGZzMTE7XHJcbiAgICAgIG1hcmdpbjogMCAwIDAgNXB4O1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDonKSc7XHJcbiAgICAgIH1cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6JygnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jbWFpbiA+ICNjb250ZW50IHtcclxuICAjcXVlcnlfZm9ybSAuY29udGFjdHNfaGVhZGVyIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XHJcblxyXG4gICAgLnRhZ3Mge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGFncyB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICB9XHJcbiAgLnRhZ19saXN0IHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxuICAgIGZvbnQtc2l6ZTogMDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDo1MCU7XHJcbiAgICAgIGxlZnQ6MDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICBtYXJnaW46IC0xM3B4IDAgMDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgei1pbmRleDoxO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUtc21hbGwpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmVtcHR5IHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiN3cmFwcGVyIHtcclxuICAjdGFiLXBsYWNlaG9sZGVyLW5vdGVzIHtcclxuICAgIG1hcmdpbjogMCAwIDMwcHg7XHJcbiAgfVxyXG4gICNub3RlcyB7XHJcblxyXG4gICAgJiA+IGRpdiB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCA1cHg7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuXHJcbiAgICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIHRhYmxlLm5vdGVfZGF0YSB7XHJcbiAgICB0ZCB7XHJcblxyXG4gICAgICAmLm5hbWUge1xyXG4gICAgICAgIGg0IHtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNjb21tZW50cyB7XHJcbiAgLmNvbnRleHR1YWwgYSB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBtYXJnaW46IDAgMCAwO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIHBhZGRpbmc6MDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgbWFyZ2luOjA7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6MjtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBmb250LXNpemU6MHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6MHB4O1xyXG4gICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICBtYXJnaW46MDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgei1pbmRleDoxO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlKTtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2FjdGl2ZSk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNwZW9wbGVfc2V0dGluZ3Nfd29ya2RheV9sZW5ndGgge1xyXG4gIG1hcmdpbjogMCAxMHB4IDAgMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4jY29udGVudCB7XHJcbiAgdGFibGUuY29udGFjdHMuaW5kZXggdHIuY29udGV4dC1tZW51LXNlbGVjdGlvbiBoMiB7IGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pICFpbXBvcnRhbnQ7IH1cclxuICB0YWJsZS5jb250YWN0cy5pbmRleCB0ci5jb250ZXh0LW1lbnUtc2VsZWN0aW9uIHRkIHsgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbikgIWltcG9ydGFudDsgfVxyXG5cclxuICB0YWJsZS5jb250YWN0cy5pbmRleCB0ci5jb250ZXh0LW1lbnUtc2VsZWN0aW9uIC5vdmVyZHVlLWRheXMge1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgfVxyXG5cclxuICAuc3ViamVjdF9oZWFkZXIge1xyXG4gICAgLmljb24ge1xyXG4gICAgICBwYWRkaW5nOiAwIDAgMCAyNXB4O1xyXG4gICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZS1zbWFsbCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5pY29uLXBob25lIHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGFnX2xpc3Qge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZykgIWltcG9ydGFudDtcclxuICAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zdWJqZWN0X2luZm8ge1xyXG4gICAgdWwge1xyXG4gICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgbWFyZ2luOiAzcHggMDtcclxuICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjZWRpdF90YWdzX2Zvcm0ge1xyXG4gICAgZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICYgKyBhIHtcclxuICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1iZyk7XHJcbiAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWJnKTtcclxuICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyLWJnKTtcclxuICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvci1ob3Zlci1iZyk7XHJcbiAgICAgICB9XHJcbiAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI21haW4gPiAjY29udGVudCB7XHJcbiAgI2NvbXBhbnlfY29udGFjdHMge1xyXG4gICAgaDQge1xyXG4gICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZGl2LmNvbnRhY3Qge1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuXHJcbiAgICAubmFtZSB7XHJcbiAgICAgIGgyIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaWNvbiB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnRhYi1jb250ZW50IHtcclxuICAjbm90ZV9hdHRyaWJ1dGVzIHtcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgfVxyXG5cclxuICAjZGVhbHN7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgI2NvbXBhbnlfY29udGFjdHMge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcblxyXG4gIGFbaHJlZio9J2NvbnRhY3RzL25ldyddLFxyXG4gIGFbaHJlZio9J2RlYWxzL25ldyddLFxyXG4gIGFbaHJlZio9J2ludm9pY2VzL25ldyddLFxyXG4gIGFbaHJlZio9J29yZGVycy9uZXcnXXtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIG1hcmdpbjowO1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OjI7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgZm9udC1zaXplOjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OjBweDtcclxuICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IEBuZXctb2JqZWN0O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5zZWxlY3RlZCB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uX2NvbG9yX2FjdGl2ZSk7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19hY3RpdmUpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5kaXNhYmxlZCB7XHJcbiAgICAgIG9wYWNpdHk6IDAuMztcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWRpc2FibGVkKTtcclxuXHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItZGlzYWJsZWQpO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1kaXNhYmxlZCk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI2NvbnRhY3RfZGF0YSB7XHJcbiAgI3dhdGNoZXJzIHtcclxuICAgIC5ncmF2YXRhciB7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNjb250ZW50IHtcclxuICB0YWJsZS5ub3RlX2RhdGEgdGQuYXZhdGFyIHtcclxuICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItY29udGFjdHMge1xyXG4gICYuYWN0aW9uLWNvbnRhY3RzX25vdGVzIHtcclxuICAgICNtYWluID4gI2NvbnRlbnQge1xyXG4gICAgICAuZmlsdGVycyB7XHJcbiAgICAgICAgbWFyZ2luOiAwIC0zMHB4IDcwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgNjBweCcpO1xyXG5cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDUwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDQ1cHg7XHJcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IGF1dG87XHJcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIFNJREVCQVIgKi9cclxuXHJcbiNtYWluIGRpdiNzaWRlYmFyIHtcclxuICAjaXNzdWVfY29udGFjdHMge1xyXG4gICAgYS5kZWxldGUge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gIH1cclxuICBkaXYuY29udGFjdC5jYXJkIHtcclxuICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG5cclxuXHJcbiAgICAuaWNvbjpub3QodGQpLFxyXG4gICAgYVtocmVmKj1cInF1ZXN0aW9uc19zZWN0aW9ucy9uZXdcIl0ge1xyXG4gICAgICBwYWRkaW5nOiAwIDAgMCAyNnB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG5cclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUtc21hbGwpO1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIG1hcmdpbjogLTEwcHggMCAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGFnX2xpc3Qge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDo1MCU7XHJcbiAgICAgICAgbGVmdDowO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgbWFyZ2luOiAtMTBweCAwIDA7XHJcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgICBjb250ZW50OiBAdGFncztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIFNJREVCQVIgKi9cclxuXHJcbiNjb250ZW50IHtcclxuICBmb3JtIHtcclxuICAgICNub3RlX2F0dHJpYnV0ZXMge1xyXG4gICAgICBwLmV4dGVuZGVkLWF0dHJpYnV0ZXMge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBtYXgtd2lkdGg6IDcwMHB4O1xyXG5cclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGZpZWxkc2V0LmV4dGVuZGVkLWF0dHJpYnV0ZXMge1xyXG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgI25vdGVfYXR0YWNobWVudHMge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBkaXYuaW52b2ljZS1jYXJkIHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICB9XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLWNvbnRhY3RzX2R1cGxpY2F0ZXMge1xyXG4gICYuYWN0aW9uLWluZGV4IHtcclxuICAgICNtYWluIHtcclxuICAgICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY29udGFjdF9kYXRhX2hlYWRlciB7XHJcbiAgICAgIG1hcmdpbjogMjBweCAwIDA7XHJcblxyXG4gICAgICAubm90ZV90aXRsZSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI3ByaW5jaXBhbF9zZWFyY2gge1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5mbGFzaCB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1PREFMICovXHJcblxyXG5kaXYubW9kYWwge1xyXG4gICNjb250YWN0c19mb3JfaXNzdWUge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICBtYXgtaGVpZ2h0OiAyMDBweDtcclxuXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNhZGQtY29udGFjdC1mb3JtIHtcclxuICAgICNjb250YWN0X3NlYXJjaCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDVweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIE1PREFMICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG5ib2R5IHtcclxuICAjY29udGVudCxcclxuICAubW9kYWwge1xyXG4gICAgLmNvbnRhY3RzLXRhZ3MtZWRpdCB7XHJcblxyXG4gICAgICB1bC50YWdpdCB7XHJcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnRcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4jY29udGVudCxcclxuLm1vZGFsIHtcclxuICAuY29udGFjdHMtdGFncy1lZGl0IHtcclxuXHJcbiAgICB1bC50YWdpdCB7XHJcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgbGkudGFnaXQtY2hvaWNlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgICAgICBwYWRkaW5nOiAycHggNHB4IDJweCAyMXB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGZzMTE7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgICBtYXJnaW46IDJweCAxMHB4IDJweCAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgbWluLWhlaWdodDogMjBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZTtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlO1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZTtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKH4nMTAwJSAtIDRweCcpO1xyXG5cclxuICAgICAgICAudGFnaXQtY2xvc2Uge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICAgIGxlZnQ6IDVweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGZzMTI7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgICAgIHdpZHRoOiAxMnB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIG1hcmdpbjogLTZweCAwIDA7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDFweDstbW96LWJvcmRlci1yYWRpdXM6IDFweDtib3JkZXItcmFkaXVzOiAxcHg7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAgdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuXHJcbiAgICAgICAgICAgIC50ZXh0LWljb24ge1xyXG4gICAgICAgICAgICAgIGNvbG9yOnZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLnRleHQtaWNvbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLnRhZ2l0LW5ldyB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5jb250cm9sbGVyLWNvbnRhY3RzLmFjdGlvbi1pbmRleCB7XHJcbiAgI21haW4gPiAjY29udGVudCB7XHJcbiAgICAjcXVlcnlfZm9ybSB7XHJcbiAgICAgICYgPiBoMiB7XHJcbiAgICAgICAgLmxpdmVfc2VhcmNoIHtcclxuICAgICAgICAgIHJpZ2h0OiA1MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBTVEFSVCBFTUFJTCBURU1QTEFURSAqL1xyXG5cclxuI2N1c3RvbWVyX2FkZHJlc3NfYWRkX2xpbmsge1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIHBhZGRpbmc6MDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gIG1hcmdpbjowO1xyXG4gIG92ZXJmbG93OmhpZGRlbjtcclxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICB6LWluZGV4OjI7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gIGZvbnQtc2l6ZTowcHg7XHJcbiAgbGluZS1oZWlnaHQ6MHB4O1xyXG4gIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQG5ldy1vYmplY3Q7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIHRvcDowcHg7XHJcbiAgICBsZWZ0OjBweDtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBjbGVhcjpib3RoO1xyXG4gICAgaGVpZ2h0OjEwMCU7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgbWFyZ2luOjA7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgei1pbmRleDoxO1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgfVxyXG4gICY6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgY2xlYXI6Ym90aDtcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgdG9wOjBweDtcclxuICAgIGxlZnQ6MHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICB9XHJcblxyXG4gIGltZyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5zZWxlY3RlZCB7XHJcbiAgICBjb2xvcjogdmFyKC0taWNvbl9jb2xvcl9hY3RpdmUpO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19hY3RpdmUpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmRpc2FibGVkIHtcclxuICAgIG9wYWNpdHk6IDAuMztcclxuICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1kaXNhYmxlZCk7XHJcblxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItZGlzYWJsZWQpO1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWRpc2FibGVkKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI21haW4ge1xyXG4gIGZvcm0ubmV3X2lzc3VlIHtcclxuICAgIC5lbWFpbC10ZW1wbGF0ZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXllbGxvdy1saWdodCk7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcblxyXG4gICAgICAjaXNzdWVfaGVscGRlc2tfdGlja2V0X2F0dHJpYnV0ZXNfdGlja2V0X3RpbWUge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIEVNQUlMIFRFTVBMQVRFICovXHJcblxyXG4vKiBTVEFSVCBNUkRJQSAqL1xyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgdGFibGUuY29udGFjdHMgIHtcclxuICAgIC5leHBhbmRlcjpiZWZvcmUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICAjY29udGFjdF9saXN0IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgfVxyXG4gICNtYWluIHtcclxuICAgICNlZGl0X3RhZ3NfbGluayB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgI3RhZ3NfZGF0YSB7XHJcbiAgICAgICAgLmNvbnRleHR1YWwge1xyXG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgIG1hcmdpbjogNXB4IDA7XHJcbiAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGgyIHtcclxuICAgICAgICAudGFnX2xpc3Qge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAjd3JhcHBlciB7XHJcbiAgICAjZWRpdF90YWdzX2Zvcm0ge1xyXG4gICAgICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHggMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItY29udGFjdHNfZHVwbGljYXRlcy5hY3Rpb24taW5kZXgge1xyXG4gICAgLmNvbnRhY3RfZGF0YV9oZWFkZXIge1xyXG4gICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG5cclxuICAgICAgLm5vdGVfdGl0bGUge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNwcmluY2lwYWxfc2VhcmNoIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuZmxhc2gge1xyXG4gICAgICBtYXJnaW46IDAgMCAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGFiLWNvbnRlbnQge1xyXG4gICAgYVtocmVmKj0nY29udGFjdHMvbmV3J10sXHJcbiAgICBhW2hyZWYqPSdkZWFscy9uZXcnXSxcclxuICAgIGFbaHJlZio9J2ludm9pY2VzL25ldyddLFxyXG4gICAgYVtocmVmKj0nb3JkZXJzL25ldyddIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2NvbW1lbnRzIHtcclxuICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgYSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAgNXB4O1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI21haW4ge1xyXG4gICAjY29udGVudCB7XHJcbiAgICAgdGFibGUuY29udGFjdHMuaW5kZXgsXHJcbiAgICAgLmNvbnRhY3QuZGV0YWlscyB7XHJcbiAgICAgICB0ZHtcclxuICAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgIH1cclxuICAgICB9XHJcbiAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLWNvbnRhY3RzIHtcclxuICAgIC5hY3Rpb24tc2hvdyB7XHJcbiAgICAgICNtYWluIHtcclxuICAgICAgICAmID4gI2NvbnRlbnQge1xyXG4gICAgICAgICAgJiA+IGgyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweCAxODBweCAxNXB4IDQ1cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjd3JhcHBlciB7XHJcbiAgICAjdGFiLXBsYWNlaG9sZGVyLW5vdGVzIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAjY29udGVudCB7XHJcbiAgICBmb3JtIHtcclxuICAgICAgI25vdGVfYXR0cmlidXRlcyB7XHJcbiAgICAgICAgcC5leHRlbmRlZC1hdHRyaWJ1dGVzIHtcclxuICAgICAgICAgIC5qY2Ytc2VsZWN0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiA1MHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZmllbGRzZXQuZXh0ZW5kZWQtYXR0cmlidXRlcyB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAjY29udGVudCB7XHJcbiAgICAjZWRpdF90YWdzX2Zvcm0ge1xyXG4gICAgICBmb3JtIHtcclxuICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLWNvbnRhY3RzX2R1cGxpY2F0ZXMuYWN0aW9uLWluZGV4IHtcclxuICAgIC5jb250YWN0X2RhdGFfaGVhZGVyIHtcclxuICAgICAgLm5vdGVfdGl0bGUge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBmczE2O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZsYXNoIHtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLWNvbnRhY3RzIHtcclxuICAgICNtYWluIHtcclxuICAgICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgICAjcXVlcnlfZm9ybSB7XHJcbiAgICAgICAgICAmID4gaDIge1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgICAgICAgICAucmV2by1pY29uLWluZm8ge1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnJldm8taWNvbi1pbmZvIHtcclxuICAgICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgI3Njb3BlX2hlYWRlciB7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxpdmVfc2VhcmNoIHtcclxuICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIDA7XHJcbiAgICAgICAgICAgICAgb3JkZXI6IDI7XHJcblxyXG4gICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogNTBweDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmFjdGlvbi1zaG93IHtcclxuICAgICAgI21haW4ge1xyXG4gICAgICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICAgICAmID4gaDIge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDE1cHggMTVweCA0NXB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAjbWFpbiB7XHJcbiAgICAmID4gI2NvbnRlbnQge1xyXG4gICAgICAuY29udGFjdC5kZXRhaWxzLFxyXG4gICAgICAucGVyc29uLmRldGFpbHN7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuXHJcbiAgICAgICAgdHIge1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4IDEwcHg7XHJcblxyXG4gICAgICAgICAgICAmLmF2YXRhciB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5zdWJqZWN0X2luZm8ge1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBkaXYuY29udGFjdCB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgZm9udC1zaXplOiBAZnMxNjtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcblxyXG4gICAgICAgICBhIHtcclxuICAgICAgICAgICBmb250LXNpemU6IEBmczE2O1xyXG4gICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5oYXMtZm9vdGVyIHtcclxuICAgICNtYWluIHtcclxuICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgI2NvbnRlbnQge1xyXG4gICAgLmNvbnRhY3RzLXRhZ3MtZWRpdCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgICNhZGRfbm90ZV9mb3JtIHtcclxuICAgICAgLmNvbnRleHR1YWwge1xyXG4gICAgICAgIG1hcmdpbjogMTBweCAwIDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnRhYi1jb250ZW50IHtcclxuICAgICNub3RlX2F0dHJpYnV0ZXMge1xyXG4gICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2NvbnRhY3RfbGlzdCB7XHJcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gIH1cclxuXHJcbiAgI21haW4ge1xyXG4gICAgI2NvbnRlbnQge1xyXG4gICAgICB0YWJsZS5jb250YWN0cy5pbmRleCAsXHJcbiAgICAgIC5jb250YWN0LmRldGFpbHMge1xyXG4gICAgICAgIGgxIHtcclxuICAgICAgICAgIG1pbi13aWR0aDogMjAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgTVJESUEgKi9cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBJQ09OIEZPTlRTICovXHJcblxyXG5AY2xhc3NpYy1hY2NvdW50LXByb2plY3RzOiBcIlxcRTAwMVwiO1xyXG5AY2xhc3NpYy1hY3Rpb24tbGF5b3V0czogXCJcXEUwMDJcIjtcclxuQGNsYXNzaWMtYWN0aXZpdHktbGlzdDogXCJcXEUwMDNcIjtcclxuQGNsYXNzaWMtYWN0aXZpdHk6IFwiXFxFMDA0XCI7XHJcbkBjbGFzc2ljLWFkZC1wYXltZW50OiBcIlxcRTAwNVwiO1xyXG5AY2xhc3NpYy1hZGRpdGlvbmFsczogXCJcXEUwMDZcIjtcclxuQGNsYXNzaWMtYWRtaW5pc3RyYXRpb246IFwiXFxFMDA3XCI7XHJcbkBjbGFzc2ljLWFnaWxlOiBcIlxcRTAwOFwiO1xyXG5AY2xhc3NpYy1hcmNoaXZlLTI6IFwiXFxFMDA5XCI7XHJcbkBjbGFzc2ljLWFyY2hpdmU6IFwiXFxFMDBBXCI7XHJcbkBjbGFzc2ljLWFycm93LWJvdHRvbTogXCJcXEUwMEJcIjtcclxuQGNsYXNzaWMtYXJyb3ctZG91YmxlLWRvd246IFwiXFxFMDBDXCI7XHJcbkBjbGFzc2ljLWFycm93LWRvdWJsZS11cDogXCJcXEUwMERcIjtcclxuQGNsYXNzaWMtYXJyb3ctZG93bjogXCJcXEUwMEVcIjtcclxuQGNsYXNzaWMtYXJyb3ctbGVmdDogXCJcXEUwMEZcIjtcclxuQGNsYXNzaWMtYXJyb3ctcmlnaHQ6IFwiXFxFMDEwXCI7XHJcbkBjbGFzc2ljLWFycm93LXRvcDogXCJcXEUwMTFcIjtcclxuQGNsYXNzaWMtYXJyb3ctd2lkZS1yaWdodDogXCJcXEUwMTJcIjtcclxuQGNsYXNzaWMtYXRvbTogXCJcXEUwMTNcIjtcclxuQGNsYXNzaWMtYXR0YWNobWVudDogXCJcXEUwMTRcIjtcclxuQGNsYXNzaWMtYmFjazogXCJcXEUwMTVcIjtcclxuQGNsYXNzaWMtYmFja2xvZzogXCJcXEUwMTZcIjtcclxuQGNsYXNzaWMtYmFza2V0OiBcIlxcRTAxN1wiO1xyXG5AY2xhc3NpYy1iYXR0ZXJ5OiBcIlxcRTAxOFwiO1xyXG5AY2xhc3NpYy1ib2FyZHM6IFwiXFxFMDE5XCI7XHJcbkBjbGFzc2ljLWJvb2ttYXJrOiBcIlxcRTAxQVwiO1xyXG5AY2xhc3NpYy1jYWxlbmRhcjogXCJcXEUwMUJcIjtcclxuQGNsYXNzaWMtY2FydDogXCJcXEUwMUNcIjtcclxuQGNsYXNzaWMtY2hhbmdlLXVzZXI6IFwiXFxFMDFEXCI7XHJcbkBjbGFzc2ljLWNoZWNrZWQ6IFwiXFxFMDFFXCI7XHJcbkBjbGFzc2ljLWNsaXA6IFwiXFxFMDFGXCI7XHJcbkBjbGFzc2ljLWNsb3NlLW5ldy1zbWFsbDogXCJcXEUwMjBcIjtcclxuQGNsYXNzaWMtY2xvc2UtbmV3OiBcIlxcRTAyMVwiO1xyXG5AY2xhc3NpYy1jbG9zZS1zZWFyY2g6IFwiXFxFMDIyXCI7XHJcbkBjbGFzc2ljLWNvbW1lbnQ6IFwiXFxFMDIzXCI7XHJcbkBjbGFzc2ljLWNvbW1lbnRzOiBcIlxcRTAyNFwiO1xyXG5AY2xhc3NpYy1jb21wYW55OiBcIlxcRTAyNVwiO1xyXG5AY2xhc3NpYy1jb250YWN0czogXCJcXEUwMjZcIjtcclxuQGNsYXNzaWMtY29weTogXCJcXEUwMjdcIjtcclxuQGNsYXNzaWMtY3BsdXM6IFwiXFxFMDI4XCI7XHJcbkBjbGFzc2ljLWNybTogXCJcXEUwMjlcIjtcclxuQGNsYXNzaWMtY3NoYXJwOiBcIlxcRTAyQVwiO1xyXG5AY2xhc3NpYy1jc3M6IFwiXFxFMDJCXCI7XHJcbkBjbGFzc2ljLWNzdjogXCJcXEUwMkNcIjtcclxuQGNsYXNzaWMtY3VzdG9tLWZpZWxkczogXCJcXEUwMkRcIjtcclxuQGNsYXNzaWMtZGF2OiBcIlxcRTAyRVwiO1xyXG5AY2xhc3NpYy1kZWFsczogXCJcXEUwMkZcIjtcclxuQGNsYXNzaWMtZGVsOiBcIlxcRTAzMFwiO1xyXG5AY2xhc3NpYy1kZXNjcmlwdGlvbjogXCJcXEUwMzFcIjtcclxuQGNsYXNzaWMtZGlhbW9uZDogXCJcXEUwMzJcIjtcclxuQGNsYXNzaWMtZGlmZjogXCJcXEUwMzNcIjtcclxuQGNsYXNzaWMtZG1zZjogXCJcXEUwMzRcIjtcclxuQGNsYXNzaWMtZG9jdW1lbnQ6IFwiXFxFMDM1XCI7XHJcbkBjbGFzc2ljLWRvY3VtZW50czogXCJcXEUwMzZcIjtcclxuQGNsYXNzaWMtZG9jeC0yOiBcIlxcRTAzN1wiO1xyXG5AY2xhc3NpYy1kb2N4LWZpbGU6IFwiXFxFMDM4XCI7XHJcbkBjbGFzc2ljLWRvY3g6IFwiXFxFMDM5XCI7XHJcbkBjbGFzc2ljLWRvbGxhcjogXCJcXEUwM0FcIjtcclxuQGNsYXNzaWMtZG93bi0xOiBcIlxcRTAzQlwiO1xyXG5AY2xhc3NpYy1kb3duLTI6IFwiXFxFMDNDXCI7XHJcbkBjbGFzc2ljLWRvd25sb2FkOiBcIlxcRTAzRFwiO1xyXG5AY2xhc3NpYy1kcml2ZTogXCJcXEUwM0VcIjtcclxuQGNsYXNzaWMtZWRpdDogXCJcXEUwM0ZcIjtcclxuQGNsYXNzaWMtZW1haWw6IFwiXFxFMDQwXCI7XHJcbkBjbGFzc2ljLWVudW1lcmF0aW9uczogXCJcXEUwNDFcIjtcclxuQGNsYXNzaWMtRVJQOiBcIlxcRTA0MlwiO1xyXG5AY2xhc3NpYy1FVk06IFwiXFxFMDQzXCI7XHJcbkBjbGFzc2ljLWV4cGVuc2VzOiBcIlxcRTA0NFwiO1xyXG5AY2xhc3NpYy1leHRlcm5hbDogXCJcXEUwNDVcIjtcclxuQGNsYXNzaWMtZXh0cmEtbWVudTogXCJcXEUwNDZcIjtcclxuQGNsYXNzaWMtZmF2LW9mZjogXCJcXEUwNDdcIjtcclxuQGNsYXNzaWMtZmF2OiBcIlxcRTA0OFwiO1xyXG5AY2xhc3NpYy1mYXZvcml0OiBcIlxcRTA0OVwiO1xyXG5AY2xhc3NpYy1maWxlczogXCJcXEUwNEFcIjtcclxuQGNsYXNzaWMtZmlsdGVyOiBcIlxcRTA0QlwiO1xyXG5AY2xhc3NpYy1maW5hbmNlOiBcIlxcRTA0Q1wiO1xyXG5AY2xhc3NpYy1mb2xkZXI6IFwiXFxFMDREXCI7XHJcbkBjbGFzc2ljLWZ1bGxzY3JlZW46IFwiXFxFMDRFXCI7XHJcbkBjbGFzc2ljLWdhbnR0OiBcIlxcRTA0RlwiO1xyXG5AY2xhc3NpYy1naWY6IFwiXFxFMDUwXCI7XHJcbkBjbGFzc2ljLWdpdC1uZXc6IFwiXFxFMDUxXCI7XHJcbkBjbGFzc2ljLWdpdDogXCJcXEUwNTJcIjtcclxuQGNsYXNzaWMtZ3JvdXA6IFwiXFxFMDUzXCI7XHJcbkBjbGFzc2ljLWhlYXJ0OiBcIlxcRTA1NFwiO1xyXG5AY2xhc3NpYy1oZWxwOiBcIlxcRTA1NVwiO1xyXG5AY2xhc3NpYy1oaXN0b3J5OiBcIlxcRTA1NlwiO1xyXG5AY2xhc3NpYy1ob21lOiBcIlxcRTA1N1wiO1xyXG5AY2xhc3NpYy1ob3VyZ2xhc3M6IFwiXFxFMDU4XCI7XHJcbkBjbGFzc2ljLWh0bWw6IFwiXFxFMDU5XCI7XHJcbkBjbGFzc2ljLWltcG9ydDogXCJcXEUwNUFcIjtcclxuQGNsYXNzaWMtaW52ZW50b3J5OiBcIlxcRTA1QlwiO1xyXG5AY2xhc3NpYy1pbnZvaWNlczogXCJcXEUwNUNcIjtcclxuQGNsYXNzaWMtaXNzdWVzOiBcIlxcRTA1RFwiO1xyXG5AY2xhc3NpYy1qYXZhOiBcIlxcRTA1RVwiO1xyXG5AY2xhc3NpYy1qcGc6IFwiXFxFMDVGXCI7XHJcbkBjbGFzc2ljLWpzOiBcIlxcRTA2MFwiO1xyXG5AY2xhc3NpYy1rYW5iYW46IFwiXFxFMDYxXCI7XHJcbkBjbGFzc2ljLWtleTogXCJcXEUwNjJcIjtcclxuQGNsYXNzaWMta2V5MjogXCJcXEUwNjNcIjtcclxuQGNsYXNzaWMta25vd2xlZGdlYmFzZTogXCJcXEUwNjRcIjtcclxuQGNsYXNzaWMtbGRhcC1hdXRoZW50aWNhdGlvbjogXCJcXEUwNjVcIjtcclxuQGNsYXNzaWMtbGlrZTogXCJcXEUwNjZcIjtcclxuQGNsYXNzaWMtbGluay1icmVhazogXCJcXEUwNjdcIjtcclxuQGNsYXNzaWMtbG9jazogXCJcXEUwNjhcIjtcclxuQGNsYXNzaWMtbG9naW46IFwiXFxFMDY5XCI7XHJcbkBjbGFzc2ljLWxvZ291dDogXCJcXEUwNkFcIjtcclxuQGNsYXNzaWMtbG9nczogXCJcXEUwNkJcIjtcclxuQGNsYXNzaWMtbWFpbGNoaW1wOiBcIlxcRTA2Q1wiO1xyXG5AY2xhc3NpYy1tZWV0aW5nOiBcIlxcRTA2RFwiO1xyXG5AY2xhc3NpYy1tZW51czogXCJcXEUwNkVcIjtcclxuQGNsYXNzaWMtbWVyZ2U6IFwiXFxFMDZGXCI7XHJcbkBjbGFzc2ljLW1vbmV5OiBcIlxcRTA3MFwiO1xyXG5AY2xhc3NpYy1tb25pdG9yaW5nLWNvbnRyb2xsaW5nOiBcIlxcRTA3MVwiO1xyXG5AY2xhc3NpYy1tb3ZlOiBcIlxcRTA3MlwiO1xyXG5AY2xhc3NpYy1teS1hY2NvdW50OiBcIlxcRTA3M1wiO1xyXG5AY2xhc3NpYy1teS1wYWdlOiBcIlxcRTA3NFwiO1xyXG5AY2xhc3NpYy1uZXctb2JqZWN0OiBcIlxcRTA3NVwiO1xyXG5AY2xhc3NpYy1uZXdzOiBcIlxcRTA3NlwiO1xyXG5AY2xhc3NpYy1uZXh0OiBcIlxcRTA3N1wiO1xyXG5AY2xhc3NpYy1uby1pbnZvaWNlczogXCJcXEUwNzhcIjtcclxuQGNsYXNzaWMtbm9ybWFsLWlzc3VlczogXCJcXEUwNzlcIjtcclxuQGNsYXNzaWMtbm90ZTogXCJcXEUwN0FcIjtcclxuQGNsYXNzaWMtbm90aWZpY2F0aW9uczogXCJcXEUwN0JcIjtcclxuQGNsYXNzaWMtb2R0OiBcIlxcRTA3Q1wiO1xyXG5AY2xhc3NpYy1vcGVuLWZvbGRlcjogXCJcXEUwN0RcIjtcclxuQGNsYXNzaWMtb3Blbi1zZWFyY2g6IFwiXFxFMDdFXCI7XHJcbkBjbGFzc2ljLW9wZW4tc2lkZWJhci1ob3I6IFwiXFxFMDdGXCI7XHJcbkBjbGFzc2ljLW9wZW4tc2lkZWJhcjogXCJcXEUwODBcIjtcclxuQGNsYXNzaWMtb3JkZXJzOiBcIlxcRTA4MVwiO1xyXG5AY2xhc3NpYy1vdmVydmlldzogXCJcXEUwODJcIjtcclxuQGNsYXNzaWMtcGFnZXM6IFwiXFxFMDgzXCI7XHJcbkBjbGFzc2ljLXBhc3N3ZDogXCJcXEUwODRcIjtcclxuQGNsYXNzaWMtcGF1c2U6IFwiXFxFMDg1XCI7XHJcbkBjbGFzc2ljLXBkZjogXCJcXEUwODZcIjtcclxuQGNsYXNzaWMtcGVvcGxlOiBcIlxcRTA4N1wiO1xyXG5AY2xhc3NpYy1wZXJpb2RpYy10YXNrczogXCJcXEUwODhcIjtcclxuQGNsYXNzaWMtcGhvbmU6IFwiXFxFMDg5XCI7XHJcbkBjbGFzc2ljLXBob3RvOiBcIlxcRTA4QVwiO1xyXG5AY2xhc3NpYy1waHA6IFwiXFxFMDhCXCI7XHJcbkBjbGFzc2ljLXBsYW5uaW5nOiBcIlxcRTA4Q1wiO1xyXG5AY2xhc3NpYy1wbGF5OiBcIlxcRTA4RFwiO1xyXG5AY2xhc3NpYy1wbHVnaW5zOiBcIlxcRTA4RVwiO1xyXG5AY2xhc3NpYy1wbmctMjogXCJcXEUwOEZcIjtcclxuQGNsYXNzaWMtcG5nOiBcIlxcRTA5MFwiO1xyXG5AY2xhc3NpYy1wcmV2OiBcIlxcRTA5MVwiO1xyXG5AY2xhc3NpYy1wcmV2aWV3LXNhbGFyeTogXCJcXEUwOTJcIjtcclxuQGNsYXNzaWMtcHJpbnQ6IFwiXFxFMDkzXCI7XHJcbkBjbGFzc2ljLXByb2R1Y3RzOiBcIlxcRTA5NFwiO1xyXG5AY2xhc3NpYy1wcm9qZWN0czogXCJcXEUwOTVcIjtcclxuQGNsYXNzaWMtcXVlc3Rpb25zOiBcIlxcRTA5NlwiO1xyXG5AY2xhc3NpYy1xdWljay1zZWFyY2g6IFwiXFxFMDk3XCI7XHJcbkBjbGFzc2ljLXJlZ2lzdGVyOiBcIlxcRTA5OFwiO1xyXG5AY2xhc3NpYy1yZWxvYWQtMjogXCJcXEUwOTlcIjtcclxuQGNsYXNzaWMtcmVsb2FkOiBcIlxcRTA5QVwiO1xyXG5AY2xhc3NpYy1yZW1pbmRlcjogXCJcXEUwOUJcIjtcclxuQGNsYXNzaWMtcmVwb3J0OiBcIlxcRTA5Q1wiO1xyXG5AY2xhc3NpYy1yZXBvcnRzOiBcIlxcRTA5RFwiO1xyXG5AY2xhc3NpYy1yZXBvc2l0b3J5OiBcIlxcRTA5RVwiO1xyXG5AY2xhc3NpYy1yZXNvdXJjZXM6IFwiXFxFMDlGXCI7XHJcbkBjbGFzc2ljLXJpc2tzOiBcIlxcRTBBMFwiO1xyXG5AY2xhc3NpYy1yb2FkbWFwOiBcIlxcRTBBMVwiO1xyXG5AY2xhc3NpYy1yb2xlczogXCJcXEUwQTJcIjtcclxuQGNsYXNzaWMtcm9zZXR0ZTogXCJcXEUwQTNcIjtcclxuQGNsYXNzaWMtcnVieTogXCJcXEUwQTRcIjtcclxuQGNsYXNzaWMtc2F2ZS1uZXc6IFwiXFxFMEE1XCI7XHJcbkBjbGFzc2ljLXNhdmU6IFwiXFxFMEE2XCI7XHJcbkBjbGFzc2ljLXNjcm9sbDogXCJcXEUwQTdcIjtcclxuQGNsYXNzaWMtc2NydW06IFwiXFxFMEE4XCI7XHJcbkBjbGFzc2ljLXNlYXJjaC1kb3duLWFycm93OiBcIlxcRTBBOVwiO1xyXG5AY2xhc3NpYy1zZWFyY2g6IFwiXFxFMEFBXCI7XHJcbkBjbGFzc2ljLXNldHRpbmdzOiBcIlxcRTBBQlwiO1xyXG5AY2xhc3NpYy1zbWFsbC1pc3N1ZXM6IFwiXFxFMEFDXCI7XHJcbkBjbGFzc2ljLXNuaXBwZXRzOiBcIlxcRTBBRFwiO1xyXG5AY2xhc3NpYy1zb3J0LWhhbmRsZTogXCJcXEUwQUVcIjtcclxuQGNsYXNzaWMtc3ByaW50LWJvYXJkOiBcIlxcRTBBRlwiO1xyXG5AY2xhc3NpYy1zcHJpbnQtYnVybmRvd246IFwiXFxFMEIwXCI7XHJcbkBjbGFzc2ljLXN0YXRpc3RpY3M6IFwiXFxFMEIxXCI7XHJcbkBjbGFzc2ljLXN0YXRzOiBcIlxcRTBCMlwiO1xyXG5AY2xhc3NpYy1zdG9wOiBcIlxcRTBCM1wiO1xyXG5AY2xhc3NpYy1zdW1tYXJ5OiBcIlxcRTBCNFwiO1xyXG5AY2xhc3NpYy1zdXJ2ZXk6IFwiXFxFMEI1XCI7XHJcbkBjbGFzc2ljLXRhZ3M6IFwiXFxFMEI2XCI7XHJcbkBjbGFzc2ljLXRlbXBsYXRlczogXCJcXEUwQjdcIjtcclxuQGNsYXNzaWMtdGV4dDogXCJcXEUwQjhcIjtcclxuQGNsYXNzaWMtdGlja2V0czogXCJcXEUwQjlcIjtcclxuQGNsYXNzaWMtdGltZS1lbnRyaWVzOiBcIlxcRTBCQVwiO1xyXG5AY2xhc3NpYy10aW1lcjogXCJcXEUwQkJcIjtcclxuQGNsYXNzaWMtdHh0OiBcIlxcRTBCQ1wiO1xyXG5AY2xhc3NpYy11bi1saWtlOiBcIlxcRTBCRFwiO1xyXG5AY2xhc3NpYy11bmxvY2s6IFwiXFxFMEJFXCI7XHJcbkBjbGFzc2ljLXVwLTE6IFwiXFxFMEJGXCI7XHJcbkBjbGFzc2ljLXVwLTI6IFwiXFxFMEMwXCI7XHJcbkBjbGFzc2ljLXVwbG9hZDogXCJcXEUwQzFcIjtcclxuQGNsYXNzaWMtdXNlcjogXCJcXEUwQzJcIjtcclxuQGNsYXNzaWMtdmFyaWFibGVzOiBcIlxcRTBDM1wiO1xyXG5AY2xhc3NpYy12Y2Y6IFwiXFxFMEM0XCI7XHJcbkBjbGFzc2ljLXZvdGVzOiBcIlxcRTBDNVwiO1xyXG5AY2xhc3NpYy13YXJuaW5nOiBcIlxcRTBDNlwiO1xyXG5AY2xhc3NpYy13YnM6IFwiXFxFMEM3XCI7XHJcbkBjbGFzc2ljLXdpa2k6IFwiXFxFMEM4XCI7XHJcbkBjbGFzc2ljLXdvcmtmbG93OiBcIlxcRTBDOVwiO1xyXG5AY2xhc3NpYy13cmVjazogXCJcXEUwQ0FcIjtcclxuQGNsYXNzaWMteGxzOiBcIlxcRTBDQlwiO1xyXG5AY2xhc3NpYy14bWw6IFwiXFxFMENDXCI7XHJcbkBjbGFzc2ljLXlvdXR1YmU6IFwiXFxFMENEXCI7XHJcbkBjbGFzc2ljLXppcDogXCJcXEUwQ0VcIjtcclxuQGNsYXNzaWMtem9vbS1pbjogXCJcXEUwQ0ZcIjtcclxuQGNsYXNzaWMtem9vbS1vdXQ6IFwiXFxFMEQwXCI7XHJcbkBpY29uLXRoaW4tYWNjb3VudC1wcm9qZWN0czogXCJcXEUwRDFcIjtcclxuQGljb24tdGhpbi1hY3Rpb24tbGF5b3V0czogXCJcXEUwRDJcIjtcclxuQGljb24tdGhpbi1hY3Rpdml0eS1saXN0OiBcIlxcRTBEM1wiO1xyXG5AaWNvbi10aGluLWFjdGl2aXR5OiBcIlxcRTBENFwiO1xyXG5AaWNvbi10aGluLWFkZC1wYXltZW50OiBcIlxcRTBENVwiO1xyXG5AaWNvbi10aGluLWFkZGl0aW9uYWxzOiBcIlxcRTBENlwiO1xyXG5AaWNvbi10aGluLWFkbWluaXN0cmF0aW9uOiBcIlxcRTBEN1wiO1xyXG5AaWNvbi10aGluLWFnaWxlOiBcIlxcRTBEOFwiO1xyXG5AaWNvbi10aGluLWFyY2hpdmU6IFwiXFxFMEQ5XCI7XHJcbkBpY29uLXRoaW4tYXJyb3ctYm90dG9tOiBcIlxcRTBEQVwiO1xyXG5AaWNvbi10aGluLWFycm93LWRvdWJsZS1kb3duOiBcIlxcRTBEQlwiO1xyXG5AaWNvbi10aGluLWFycm93LWRvdWJsZS11cDogXCJcXEUwRENcIjtcclxuQGljb24tdGhpbi1hcnJvdy1kb3duOiBcIlxcRTBERFwiO1xyXG5AaWNvbi10aGluLWFycm93LWxlZnQ6IFwiXFxFMERFXCI7XHJcbkBpY29uLXRoaW4tYXJyb3ctcmlnaHQ6IFwiXFxFMERGXCI7XHJcbkBpY29uLXRoaW4tYXJyb3ctdG9wOiBcIlxcRTBFMFwiO1xyXG5AaWNvbi10aGluLWFycm93LXdpZGUtcmlnaHQ6IFwiXFxFMEUxXCI7XHJcbkBpY29uLXRoaW4tYXRvbTogXCJcXEUwRTJcIjtcclxuQGljb24tdGhpbi1hdHRhY2htZW50OiBcIlxcRTBFM1wiO1xyXG5AaWNvbi10aGluLWF2YXRhcjogXCJcXEUwRTRcIjtcclxuQGljb24tdGhpbi1iYWNrOiBcIlxcRTBFNVwiO1xyXG5AaWNvbi10aGluLWJhY2tsb2ctMTogXCJcXEUwRTZcIjtcclxuQGljb24tdGhpbi1iYWNrbG9nOiBcIlxcRTBFN1wiO1xyXG5AaWNvbi10aGluLWJhc2tldDogXCJcXEUwRThcIjtcclxuQGljb24tdGhpbi1iYXR0ZXJ5OiBcIlxcRTBFOVwiO1xyXG5AaWNvbi10aGluLWJvYXJkczogXCJcXEUwRUFcIjtcclxuQGljb24tdGhpbi1ib29rbWFyay0xOiBcIlxcRTBFQlwiO1xyXG5AaWNvbi10aGluLWJvb2ttYXJrOiBcIlxcRTBFQ1wiO1xyXG5AaWNvbi10aGluLWNhbGVuZGFyOiBcIlxcRTBFRFwiO1xyXG5AaWNvbi10aGluLWNhcnQ6IFwiXFxFMEVFXCI7XHJcbkBpY29uLXRoaW4tY2hhbmdlLXVzZXI6IFwiXFxFMEVGXCI7XHJcbkBpY29uLXRoaW4tY2hlY2tlZC0xOiBcIlxcRTBGMFwiO1xyXG5AaWNvbi10aGluLWNoZWNrZWQ6IFwiXFxFMEYxXCI7XHJcbkBpY29uLXRoaW4tY2xpcDogXCJcXEUwRjJcIjtcclxuQGljb24tdGhpbi1jbG9zZS1uZXctc21hbGw6IFwiXFxFMEYzXCI7XHJcbkBpY29uLXRoaW4tY2xvc2UtbmV3OiBcIlxcRTBGNFwiO1xyXG5AaWNvbi10aGluLWNsb3NlLXNlYXJjaDogXCJcXEUwRjVcIjtcclxuQGljb24tdGhpbi1jb21tZW50OiBcIlxcRTBGNlwiO1xyXG5AaWNvbi10aGluLWNvbW1lbnRzOiBcIlxcRTBGN1wiO1xyXG5AaWNvbi10aGluLWNvbXBhbnk6IFwiXFxFMEY4XCI7XHJcbkBpY29uLXRoaW4tY29udGFjdHM6IFwiXFxFMEY5XCI7XHJcbkBpY29uLXRoaW4tY29weTogXCJcXEUwRkFcIjtcclxuQGljb24tdGhpbi1jcGx1czogXCJcXEUwRkJcIjtcclxuQGljb24tdGhpbi1jcmVkZW50aWFsczogXCJcXEUwRkNcIjtcclxuQGljb24tdGhpbi1jcm06IFwiXFxFMEZEXCI7XHJcbkBpY29uLXRoaW4tY3NoYXJwOiBcIlxcRTBGRVwiO1xyXG5AaWNvbi10aGluLWNzczogXCJcXEUwRkZcIjtcclxuQGljb24tdGhpbi1jc3Y6IFwiXFxFMTAwXCI7XHJcbkBpY29uLXRoaW4tY3VzdG9tLWZpZWxkczogXCJcXEUxMDFcIjtcclxuQGljb24tdGhpbi1kYXY6IFwiXFxFMTAyXCI7XHJcbkBpY29uLXRoaW4tZGVhbHM6IFwiXFxFMTAzXCI7XHJcbkBpY29uLXRoaW4tZGVsOiBcIlxcRTEwNFwiO1xyXG5AaWNvbi10aGluLWRlc2NyaXB0aW9uOiBcIlxcRTEwNVwiO1xyXG5AaWNvbi10aGluLWRpYW1vbmQ6IFwiXFxFMTA2XCI7XHJcbkBpY29uLXRoaW4tZGlmZjogXCJcXEUxMDdcIjtcclxuQGljb24tdGhpbi1kbXNmOiBcIlxcRTEwOFwiO1xyXG5AaWNvbi10aGluLWRvYzogXCJcXEUxMDlcIjtcclxuQGljb24tdGhpbi1kb2N1bWVudDogXCJcXEUxMEFcIjtcclxuQGljb24tdGhpbi1kb2N1bWVudHM6IFwiXFxFMTBCXCI7XHJcbkBpY29uLXRoaW4tZG9jeDogXCJcXEUxMENcIjtcclxuQGljb24tdGhpbi1kb2xsYXI6IFwiXFxFMTBEXCI7XHJcbkBpY29uLXRoaW4tZG93bi0xOiBcIlxcRTEwRVwiO1xyXG5AaWNvbi10aGluLWRvd24tMjogXCJcXEUxMEZcIjtcclxuQGljb24tdGhpbi1kb3dubG9hZDogXCJcXEUxMTBcIjtcclxuQGljb24tdGhpbi1kcml2ZTogXCJcXEUxMTFcIjtcclxuQGljb24tdGhpbi1lZGl0LTI6IFwiXFxFMTEyXCI7XHJcbkBpY29uLXRoaW4tZWRpdDogXCJcXEUxMTNcIjtcclxuQGljb24tdGhpbi1lbWFpbDogXCJcXEUxMTRcIjtcclxuQGljb24tdGhpbi1lbnVtZXJhdGlvbnM6IFwiXFxFMTE1XCI7XHJcbkBpY29uLXRoaW4tRVJQOiBcIlxcRTExNlwiO1xyXG5AaWNvbi10aGluLUVWTTogXCJcXEUxMTdcIjtcclxuQGljb24tdGhpbi1leHBlbnNlczogXCJcXEUxMThcIjtcclxuQGljb24tdGhpbi1leHRlcm5hbDogXCJcXEUxMTlcIjtcclxuQGljb24tdGhpbi1leHRyYS1tZW51OiBcIlxcRTExQVwiO1xyXG5AaWNvbi10aGluLWZhaWxzOiBcIlxcRTExQlwiO1xyXG5AaWNvbi10aGluLWZhdi1vZmY6IFwiXFxFMTFDXCI7XHJcbkBpY29uLXRoaW4tZmF2OiBcIlxcRTExRFwiO1xyXG5AaWNvbi10aGluLWZhdm9yaXQ6IFwiXFxFMTFFXCI7XHJcbkBpY29uLXRoaW4tZmlsZXM6IFwiXFxFMTFGXCI7XHJcbkBpY29uLXRoaW4tZmlsdGVyOiBcIlxcRTEyMFwiO1xyXG5AaWNvbi10aGluLWZpbmFuY2U6IFwiXFxFMTIxXCI7XHJcbkBpY29uLXRoaW4tZm9sZGVyOiBcIlxcRTEyMlwiO1xyXG5AaWNvbi10aGluLWZ1bGxzY3JlZW46IFwiXFxFMTIzXCI7XHJcbkBpY29uLXRoaW4tZ2FudHQ6IFwiXFxFMTI0XCI7XHJcbkBpY29uLXRoaW4tZ2lmOiBcIlxcRTEyNVwiO1xyXG5AaWNvbi10aGluLWdpdC1uZXc6IFwiXFxFMTI2XCI7XHJcbkBpY29uLXRoaW4tZ2l0OiBcIlxcRTEyN1wiO1xyXG5AaWNvbi10aGluLWdsb3NzYXJ5OiBcIlxcRTEyOFwiO1xyXG5AaWNvbi10aGluLWdyb3VwOiBcIlxcRTEyOVwiO1xyXG5AaWNvbi10aGluLWhlYXJ0OiBcIlxcRTEyQVwiO1xyXG5AaWNvbi10aGluLWhlbHA6IFwiXFxFMTJCXCI7XHJcbkBpY29uLXRoaW4taGlzdG9yeTogXCJcXEUxMkNcIjtcclxuQGljb24tdGhpbi1ob21lOiBcIlxcRTEyRFwiO1xyXG5AaWNvbi10aGluLWhvdXJnbGFzczogXCJcXEUxMkVcIjtcclxuQGljb24tdGhpbi1odG1sOiBcIlxcRTEyRlwiO1xyXG5AaWNvbi10aGluLWltcG9ydDogXCJcXEUxMzBcIjtcclxuQGljb24tdGhpbi1pbnZlbnRvcnk6IFwiXFxFMTMxXCI7XHJcbkBpY29uLXRoaW4taW52b2ljZXM6IFwiXFxFMTMyXCI7XHJcbkBpY29uLXRoaW4taXNzdWVzOiBcIlxcRTEzM1wiO1xyXG5AaWNvbi10aGluLWphdmE6IFwiXFxFMTM0XCI7XHJcbkBpY29uLXRoaW4tanBnOiBcIlxcRTEzNVwiO1xyXG5AaWNvbi10aGluLWpzOiBcIlxcRTEzNlwiO1xyXG5AaWNvbi10aGluLWthbmJhbjogXCJcXEUxMzdcIjtcclxuQGljb24tdGhpbi1rZXk6IFwiXFxFMTM4XCI7XHJcbkBpY29uLXRoaW4ta2V5MjogXCJcXEUxMzlcIjtcclxuQGljb24tdGhpbi1rZXlzLWNsb25lOiBcIlxcRTEzQVwiO1xyXG5AaWNvbi10aGluLWtub3dsZWRnZWJhc2U6IFwiXFxFMTNCXCI7XHJcbkBpY29uLXRoaW4tbGRhcC1hdXRoZW50aWNhdGlvbjogXCJcXEUxM0NcIjtcclxuQGljb24tdGhpbi1sZGFwLXdvcmtmbG93OiBcIlxcRTEzRFwiO1xyXG5AaWNvbi10aGluLWxpa2U6IFwiXFxFMTNFXCI7XHJcbkBpY29uLXRoaW4tbGluay1icmVhazogXCJcXEUxM0ZcIjtcclxuQGljb24tdGhpbi1sb2NrOiBcIlxcRTE0MFwiO1xyXG5AaWNvbi10aGluLWxvZ2luOiBcIlxcRTE0MVwiO1xyXG5AaWNvbi10aGluLWxvZ291dDogXCJcXEUxNDJcIjtcclxuQGljb24tdGhpbi1sb2dzOiBcIlxcRTE0M1wiO1xyXG5AaWNvbi10aGluLW1lZXRpbmc6IFwiXFxFMTQ0XCI7XHJcbkBpY29uLXRoaW4tbWVudXM6IFwiXFxFMTQ1XCI7XHJcbkBpY29uLXRoaW4tbWVyZ2U6IFwiXFxFMTQ2XCI7XHJcbkBpY29uLXRoaW4tbW9uZXk6IFwiXFxFMTQ3XCI7XHJcbkBpY29uLXRoaW4tbW9uaXRvcmluZy1jb250cm9sbGluZzogXCJcXEUxNDhcIjtcclxuQGljb24tdGhpbi1tb3ZlOiBcIlxcRTE0OVwiO1xyXG5AaWNvbi10aGluLW15LWFjY291bnQ6IFwiXFxFMTRBXCI7XHJcbkBpY29uLXRoaW4tbXktcGFnZTogXCJcXEUxNEJcIjtcclxuQGljb24tdGhpbi1uZXctb2JqZWN0LTI6IFwiXFxFMTRDXCI7XHJcbkBpY29uLXRoaW4tbmV3LW9iamVjdDogXCJcXEUxNERcIjtcclxuQGljb24tdGhpbi1uZXdzOiBcIlxcRTE0RVwiO1xyXG5AaWNvbi10aGluLW5leHQ6IFwiXFxFMTRGXCI7XHJcbkBpY29uLXRoaW4tbm8taW52b2ljZXM6IFwiXFxFMTUwXCI7XHJcbkBpY29uLXRoaW4tbm9ybWFsLWlzc3VlczogXCJcXEUxNTFcIjtcclxuQGljb24tdGhpbi1ub3RlOiBcIlxcRTE1MlwiO1xyXG5AaWNvbi10aGluLW5vdGlmaWNhdGlvbnM6IFwiXFxFMTUzXCI7XHJcbkBpY29uLXRoaW4tb2R0OiBcIlxcRTE1NFwiO1xyXG5AaWNvbi10aGluLW9wZW4tZm9sZGVyOiBcIlxcRTE1NVwiO1xyXG5AaWNvbi10aGluLW9wZW4tc2VhcmNoOiBcIlxcRTE1NlwiO1xyXG5AaWNvbi10aGluLW9wZW4tc2lkZWJhci1ob3I6IFwiXFxFMTU3XCI7XHJcbkBpY29uLXRoaW4tb3Blbi1zaWRlYmFyOiBcIlxcRTE1OFwiO1xyXG5AaWNvbi10aGluLW9yZGVyczogXCJcXEUxNTlcIjtcclxuQGljb24tdGhpbi1vdmVydmlldzogXCJcXEUxNUFcIjtcclxuQGljb24tdGhpbi1wYWdlczogXCJcXEUxNUJcIjtcclxuQGljb24tdGhpbi1wYXNzd2Q6IFwiXFxFMTVDXCI7XHJcbkBpY29uLXRoaW4tcGF1c2U6IFwiXFxFMTVEXCI7XHJcbkBpY29uLXRoaW4tcGRmOiBcIlxcRTE1RVwiO1xyXG5AaWNvbi10aGluLXBlb3BsZTogXCJcXEUxNUZcIjtcclxuQGljb24tdGhpbi1wZXJpb2RpYy10YXNrczogXCJcXEUxNjBcIjtcclxuQGljb24tdGhpbi1waG9uZTogXCJcXEUxNjFcIjtcclxuQGljb24tdGhpbi1waG90bzogXCJcXEUxNjJcIjtcclxuQGljb24tdGhpbi1waHA6IFwiXFxFMTYzXCI7XHJcbkBpY29uLXRoaW4tcGxhbm5pbmc6IFwiXFxFMTY0XCI7XHJcbkBpY29uLXRoaW4tcGxheTogXCJcXEUxNjVcIjtcclxuQGljb24tdGhpbi1wbHVnaW5zOiBcIlxcRTE2NlwiO1xyXG5AaWNvbi10aGluLXBuZzogXCJcXEUxNjdcIjtcclxuQGljb24tdGhpbi1wcmV2OiBcIlxcRTE2OFwiO1xyXG5AaWNvbi10aGluLXByZXZpZXctc2FsYXJ5OiBcIlxcRTE2OVwiO1xyXG5AaWNvbi10aGluLXByaW50OiBcIlxcRTE2QVwiO1xyXG5AaWNvbi10aGluLXByb2R1Y3RzOiBcIlxcRTE2QlwiO1xyXG5AaWNvbi10aGluLXByb2plY3RzOiBcIlxcRTE2Q1wiO1xyXG5AaWNvbi10aGluLXF1ZXN0aW9uczogXCJcXEUxNkRcIjtcclxuQGljb24tdGhpbi1xdWljay1zZWFyY2g6IFwiXFxFMTZFXCI7XHJcbkBpY29uLXRoaW4tcmVnaXN0ZXI6IFwiXFxFMTZGXCI7XHJcbkBpY29uLXRoaW4tcmVsb2FkLTI6IFwiXFxFMTcwXCI7XHJcbkBpY29uLXRoaW4tcmVsb2FkOiBcIlxcRTE3MVwiO1xyXG5AaWNvbi10aGluLXJlbWluZGVyOiBcIlxcRTE3MlwiO1xyXG5AaWNvbi10aGluLXJlcG9ydDogXCJcXEUxNzNcIjtcclxuQGljb24tdGhpbi1yZXBvcnRzOiBcIlxcRTE3NFwiO1xyXG5AaWNvbi10aGluLXJlcG9zaXRvcnk6IFwiXFxFMTc1XCI7XHJcbkBpY29uLXRoaW4tcmVzb3VyY2VzOiBcIlxcRTE3NlwiO1xyXG5AaWNvbi10aGluLXJpc2tzOiBcIlxcRTE3N1wiO1xyXG5AaWNvbi10aGluLXJvYWRtYXA6IFwiXFxFMTc4XCI7XHJcbkBpY29uLXRoaW4tcm9sZXM6IFwiXFxFMTc5XCI7XHJcbkBpY29uLXRoaW4tcm9zZXR0ZTogXCJcXEUxN0FcIjtcclxuQGljb24tdGhpbi1ydWJ5OiBcIlxcRTE3QlwiO1xyXG5AaWNvbi10aGluLXNhdmUtbmV3OiBcIlxcRTE3Q1wiO1xyXG5AaWNvbi10aGluLXNhdmU6IFwiXFxFMTdEXCI7XHJcbkBpY29uLXRoaW4tc2Nyb2xsOiBcIlxcRTE3RVwiO1xyXG5AaWNvbi10aGluLXNjcnVtOiBcIlxcRTE3RlwiO1xyXG5AaWNvbi10aGluLXNlYXJjaC1kb3duLWFycm93OiBcIlxcRTE4MFwiO1xyXG5AaWNvbi10aGluLXNlYXJjaDogXCJcXEUxODFcIjtcclxuQGljb24tdGhpbi1zZXR0aW5nczogXCJcXEUxODJcIjtcclxuQGljb24tdGhpbi1zbWFsbC1pc3N1ZXM6IFwiXFxFMTgzXCI7XHJcbkBpY29uLXRoaW4tc25pcHBldHM6IFwiXFxFMTg0XCI7XHJcbkBpY29uLXRoaW4tc29ydC1oYW5kbGU6IFwiXFxFMTg1XCI7XHJcbkBpY29uLXRoaW4tc3ByaW50LWJvYXJkOiBcIlxcRTE4NlwiO1xyXG5AaWNvbi10aGluLXNwcmludC1idXJuZG93bjogXCJcXEUxODdcIjtcclxuQGljb24tdGhpbi1zcHJpbnQta2FuYmFuOiBcIlxcRTE4OFwiO1xyXG5AaWNvbi10aGluLXN0YXRpc3RpY3M6IFwiXFxFMTg5XCI7XHJcbkBpY29uLXRoaW4tc3RhdHM6IFwiXFxFMThBXCI7XHJcbkBpY29uLXRoaW4tc3RvcC0xOiBcIlxcRTE4QlwiO1xyXG5AaWNvbi10aGluLXN0b3A6IFwiXFxFMThDXCI7XHJcbkBpY29uLXRoaW4tc3VtbWFyeTogXCJcXEUxOERcIjtcclxuQGljb24tdGhpbi1zdXJ2ZXk6IFwiXFxFMThFXCI7XHJcbkBpY29uLXRoaW4tdGFnczogXCJcXEUxOEZcIjtcclxuQGljb24tdGhpbi10ZW1wbGF0ZXM6IFwiXFxFMTkwXCI7XHJcbkBpY29uLXRoaW4tdGlja2V0czogXCJcXEUxOTFcIjtcclxuQGljb24tdGhpbi10aWZmOiBcIlxcRTE5MlwiO1xyXG5AaWNvbi10aGluLXRpbWUtZW50cmllczogXCJcXEUxOTNcIjtcclxuQGljb24tdGhpbi10eHQ6IFwiXFxFMTk0XCI7XHJcbkBpY29uLXRoaW4tdW4tbGlrZTogXCJcXEUxOTVcIjtcclxuQGljb24tdGhpbi11bmxvY2s6IFwiXFxFMTk2XCI7XHJcbkBpY29uLXRoaW4tdXAtMTogXCJcXEUxOTdcIjtcclxuQGljb24tdGhpbi11cC0yOiBcIlxcRTE5OFwiO1xyXG5AaWNvbi10aGluLXVwbG9hZDogXCJcXEUxOTlcIjtcclxuQGljb24tdGhpbi11c2VyOiBcIlxcRTE5QVwiO1xyXG5AaWNvbi10aGluLXZhcmlhYmxlczogXCJcXEUxOUJcIjtcclxuQGljb24tdGhpbi12YXVsdDogXCJcXEUxOUNcIjtcclxuQGljb24tdGhpbi12Y2Y6IFwiXFxFMTlEXCI7XHJcbkBpY29uLXRoaW4tdm90ZXM6IFwiXFxFMTlFXCI7XHJcbkBpY29uLXRoaW4td2FybmluZzogXCJcXEUxOUZcIjtcclxuQGljb24tdGhpbi13YnM6IFwiXFxFMUEwXCI7XHJcbkBpY29uLXRoaW4td2lraTogXCJcXEUxQTFcIjtcclxuQGljb24tdGhpbi13b3JrZmxvdzogXCJcXEUxQTJcIjtcclxuQGljb24tdGhpbi13cmVjazogXCJcXEUxQTNcIjtcclxuQGljb24tdGhpbi14bHM6IFwiXFxFMUE0XCI7XHJcbkBpY29uLXRoaW4teGxzeC0xOiBcIlxcRTFBNVwiO1xyXG5AaWNvbi10aGluLXhsc3g6IFwiXFxFMUE2XCI7XHJcbkBpY29uLXRoaW4teG1sOiBcIlxcRTFBN1wiO1xyXG5AaWNvbi10aGluLXlvdXR1YmU6IFwiXFxFMUE4XCI7XHJcbkBpY29uLXRoaW4temlwOiBcIlxcRTFBOVwiO1xyXG5AaWNvbi10aGluLXpvb20taW46IFwiXFxFMUFBXCI7XHJcbkBpY29uLXRoaW4tem9vbS1vdXQ6IFwiXFxFMUFCXCI7XHJcblxyXG5cclxuLyogRU5EIElDT04gRk9OVFMgKi9cciIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIElOVk9JQ0UgKi9cclxuXHJcbmJvZHkge1xyXG4gICNpbnZvaWNlLXRlbXBsYXRlcyB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBtYXgtaGVpZ2h0OiAyMDBweDtcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4jbWFpbiB7XHJcbiAgaDQgaW1nLmdyYXZhdGFyIHtcclxuICAgIG1hcmdpbjogLTJweCA0cHggMHB4IDA7XHJcbiAgfVxyXG5cclxuICAjaW52b2ljZV9wYXltZW50cyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDMwcHggMTBweDtcclxuICAgIG1hcmdpbjogMCAtMzBweCAyMHB4O1xyXG4gICAgd2lkdGg6IGNhbGMoficxMDAlICsgNjBweCcpO1xyXG5cclxuICAgIGg0IHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuaW52b2ljZS1wYXltZW50IHtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHAge1xyXG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBkaXYuaXNzdWUge1xyXG4gICAgJi5vcmRlciB7XHJcbiAgICAgICYuZGV0YWlscyB7XHJcbiAgICAgICAgI2ludm9pY2VzIHtcclxuXHJcbiAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5pY29uLWludm9pY2Uge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgNXB4IDAgMDtcclxuXHJcbiAgICAgICAgICAgICsgYVtocmVmKj1cImludm9pY2VzXCJdIHtcclxuICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4IDAgMDtcclxuXHJcbiAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjY29udGVudCB7XHJcbiAgICAjY29tbWVudHMge1xyXG4gICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgYVtocmVmKj1cIm9yZGVyX2NvbW1lbnRzXCJdIHtcclxuXHJcbiAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5yZWN1cnJpbmdfYXR0cmlidXRlcyB7XHJcbiAgICAgIC5zcGxpdGNvbnRlbnQge1xyXG4gICAgICAgIC5zcGxpdGNvbnRlbnRsZWZ0IHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNwbGl0Y29udGVudHJpZ2h0IHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGEuY3VycmVudC1mcm9tLWFkZHJlc3Mge1xyXG4gICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xyXG5cclxuICAgICY6YWZ0ZXIge2NvbnRlbnQ6IEBlZGl0O31cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI21lc3NhZ2UtZm9ybSB7XHJcbiAgICAuYm94IHtcclxuICAgICAgLmljb24taW52b2ljZSB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMzVweDtcclxuICAgICAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIG1hcmdpbjogLTEzcHggMCAwO1xyXG4gICAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuYW1vdW50IHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuY29udGFjdCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYVtocmVmKj1cIi5wZGZcIl0ge1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgIHBhZGRpbmc6MDtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICBtYXJnaW46MDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgei1pbmRleDoyO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgZm9udC1zaXplOjBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6MHB4O1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogQHBkZjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjBweDtcclxuICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uX2NvbG9yX2FjdGl2ZS1iZyk7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfYWN0aXZlLWJnKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmRpc2FibGVkIHtcclxuICAgICAgICBvcGFjaXR5OiAwLjM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItZGlzYWJsZWQpO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1kaXNhYmxlZCk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5qc3RCbG9jayB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE9ORSBJTlZPSUNFICovXHJcblxyXG5cclxuLmNvbnRyb2xsZXItaW52b2ljZXMge1xyXG4gICNtYWluIHtcclxuICAgIGRpdi5pc3N1ZSB7XHJcbiAgICAgICYuZGV0YWlscyB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICNvcGVyYXRpb25zIHtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAzMHB4IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwIC0zMHB4IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxpc3QuaW52b2ljZS1saW5lcyB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDMwcHg7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcblxyXG4gICAgICB0aGVhZCB7XHJcbiAgICAgICAgdGgge1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5saW5lLWRhdGEge1xyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgdGgge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC50b3RhbCB7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XHJcblxyXG4gICAgICAgICYuZGVsaW1pdGVyIHtcclxuICAgICAgICAgIHRoOmVtcHR5IHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNjb21tZW50cyB7XHJcbiAgICBoNCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCkgIWltcG9ydGFudDtcclxuXHJcbiAgICAgIC5ncmF2YXRhciB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDVweCA4cHggMDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRhYmxlLmludm9pY2UtbGluZXMge1xyXG4gICAgJi5mb3JtIHtcclxuICAgICAgdGQucHJvZHVjdC1pbWFnZSB7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgT05FIElOVk9JQ0UgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIElOVk9JQ0UgTUFJTFMgKi9cclxuXHJcbi5pbnZvaWNlLWluZm8ge1xyXG5cclxuICAuaW52b2ljZS1zdW0sXHJcbiAgLmludm9pY2UtZGF0ZSB7XHJcbiAgICBwYWRkaW5nOiAwIDAgMCAyNXB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDNweCAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDIycHg7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBtYXJnaW46MDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaW52b2ljZS1zdW0ge1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICBjb250ZW50OiBAbW9uZXk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaW52b2ljZS1kYXRlIHtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IEBjYWxlbmRhcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuI21haW4gPiAjY29udGVudCB7XHJcbiAgLmludm9pY2UtY2FyZCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgIC5uYW1lLmludm9pY2UtbmFtZSB7XHJcbiAgICAgIG9yZGVyOiAxO1xyXG4gICAgICBmbGV4OiAxIDAgYXV0bztcclxuXHJcbiAgICAgIGgzIHtcclxuICAgICAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaW52b2ljZS1pbmZvIHtcclxuICAgICAgb3JkZXI6IDI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29udHJvbGxlci1pbnZvaWNlcy5hY3Rpb24taW5kZXgge1xyXG4gICNjb250ZW50IHtcclxuICAgICNxdWVyeV9mb3JtIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIElOVk9JQ0UgTUFJTFMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1FRElBKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgI21haW4ge1xyXG4gICAgZGl2Lmlzc3VlIHtcclxuICAgICAgdGFibGUubGlzdCB7XHJcbiAgICAgICAgJi5pbnZvaWNlLWxpbmVzIHtcclxuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgI21haW4ge1xyXG4gICAgI21lc3NhZ2UtZm9ybSB7XHJcbiAgICAgIC5qc3RCbG9jayB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIGRpdi5pbnZvaWNlLWNhcmQge1xyXG4gICAgLmludm9pY2UtaW5mbyB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItaW52b2ljZXMge1xyXG4gICAgI21haW4ge1xyXG4gICAgICBkaXYuaXNzdWUge1xyXG4gICAgICAgICYuZGV0YWlscyB7XHJcbiAgICAgICAgICBociB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgZGl2LmJveCAgPiBmaWVsZHNldC50YWJ1bGFyI2NvbXBhbnlfcHJvZmlsZSB7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcblxyXG4gICAgICBsZWdlbmQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGxlZnQ6MCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIGxlZnQ6IC0xMHB4O1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctbW9iaWxlKTtcclxuICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgSU5WT0NFICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcblxyXG4vKiBTVEFSVCBQRU9QTEUgUEFHRVMgKi9cclxuXHJcbiNtYWluIHtcclxuICB0YWJsZS5wZW9wbGUuaW5kZXggdHIuY29udGV4dC1tZW51LXNlbGVjdGlvbiBoMixcclxuICAuY29udGV4dC1tZW51LXNlbGVjdGlvbiBhLCAuY29udGV4dC1tZW51LXNlbGVjdGlvbiBhOmhvdmVyIHtcclxuICAgIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICB0YWJsZS5wZW9wbGUuaW5kZXggdHIuY29udGV4dC1tZW51LXNlbGVjdGlvbiBoMiBhIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgI3Blb3BsZS10YWdzLWVkaXQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG50YWJsZS5wZW9wbGUuaW5kZXgge1xyXG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG4gIG1hcmdpbjogMCAwIDEwcHggMCAhaW1wb3J0YW50O1xyXG5cclxuICB0ZCB7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDEwcHggIWltcG9ydGFudDtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItcmlnaHQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJi5hdmF0YXIge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmluZm8ge1xyXG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIH1cclxuICB9XHJcbiAgdHI6bGFzdC1jaGlsZCB7XHJcbiAgICB0ZCB7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGgxIHtcclxuICAgIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgIG1hcmdpbjogMCAwIDNweCAhaW1wb3J0YW50O1xyXG4gICAgYSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIGgyIHtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTIgIWltcG9ydGFudDtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcclxuICAgIGEge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuICB9XHJcbiAgLnRhZ3Mge1xyXG4gICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICB9XHJcbiAgdHI6aG92ZXIgdGQsXHJcbiAgdHIuY29udGV4dC1tZW51LXNlbGVjdGlvbiB0ZHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWJveCk7XHJcblxyXG4gICAgaDEgYSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC50YWdfbGlzdCB7XHJcbiAgICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDA7XHJcbiAgICBsaW5lLWhlaWdodDogMDtcclxuICAgIHBhZGRpbmc6IDAgMCAwIDI1cHg7XHJcblxyXG4gICAgc3Bhbi50YWctbGFiZWwtY29sb3Ige1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZTtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgaW5oZXJpdDtcclxuICAgICAgbWFyZ2luOiAwIDAgMCA1cHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGZzMTE7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICBmb250LWZhbWlseTogQGdmZjtcclxuICAgICAgICBwYWRkaW5nOiAycHggNHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlO1xyXG4gICAgICB9XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCkgIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBoMiB7XHJcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi5yZXNvdXJjZS1zdWJqZWN0cyBzcGFuLmljb24ge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcclxuICBwYWRkaW5nOiAwIDAgMCAyNXB4O1xyXG4gIGhlaWdodDoxNnB4O1xyXG4gIHdpZHRoOjE2cHg7XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOjUwJTtcclxuICAgIGxlZnQ6MHB4O1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIGNsZWFyOmJvdGg7XHJcbiAgICBoZWlnaHQ6MTZweDtcclxuICAgIHdpZHRoOjE2cHg7XHJcbiAgICBtYXJnaW46IC04cHggMCAwO1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIHotaW5kZXg6MTtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMTZweDtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICB9XHJcblxyXG4gIGltZy5ncmF2YXRhciB7XHJcbiAgICBtYXJnaW46IDAgNXB4IDAgMDtcclxuICB9XHJcbn1cclxuXHJcbi51c2VyLXJlc291cmNlLWJvb2tpbmdzIHtcclxuICBzcGFuLmV4cGFuZGVyIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgbWluLWhlaWdodDogMTZweDtcclxuICAgIG1pbi13aWR0aDogMTZweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xyXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowO1xyXG4gICAgICBsZWZ0OjA7XHJcbiAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICBoZWlnaHQ6IDE2cHg7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLm9wZW4ge1xyXG4gICAgc3Bhbi5leHBhbmRlciB7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNtYWluIHtcclxuICB0YWJsZS5zdWJqZWN0X2hlYWRlciB7XHJcbiAgICAjZWRpdF90YWdzX2Zvcm0gZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWhvdmVyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI21haW4gZGl2LnBlcnNvbi5kZXRhaWxzIHtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuXHJcblxyXG4gIHRhYmxlLnN1YmplY3RfaGVhZGVyIHtcclxuICAgIHRkLnN1YmplY3RfaW5mbyB7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgbGkge1xyXG4gICAgICAgICYuaWNvbi1lbWFpbCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgJjphZnRlciB7ZGlzcGxheTogbm9uZTt9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGFbaHJlZl49XCJtYWlsdG9cIl0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nOiAwIDAgMCAyNXB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDogQGVtYWlsO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIldGUy1STS1mb250XCI7XHJcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmVtcHR5IHtkaXNwbGF5OiBub25lO31cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0ZCB7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xyXG5cclxuICAgIH1cclxuICB9XHJcbiAgLnRhZ19saXN0IHtcclxuICAgIHBhZGRpbmc6IDAgMCAwIDMwcHg7XHJcblxyXG4gICAgJjplbXB0eSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC50YWctbGFiZWwtY29sb3Ige1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCBpbmhlcml0O1xyXG4gICAgbWFyZ2luOiAwIDVweCAwIDA7XHJcbiAgICBmb250LXNpemU6IDAuNzg1N3JlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiBAZ2ZmO1xyXG4gICAgICBwYWRkaW5nOiAycHggNHB4O1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4jbWFpbiAge1xyXG4gIC5hdHRhY2htZW50cyB7XHJcbiAgICB0YWJsZSB7XHJcblxyXG4gICAgICAuaWNvbi1kb3dubG9hZCxcclxuICAgICAgLmljb24tZGVse1xyXG4gICAgICAgIG1hcmdpbjogLTRweCAwIDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5kZWxldGUge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAudGFiLWNvbnRlbnQge1xyXG4gICAgJiA+IHVsIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICBsaSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDAgMCAxNXB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogNHB4O1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIGhlaWdodDogNnB4O1xyXG4gICAgICAgICAgd2lkdGg6IDZweDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBhW2hyZWZePScvcHJvamVjdHMnXSB7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAubWV0cmljcyAubnVtIHtcclxuICAgIGZvbnQtc2l6ZTogQGZzMjA7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gIH1cclxuICAuYXV0b3Njcm9sbCB7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICB9XHJcbiAgPiAjY29udGVudCAuY29udGV4dHVhbCB7XHJcbiAgICAjZWRpdF90YWdzX2xpbmsge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHBhZGRpbmc6IDVweCA4cHg7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvcik7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnKTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICBtaW4taGVpZ2h0OiBhdXRvO1xyXG4gICAgICBmb250LXNpemU6IEBmczExO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGZzMTE7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICBvcGFjaXR5IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogIG9wYWNpdHkgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgb3BhY2l0eSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YmVmb3JlLFxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbnRhYmxlLmxpc3QuaXNzdWVzIHtcclxuICB0ci5ncm91cCB7XHJcbiAgICBzcGFuLnRvdGFscyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgIH1cclxuICAgIHNwYW4uY291bnQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgcGFkZGluZzogMnB4IDZweCAycHggNnB4O1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgbGluZS1oZWlnaHQ6IEBmczEyO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcblxyXG4gICAgICAmOmVtcHR5IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbnRhYmxlLmxpc3QucGVvcGxlIHtcclxuICBtYXJnaW46IDAgMCAzMHB4O1xyXG5cclxuICB0ZCB7XHJcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XHJcbiAgfVxyXG59XHJcblxyXG4jdGFiLXBsYWNlaG9sZGVyLWFjdGl2aXR5IHtcclxuICAjYWN0aXZpdHkgfiBhIHtcclxuICAgIHBhZGRpbmc6IDhweCAzMHB4O1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tYnV0dG9uLWZvbnQtd2VpZ2h0KTtcclxuICAgIG1hcmdpbjogMCA7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWhvdmVyKTtcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiN3cmFwcGVyIHtcclxuICAjdGFnc19kYXRhIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWFyZ2luOiA1cHggMCAxMHB4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgIC50YWdfbGlzdCB7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgIH1cclxuICB9XHJcbiAgI2VkaXRfdGFnc19mb3JtIHtcclxuICAgIG1hcmdpbjogNXB4IDAgMDtcclxuXHJcbiAgICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQge1xyXG4gICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5ib2R5IHtcclxuICAjY29udGVudCxcclxuICAubW9kYWwge1xyXG4gICAgLnBlb3BsZS10YWdzLWVkaXQge1xyXG5cclxuICAgICAgdWwudGFnaXQge1xyXG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jY29udGVudCxcclxuLm1vZGFsIHtcclxuICAucGVvcGxlLXRhZ3MtZWRpdCB7XHJcblxyXG4gICAgdWwudGFnaXQge1xyXG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgIGxpLnRhZ2l0LWNob2ljZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICAgICAgcGFkZGluZzogMnB4IDRweCAycHggMjFweDtcclxuICAgICAgICBmb250LXNpemU6IEBmczExO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICAgICAgbWFyZ2luOiAycHggMTBweCAycHggMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodC1iZyk7XHJcbiAgICAgICAgbWluLWhlaWdodDogMjBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZTtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlO1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZTtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKH4nMTAwJSAtIDRweCcpO1xyXG5cclxuICAgICAgICAudGFnaXQtY2xvc2Uge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICAgIGxlZnQ6IDVweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGZzMTI7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgICAgIHdpZHRoOiAxMnB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIG1hcmdpbjogLTZweCAwIDA7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDFweDstbW96LWJvcmRlci1yYWRpdXM6IDFweDtib3JkZXItcmFkaXVzOiAxcHg7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6dmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCk7XHJcblxyXG4gICAgICAgICAgICAudGV4dC1pY29uIHtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAudGV4dC1pY29uIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAudGFnaXQtbmV3IHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuamNmLWxpc3QtYm94IHtcclxuICAgICAgbWFyZ2luOiAwIDAgNXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4udWktd2lkZ2V0LWNvbnRlbnQudGFnaXQtYXV0b2NvbXBsZXRlIHtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG5cclxuICBsaSB7XHJcbiAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFsbC1ob3Zlci1iZyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jY29udGVudCB7XHJcbiAgLnRhYi1jb250ZW50IHtcclxuICAgICNhZGRfYXR0YWNobWVudF9mb3JtIHtcclxuICAgICAgZmllbGRzZXQge1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgICYgKyBhIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmctaG92ZXIpO1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBwIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5hdHRhY2htZW50c19mb3JtIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IDIwcHggMCAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2FjdGl2aXR5IHtcclxuICAgICAgbWFyZ2luOiAwIDAgMjBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5hdHRhY2htZW50cyB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjd29ya19leHBlcmllbmNlX2Rlc2NyaXB0aW9uX2FuZF90b29sYmFyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICBmb3JtI3dvcmtfZXhwZXJpZW5jZSB7XHJcbiAgICAjYWxsX2F0dHJpYnV0ZXMge1xyXG4gICAgICAmID4gcCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjdGFiLXBsYWNlaG9sZGVyLXBlcmZvcm1hbmNlIHtcclxuICAgIC5kYXRlX3BlcmlvZF9ibG9jayB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAuc2VsZWN0MiB+IC5zZWxlY3QyIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjcGVyc29uX2luZm9ybWF0aW9uX2F0dHJpYnV0ZXNfd29ya2RheV9sZW5ndGgge1xyXG4gICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gIH1cclxuXHJcbiAgI3RhYi1wbGFjZWhvbGRlci1yYXRlcyxcclxuICAjdGFiLXBsYWNlaG9sZGVyLXBlcmZvcm1hbmNlIHtcclxuICAgIC5jaGFydF90YWJsZTpub3QoLmhpc3RvZ3JhbSkge1xyXG4gICAgICBtYXJnaW46IDIwcHggLTMwcHg7XHJcbiAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDYwcHgnKTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuXHJcbiAgICAgIHRkIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLXBlb3BsZSB7XHJcbiAgLmF1dG9zY3JvbGwge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuXHJcbiAgI21haW4ge1xyXG4gICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgaDEge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGZzMjA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgICBtYXJnaW46IDAgMCAzcHggO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jbWFpbiA+ICNjb250ZW50IHtcclxuICAjcXVlcnlfZm9ybSAucGVvcGxlX2hlYWRlciB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xyXG5cclxuICAgIC50YWdzIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIFBFT1BMRSBQQUdFICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBBRE1JTiBTRVRUSU5HUyBGT1IgUEVPUExFIFBBR0UgKi9cclxuXHJcbiN0YWItY29udGVudC1kZXBhcnRtZW50cyB7XHJcbiAgaDIge1xyXG4gICAgZm9udC1zaXplOiBAZnMxNjtcclxuICB9XHJcbn1cclxuXHJcbnRhYmxlLmxpc3QubWVtYmVycyB7XHJcbiAgdGQuYWNscyB7XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgICB9XHJcbiAgICBiciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIG1hcmdpbjogMTVweCAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnNlbGVjdC11c2VycyB7XHJcblxyXG4gICNwcmluY2lwYWxzLFxyXG4gICNwZW9wbGUge1xyXG4gICAgbWFyZ2luOiAwIDAgMjBweDtcclxuXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgIC5pY29uIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZmllbGRzZXQge1xyXG5cclxuICAgIHAge1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuXHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGxlZ2VuZCArIHAge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblxyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgZmxleDogMCAxIGF1dG87XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIGlucHV0W3R5cGU9J2NoZWNrYm94J10ge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIEFETUlOIFNFVFRJTkdTIEZPUiBQRU9QTEUgUEFHRSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTVJESUEgKi9cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gICNjb250ZW50IHtcclxuICAgIC50YWItY29udGVudCB7XHJcbiAgICAgICNhZGRfYXR0YWNobWVudF9mb3JtIHtcclxuICAgICAgICBmaWVsZHNldCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgI3BlcnNvbl9maWxlcyB7XHJcbiAgICAgICAgdHIge1xyXG4gICAgICAgICAgLmljb24tb25seSB7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgI21haW4ge1xyXG4gICAgLmNoYXJ0X3RhYmxlIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgICAjZWRpdF90YWdzX2xpbmsge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWJnLWZmZikgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAjd3JhcHBlciAjZWRpdF90YWdzX2Zvcm0gLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IHtcclxuICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAjY29udGVudCAjdGFiLXBsYWNlaG9sZGVyLXJhdGVzID4gLmNoYXJ0X3RhYmxlLCAjY29udGVudCAjdGFiLXBsYWNlaG9sZGVyLXBlcmZvcm1hbmNlID4gLmNoYXJ0X3RhYmxlIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMzBweCAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtMzBweCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgLnBlb3BsZS10YWdzLWVkaXQge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAudGFiLWNvbnRlbnQge1xyXG4gICAgICAjYWRkX2F0dGFjaG1lbnRfZm9ybSBmaWVsZHNldCB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICN0YWItcGxhY2Vob2xkZXItcGVyZm9ybWFuY2Uge1xyXG4gICAgICAuZGF0ZV9wZXJpb2RfYmxvY2sge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgI3RhYi1wbGFjZWhvbGRlci1hY3Rpdml0eSB7XHJcbiAgICAjYWN0aXZpdHkge1xyXG4gICAgICAmIH4gYSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbWFpbiB7XHJcbiAgICAuY2hhcnRfdGFibGUge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcblxyXG4gICAgICAubWV0cmljcyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcblxyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgcGFkZGluZzogMTBweCAwO1xyXG5cclxuICAgICAgICAgICYuZGVsaW1pdGVyIHtcclxuXHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgI3RhYi1wbGFjZWhvbGRlci1wZXJmb3JtYW5jZSB7XHJcbiAgICAgIC5kYXRlX3BlcmlvZF9ibG9jayB7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICAuamNmLXNlbGVjdCB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG5cclxuICAgICAgICAgICYgKyAuamNmLXNlbGVjdCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmJvZHkgc2VsZWN0W3VybCo9XCJjb250YWN0c1wiXSB+IC5zZWxlY3QyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLFxyXG5ib2R5IHNlbGVjdFt1cmwqPVwicGVvcGxlXCJdIH4gLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xyXG4gIHBhZGRpbmc6IDAgMzBweDtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBSRURNSU5FVVAgUExBR0lOUyAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgR0VORVJBTCBGT1IgQ09OVEFDVFMgKyBERUFMUyArIElOVk9JQ0VTICsgRVhQRU5TRVMgKyBPUEVSQVRJT05TICsgUFJPRFVDVFMgKyBPUkRFUlMgKyAgT1BFUkFUSU9OUyAqL1xyXG5cclxuI21haW4ge1xyXG4gICNpc3N1ZS1mb3JtIHtcclxuICAgIC50YWJ1bGFyIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gICNpc3N1ZV90YWdzIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG4gIH1cclxuXHJcbiAgI2NoZWNrbGlzdC1tZW51IHtcclxuICAgIHRvcDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgYm90dG9tOiAzMnB4ICFpbXBvcnRhbnQ7XHJcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICByaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgei1pbmRleDogMTA7XHJcblxyXG4gICAgLmFkZC1jaGVja2xpc3QtaXRlbSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICBtaW4taGVpZ2h0OiAwO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGxpIHtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgcGFkZGluZzogMnB4IDBweCAycHggMTBweDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYWxsLWhvdmVyLWJnKTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFsbC1ob3Zlci1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICAmID4gYSB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYWxsLWhvdmVyLWJnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgI2NvbnRlbnQge1xyXG5cclxuICAgIHRhYmxlLmNvbnRhY3RzLmluZGV4IHRyLmNvbnRleHQtbWVudS1zZWxlY3Rpb24gc3Bhbi50YWctbGFiZWwtY29sb3Ige1xyXG4gICAgICBwYWRkaW5nOiAzcHggNHB4O1xyXG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1iZy1mZmYpO1xyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCkgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcikgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZvcm1bYWN0aW9uKj1cIl9pbXBvcnRzXCJdIHtcclxuICAgIC5ib3gge1xyXG4gICAgICBwIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjdW5zYXZlZC1pdGVtcy5saXN0IHtcclxuICAgIHRoIHtcclxuICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRib2R5IHRyLFxyXG4gICAgdHIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAtbW96LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAtbW96LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIC5kZWFsLWxpbmVzLFxyXG4gIC5kZWFsX2xpc3QsXHJcbiAgLmludm9pY2VfbGlzdCxcclxuICAjY29udGFjdF9saXN0IHtcclxuXHJcbiAgICAubGlzdCB7XHJcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG5cclxuICAgICAgdGhlYWQge1xyXG4gICAgICAgIHRoIHtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0aCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGQge1xyXG4gICAgICAgICYucHJpY2Uge1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0ci50b3RhbCB7XHJcbiAgICAgICAgJiA+IHRoIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcblxyXG5cclxuICAgICAgICAgIHRyLnRvdGFsIHtcclxuXHJcbiAgICAgICAgICAgICYgPiB0aCB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgdGFibGUudG90YWwge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgICAgICB0aCB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLm9yZGVycyB7XHJcbiAgICAgICAgdHIudG90YWwge1xyXG4gICAgICAgICAgJiA+IHRoIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLnByb2R1Y3QtbGluZXMge1xyXG4gICAgICAgIHRoZWFkIHtcclxuICAgICAgICAgIHRoIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDdweCAxNHB4O1xyXG4gICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcblxyXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgdGFibGUuY29udGFjdHMge1xyXG4gICAgICAmLm9yZGVycy5pbmRleCxcclxuICAgICAgJi5kZWFscyxcclxuICAgICAgJi5pbnZvaWNlcyB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICB0ciB7XHJcbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgIC50b3RhbCB7XHJcbiAgICAgICAgICB0aCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJiA+IHRoIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLnRvdGFsIHtcclxuICAgICAgICAgICAgdGgge1xyXG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB0ciB7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgIHRoIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5vcmRlcnMuaW5kZXgge1xyXG4gICAgICAgIC50b3RhbCB7XHJcblxyXG4gICAgICAgICAgJiA+IHRoIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLXBlb3BsZSB7XHJcbiAgI3dhdGNoZXJzIHtcclxuICAgIC5kZWxldGUge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gIH1cclxuICAuZGVsZXRlIHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6dmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIHdpZHRoOnZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgei1pbmRleDoyO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGZvbnQtc2l6ZTowcHg7XHJcbiAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIHotaW5kZXg6MTtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZGVsZXRlIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBAZGVsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIEdFTkVSQUwgRk9SIENPTlRBQ1RTICsgREVBTFMgKyBJTlZPSUNFUyArIEVYUEVOU0VTICsgT1BFUkFUSU9OUyArIFBST0RVQ1RTICsgT1JERVJTICsgIE9QRVJBVElPTlMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEJPUkQgQk9YICovXHJcbiNtYWluIHtcclxuICAjY29udGFjdF9saXN0LmRlYWxfbGlzdCB7XHJcbiAgICAubGlzdCB7XHJcbiAgICAgICYuZGVhbC1ib2FyZCB7XHJcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCByZ2JhKDAsIDAsIDAsIDApO1xyXG4gICAgICAgIC1tb3otYm94LXNoYWRvdzogMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCByZ2JhKDAsIDAsIDAsIDApO1xyXG5cclxuICAgICAgICB0aCB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGZzMTg7XHJcbiAgICAgICAgICBtaW4td2lkdGg6IDI1MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRvdGFsIHtcclxuICAgICAgICAgIHRoIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuc2FsZXMtZnVubmVsIHtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcblxyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNhbGVzLWZ1bm5lbCB7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuICAgICAgICAgIHNwYW4udGFnLWxhYmVsLWNvbG9yIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IEBmczEyO1xyXG4gICAgICAgICAgICBtYXJnaW46IDVweCAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50b3RhbCB7XHJcbiAgICAgICAgICB0aCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcblxyXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogMCAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogMCAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgMDstbW96LWJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKSAwO2JvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKSAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmRlYWwtYm9hcmQge1xyXG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICB0aCB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI3F1ZXJ5X2Zvcm0ge1xyXG4gIHBbc3R5bGU9XCJmbG9hdDpyaWdodDtcIl0ge1xyXG4gICAgZm9udC1zaXplOiAwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMHB4O1xyXG4gICAgY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG5cclxuICAgIGEge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB0ZXh0LWluZGVudDogLTk5OTk5cHg7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHRleHQtaW5kZW50OiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYTpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IEBwcmV2O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYTpsYXN0LWNoaWxkIHtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogQG5leHQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ob2xkZXItYnV0dG9ucy1maWx0ZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBtYXgtd2lkdGg6IDU3MHB4O1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIHdpZHRoOiA1NzBweDtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgIC5idXR0b25zIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgbGluZS1oZWlnaHQ6IEBmczEyO1xyXG5cclxuICAgICAgJi5oaWRlLXdoZW4tcHJpbnQge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAgMTBweDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgNXB4IDAgMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBsYWJlbFtmb3I9XCJtb250aFwiXSxcclxuICAgIGxhYmVsW2Zvcj1cInllYXJcIl17XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNjb250YWN0X2xpc3Qge1xyXG4gIHRhYmxlLmNhbCB7XHJcbiAgICB0cntcclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICB0ZCB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgdGQ6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgQk9SRCBUQUJMRSAqL1xyXG5cclxuLmRlYWwtYm9hcmQge1xyXG4gIC5kZWFsLXN0YXR1cy1jb2wge1xyXG5cclxuICAgIC5kZWFsLWNhcmQge1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgIG1hcmdpbjogMCAwIDRweDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuXHJcbiAgICAgIHAge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYub3BlbiB7XHJcbiAgICAgIC5kZWFsLWNhcmQge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtYmcpO1xyXG5cclxuICAgICAgICAuaW5mbyB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLndvbiB7XHJcbiAgICAgIC5kZWFsLWNhcmQge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWNvbi1zYXZlLWNvbG9yKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pY29uLXNhdmUtYmcpO1xyXG5cclxuICAgICAgICAuaW5mbyB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmxvc3Qge1xyXG4gICAgICAuZGVhbC1jYXJkIHtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLW5vdGljZS1lcnJvci1tYWluKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ub3RpY2UtZXJyb3ItYmcpO1xyXG5cclxuICAgICAgICAuaW5mbyB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBCT1JEIFRBQkxFICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBDQUxFTkRBUiBUQUJMRSAqL1xyXG5cclxuI21haW4ge1xyXG4gIC5jYWwge1xyXG4gICAgLmlzc3VlIHtcclxuICAgICAgJi5kZWFsLFxyXG4gICAgICAmLmludm9pY2UsXHJcbiAgICAgICYub3BlcmF0aW9uLFxyXG4gICAgICAmLm9yZGVyIHtcclxuICAgICAgICBwYWRkaW5nOjEwcHggIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLW5vdGljZS1zdWNjZXNzZnUtbWFpbikgIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ub3RpY2Utc3VjY2Vzc2Z1LWJnKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogNHB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhLFxyXG4gICAgICAgIGEuaWNvbiB7XHJcbiAgICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgbWFyZ2luOiA1cHggLTEwcHggMTBweDtcclxuICAgICAgICAgIHBhZGRpbmc6IDZweCA2cHggNnB4IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbm90aWNlLXN1Y2Nlc3NmdS1tYWluKTtcclxuICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLW5vdGljZS1zdWNjZXNzZnUtbWFpbi10ZXh0KSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgYm9yZGVyOiA0cHggc29saWQgdmFyKC0tbm90aWNlLXN1Y2Nlc3NmdS1tYWluKTtcclxuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgJjphZnRlcixcclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ub3RpY2Utc3VjY2Vzc2Z1LWJnKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLW5vdGljZS1zdWNjZXNzZnUtYmctdGV4dCkgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWZ0ZXIsXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogZW5kIENBTEVOREFSIFRBQkxFICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCAgREVBTFMgKi9cclxuXHJcbiNkZWFsX2Zvcm0ge1xyXG4gIC5kZWFsX2l0ZW1zIHtcclxuICAgIHBhZGRpbmc6IDQwcHggMCAwO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIGxlZ2VuZCB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICB9XHJcblxyXG4gICAgdGFibGUucHJvZHVjdC1saW5lcy5mb3JtIHtcclxuICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcblxyXG4gICAgICAucHJvZHVjdC1pbWFnZSB7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdHIubGluZS10b3RhbCB7XHJcblxyXG4gICAgICAgIHRkLmFkZC1saW5rIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDEwcHggNXB4IDEwcHggMDtcclxuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblxyXG4gICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAzMHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yKTtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyKTtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuXHJcbiAgICAgICAgICAmLnRvdGFsLWRhdGEudG90YWwge1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDVweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRyLmxpbmUtdG90YWwge1xyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgdHIubGluZSB7XHJcbiAgICAgICAgJi5maWVsZHMge1xyXG4gICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuXHJcbiAgICAgICAgICAgICYuaXRlbSB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xyXG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG5cclxuICAgICAgICAgICAgICAmICsgdGV4dGFyZWEge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIC5pbmZvIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC50YXgtZmllbGRzLFxyXG4gICAgICAuZGlzY291bnQtZmllbGRzIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuXHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDVweCAwIDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjbmV3X3Byb2R1Y3RfY29kZSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdGV4dGFyZWEge1xyXG4gICAgbWluLWhlaWdodDogNDVweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgIERFQUxTICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBJTlZPSUNFUyAqL1xyXG5cclxuI2ludm9pY2VfZm9ybSB7XHJcbiAgZmllbGRzZXQuYXR0cmlidXRlcyB7XHJcbiAgICBwYWRkaW5nOiA0MHB4IDAgMDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICBsZWdlbmQge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgfVxyXG5cclxuICAgIHRhYmxlLmludm9pY2UtbGluZXMge1xyXG4gICAgICBib3JkZXItc3BhY2luZzogMDtcclxuXHJcbiAgICAgIHRyLmxpbmUtdG90YWwge1xyXG5cclxuICAgICAgICB0ZC5hZGQtbGluayB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDVweCAxMHB4IDA7XHJcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMzBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZyk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvcik7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcblxyXG4gICAgICAgICAgJi50b3RhbC1kYXRhLnRvdGFsIHtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweCA1cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0ci5saW5lLXRvdGFsIHtcclxuICAgICAgICB0ZCB7XHJcbiAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRyLmxpbmUge1xyXG4gICAgICAgICYuZmllbGRzIHtcclxuICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgdGQuaXRlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcclxuXHJcbiAgICAgICAgICAgIC5pbmZvIHtcclxuICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC50YXgtZmllbGRzLFxyXG4gICAgICAuZGlzY291bnQtZmllbGRzIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuXHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDVweCAwIDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjbmV3X3Byb2R1Y3RfY29kZSB7XHJcbiAgICAgICAgbWFyZ2luOjEwcHggMCAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0ZXh0YXJlYSB7XHJcbiAgICBtaW4taGVpZ2h0OiA0NXB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICB9XHJcbn1cclxuXHJcbiNzZXR0aW5nc19pbnZvaWNlc19wYXlwYWxfYWNjb3VudCB7XHJcbiAgbWFyZ2luOiAwIDAgMCAxMHB4O1xyXG59XHJcblxyXG4vKiBFTkQgSU5WT0lDRVMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE9SREVSUyAqL1xyXG5cclxuI29yZGVyX2Zvcm0ge1xyXG4gIGZpZWxkc2V0IHtcclxuICAgIHBhZGRpbmc6IDQwcHggMCAwO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIGxlZ2VuZCB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICB9XHJcblxyXG4gICAgdGFibGUucHJvZHVjdC1saW5lcyB7XHJcbiAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xyXG5cclxuICAgICAgdHIubGluZS10b3RhbCB7XHJcblxyXG4gICAgICAgIHRkLmFkZC1saW5rIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDEwcHggNXB4IDEwcHggMDtcclxuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblxyXG4gICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAzMHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yKTtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyKTtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuXHJcbiAgICAgICAgICAmLnRvdGFsLWRhdGEudG90YWwge1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDVweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRyLmxpbmUtdG90YWwge1xyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgdHIubGluZSB7XHJcbiAgICAgICAgJi5maWVsZHMge1xyXG4gICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB0ZC5pdGVtIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xyXG5cclxuICAgICAgICAgICAgLmluZm8ge1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLnRheC1maWVsZHMsXHJcbiAgICAgIC5kaXNjb3VudC1maWVsZHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG5cclxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgNXB4IDAgMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICNuZXdfcHJvZHVjdF9jb2RlIHtcclxuICAgICAgICBtYXJnaW46MCAwIDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0ZXh0YXJlYSB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDQ1cHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBPUkRFUlMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEVYUEVOQ0VTICovXHJcblxyXG4jbWFpbiB7XHJcbiAgLmV4cGVuc2VfbGlzdCxcclxuICAub3BlcmF0aW9uX2xpc3QsXHJcbiAgLnByb2R1Y3RfbGlzdCB7XHJcblxyXG4gICAgLmxpc3Qge1xyXG4gICAgICBtYXJnaW46IDIwcHggMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgdGgge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRkLnByaWNlIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnRvdGFsIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgIHRoIHtcclxuICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTRweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRyLm9wZXJhdGlvbiB7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHRhYmxlLmNvbnRhY3RzIHtcclxuICAgICAgJi5leHBlbnNlcy5pbmRleCxcclxuICAgICAgJi5wcm9kdWN0cyxcclxuICAgICAgJi5vcmRlcnMge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuXHJcblxyXG4gICAgICAgIC50b3RhbCB7XHJcbiAgICAgICAgICB0aCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246ICAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG5cclxuICAgICAgICAgICAgdGgge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZXhwZW5zZV9saXN0IHtcclxuICAgIC5saXN0IHtcclxuICAgICAgLnRvdGFsIHtcclxuXHJcbiAgICAgICAgdGgge1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgRVhQRU5DRVMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIFBST0RVQ1QgKi9cclxuXHJcbiNtYWluIHtcclxuICAucHJvZHVjdF9saXN0IHtcclxuICAgIGgyIHtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgfVxyXG5cclxuICAgIHRkLnByaWNlIHtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRhYmxlLmlzc3VlcyB0ZC5kZXNjcmlwdGlvbiwgdGFibGUuaXNzdWVzIHRkLmxhc3Rfbm90ZXMge1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgUFJPRFVDVCAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgQ09OVEFDVCAqL1xyXG5cclxuI2NvbnRhY3RfbGlzdCB7XHJcbiAgLnNwbGl0Y29udGVudGxlZnQsXHJcbiAgLnNwbGl0Y29udGVudHJpZ2h0IHtcclxuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLmNvbnRhY3QuY2FyZCB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIG1hcmdpbjogMCAwIDRweDtcclxuICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtYmcpO1xyXG5cclxuICAgIGgyIGF7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxNjtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICB9XHJcblxyXG4gICAgaDIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICBtYXJnaW46IDAgMCAxNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgIH1cclxuXHJcbiAgICAjYXZhdGFyIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogNjRweDtcclxuICAgICAgICBoZWlnaHQ6IDY0cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5pY29uLXBob25lLFxyXG4gIC5pY29uLWVtYWlse1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICBtaW4taGVpZ2h0OiAyMHB4O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6NTAlO1xyXG4gICAgICBsZWZ0OjA7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgbWFyZ2luOiAtMTJweCAwIDA7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaWNvbi10YWcge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnRhZ19saXN0IHtcclxuICAgIGNvbG9yOiB2YXIoLS1saWdodC1iZyk7XHJcbiAgfVxyXG59XHJcblxyXG4jc2V0dGluZ3NfZGVmYXVsdF90YXgge1xyXG4gIG1hcmdpbjogMCAxMHB4IDAgMDtcclxufVxyXG4jY29udGVudCAjdGF4X2RhdGEgcCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xyXG59XHJcbi8qIEVORCBDT05UQUNUICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiAgU1RBUlQgQUREIEZJTEUgKi9cclxuXHJcbiNpbnZvaWNlX3BheW1lbnRfZm9ybSxcclxuI29wZXJhdGlvbl9mb3JtLFxyXG4jcHJvZHVjdF9mb3JtLFxyXG4uZWRpdF9vcGVyYXRpb24sXHJcbiNleHBlbnNlX2Zvcm0sXHJcbiNhZGRfbm90ZV9mb3JtLFxyXG4jaW52b2ljZV9mb3JtLFxyXG4jb3JkZXJfZm9ybXtcclxuICBmaWVsZHNldCB7XHJcbiAgICBwYWRkaW5nOjUycHggMjBweCAxNXB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O2JveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBtYXJnaW46IDIwcHggMCAwO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuXHJcbiAgICBsZWdlbmQge1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjE3cHg7XHJcbiAgICAgIGxlZnQ6MjBweDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgfVxyXG5cclxuICAgICYgPiBwIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qICBFTkQgQUREIEZJTEUgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qICBTVEFSVCBBRE1JTiBQQUdFUyAqL1xyXG4uY29udHJvbGxlci1wZW9wbGVfc2V0dGluZ3Mge1xyXG4gICNzZXR0aW5nc193b3JrZGF5X2xlbmd0aCB7XHJcbiAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgfVxyXG59XHJcblxyXG4vKiAgRU5EIEFETUlOIFBBR0VTICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBDSEVDS0xJUyAqL1xyXG5cclxuLmNvbnRyb2xsZXItY2hlY2tsaXN0X3RlbXBsYXRlX2NhdGVnb3JpZXMge1xyXG4gICNjb250ZW50IHtcclxuICAgIC5ib3gge1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4jY29udGVudCB7XHJcbiAgI2NoZWNrbGlzdF9pdGVtcyB7XHJcbiAgICBsaS5jaGVja2xpc3Qtc2VjdGlvbiB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jaGVja2xpc3Qtc2VjdGlvbiB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgfVxyXG5cclxuICAjY2hlY2tsaXN0LW1lbnUge1xyXG4gICAgdWwge1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ib3gge1xyXG4gICAgLmNoZWNrbGlzdC1zdWJqZWN0IHtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjY2hlY2tsaXN0X2Zvcm0ge1xyXG4gICAgYnIge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNoZWNrbGlzdC1lZGl0LXNhdmUtYnV0dG9uIHtcclxuICAgIG1hcmdpbjogMCAwIDAgMTBweDtcclxuXHJcbiAgICAuaXRlbS1zYXZlIHtcclxuICAgICAgcGFkZGluZzogOHB4IDMwcHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpkaXNhYmxlZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctZGlzYWJsZWQpO1xyXG4gICAgICAgIGN1cnNvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItZGlzYWJsZWQpO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWRpc2FibGVkKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1kaXNhYmxlZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5jaGVja2xpc3QtZWRpdC1yZXNldC1idXR0b24ge1xyXG4gICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xyXG4gICAgcGFkZGluZzogOHB4IDMwcHg7XHJcbiAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmcpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvcik7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbi5jb250cm9sbGVyLWlzc3VlcyB7XHJcbiAgJi5hY3Rpb24tbmV3IHtcclxuICAgICNjb250ZXh0LW1lbnUuY2hlY2tsaXN0LW1lbnUge1xyXG4gICAgICBtYXJnaW46IDAgMCAwIC0xMjBweDtcclxuXHJcbiAgICAgIGxpLmZvbGRlciB7XHJcbiAgICAgICAgJiA+IHVsIHtcclxuICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgICByaWdodDogMTUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgQ0hFQ0tMSVMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIENSTSAqL1xyXG4jY29udGVudCAjc2V0dGluZ3NfZGVmYXVsdF90YXgge1xyXG4gIG1hcmdpbjogMCAxMHB4IDAgMDtcclxufVxyXG5cclxuLyogRU5EIENSTSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgUkVTT1VSQ0VTICovXHJcblxyXG4jc2V0dGluZ3NfZGVmYXVsdF90YXgge1xyXG4gIG1hcmdpbjogMCAxMHB4IDAgMDtcclxufVxyXG4vKiBTVEFSVCBSRVNPVVJDRVMgQURNSU4gUEFHRSovXHJcblxyXG5cclxuI2NvbnRlbnQge1xyXG4gIGZvcm1bYWN0aW9uKj1cInJlZG1pbmVfcmVzb3VyY2VzXCJdIHtcclxuICAgIC5ib3gge1xyXG4gICAgICBwIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNwZW9wbGVfc2V0dGluZ3Nfd29ya2RheV9sZW5ndGgsXHJcbiAgI3NldHRpbmdzX3dvcmtkYXlfbGVuZ3RoIHtcclxuICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vKiBFTkQgUkVTT1VSQ0VTIEFETUlOIFBBR0UgKi9cclxuLyogRU5EIFJFU09VUkNFUyAqL1xyXG5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIFJFUE9SVCAqL1xyXG5cclxuZmllbGRzZXQjcmVwb3J0X3RlbXBsYXRlX2NvbnRlbnQge1xyXG4gIHBhZGRpbmc6NTJweCAwIDE1cHg7XHJcbiAgbWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBib3JkZXI6IG5vbmU7XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDonJztcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBjbGVhcjpib3RoO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gIH1cclxuXHJcbiAgbGVnZW5kIHtcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgdG9wOjE3cHg7XHJcbiAgICBsZWZ0OjA7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgbWFyZ2luOjA7XHJcbiAgfVxyXG5cclxuICB0ZXh0YXJlYSB7XHJcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuI2VkaXRfY29udGVudCB7XHJcbiAgYSB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgcGFkZGluZzowO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgei1pbmRleDoyO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGZvbnQtc2l6ZTowcHg7XHJcbiAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIHotaW5kZXg6MTtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlLWJnKTtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2FjdGl2ZS1iZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI3dyYXBwZXIge1xyXG5cclxuICAuYm94IHtcclxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIH4gZGl2LmNvbG9yUGlja2VyLXBpY2tlciB7XHJcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuYm9keSB7XHJcbiAgZGl2LmNvbG9yUGlja2VyLXBhbGV0dGUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgfVxyXG5cclxuICBkaXYuY29sb3JQaWNrZXJfaGV4V3JhcCB7XHJcbiAgICBtYXJnaW46IDAgMnB4O1xyXG4gICAgcGFkZGluZzogNXB4IDA7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgd2lkdGg6IGNhbGMoficxMDAlIC0gNHB4Jyk7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgIGxhYmVsIHtcclxuICAgICAgbWFyZ2luOiAwIDVweCAwIDA7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0IHtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxNjtcclxuICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgIHBhZGRpbmc6IDNweCA4cHg7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8qIEVORCBSRVBPUlQgQURNSU4gUEFHRSAqL1xyXG5cclxuI25ldy1pc3N1ZS1yZXBvcnRzLWZvcm0ge1xyXG4gIC5vdGhlci1mb3JtYXRzIHtcclxuICAgIGNvbG9yOiB2YXIoLS1iZy1ib2R5KTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBwYWRkaW5nOiAwIDAgNXB4O1xyXG5cclxuICAgIHNwYW4ge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24ge1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIHBhZGRpbmc6MDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG5cclxuICAgICAgJjphZnRlcixcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgUkVQT1JUICovXHJcblxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgRkFWT1JJVEUgUFJPSkVDVCAqL1xyXG5cclxuI2NvbnRlbnQgI3NldHRpbmdzIHtcclxuICBmb3JtW2FjdGlvbio9XCJyZWRtaW5lX2Zhdm9yaXRlX3Byb2plY3RzXCJdIHtcclxuICAgIGZpZWxkc2V0LmJveCB7XHJcbiAgICAgIG1hcmdpbjogLTIwcHggMCAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAudGFidWxhciB7XHJcbiAgICAjZmF2b3JpdGVfcHJvamVjdHNfYm94IHtcclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IDAgMCAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgICBsaW5lLWhlaWdodDogQGZzMTI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vKiBTVEFSVCBGQVZPUklURSBQUk9KRUNUICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBJVk9DRSBBRE1JTiBQQUdFICovXHJcblxyXG4jY29udGVudCB7XHJcbiAgZmllbGRzZXQjaW52b2ljZV90ZW1wbGF0ZV9jb250ZW50IHtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIHBhZGRpbmc6IDUycHggMCAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIGxlZ2VuZCB7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MTdweDtcclxuICAgICAgbGVmdDowO1xyXG4gICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3RhYi1jb250ZW50LXJlY3VycmluZ19lbWFpbF90ZW1wbGF0ZXMge1xyXG4gICAgLmJveCB7XHJcbiAgICAgICYgPiBlbS5pbmZvIHAge1xyXG4gICAgICAgIG1hcmdpbjogMTVweCAwIDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBJVk9DRSBBRE1JTiBQQUdFICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBORVcgQ09OVEFDVCAtIE1PREFMICovXHJcblxyXG4ubW9kYWwge1xyXG4gICNhdHRhY2htZW50c19maWVsZHMge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAtOTk5OTk5cHg7XHJcbiAgICBsZWZ0OiAtOTk5OTlweDtcclxuICB9XHJcbiAgI25ld19jb250YWN0IHtcclxuICAgICNwaG9uZXNfZmllbGRzLFxyXG4gICAgI3BlcnNvbl9kYXRhLFxyXG4gICAgLmV4dGVuZGVkIC5hZGRyZXNzIHtcclxuICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICBwOm5vdCguYnV0dG9ucykge1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAxOTBweDtcclxuXHJcbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG4gICAgICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcclxuICAgICAgdGV4dGFyZWEge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGJyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTE4MHB4O1xyXG4gICAgICAgIHdpZHRoOiAxODBweDtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTBweCAwIDA7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBlbSB7XHJcbiAgICAgICAgbWFyZ2luOiA1cHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuZXh0ZW5kZWQge1xyXG4gICAgICAgICZbc3R5bGUqPVwibm9uZVwiXSArICNzaG93X2RldGFpbHNfbGluayB7XHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYjc2hvd19kZXRhaWxzX2xpbmsge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICBwYWRkaW5nOiAwIDAgMjBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMzBweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZyk7XHJcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yKTtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICAgIHRvcDogLTk5OTk5cHg7XHJcbiAgICAgICAgICBsZWZ0OiAtOTk5OTk5cHg7XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5ub3RlcyB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYWRkX2F0dGFjaG1lbnQge1xyXG4gICAgbWFyZ2luLXRvcDogMnB4ICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgcGFkZGluZzogNnB4IDEycHggNnB4IDM1cHg7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMThweDtcclxuICAgIGhlaWdodDogMzBweDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWdyZXktY29sb3IpO1xyXG4gICAgbWFyZ2luOjA7XHJcbiAgICBtaW4td2lkdGg6IDE5MHB4O1xyXG4gICAgb3V0bGluZTogMCBub25lO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG5cclxuICAgICY6YmVmb3JlLFxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrLWdyZXkpO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlucHV0W3R5cGU9XCJmaWxlXCJdIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5qc3RUYWJzLnRhYnMgdWwge1xyXG4gICAgYm9yZGVyLWJvdHRvbTowO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcbiAgLmpzdFRhYnMudGFicyBsaSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xyXG4gIH1cclxuICAuanN0VGFicy50YWJzIGxpOmJlZm9yZXtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICB9XHJcbiAgLmpzdFRhYnMudGFicyBsaSBhIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICBwYWRkaW5nOiA0cHggNnB4IDRweCA2cHg7XHJcbiAgICBmb250LXNpemU6IDAuOWVtO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XHJcbiAgICBsaW5lLWhlaWdodDoxOXB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgIGNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cclxuICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmctZmZmKTtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuanN0QmxvY2sgdGV4dGFyZWEsXHJcbiAgLmpzdEJsb2NrIC53aWtpLXByZXZpZXcge1xyXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4uYm94IHtcclxuICAuYXZhdGFyIHtcclxuICAgIGFbZGF0YS1tZXRob2Q9XCJkZWxldGVcIl0ge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5hdmF0YXIge1xyXG4gIGFbZGF0YS1tZXRob2Q9XCJkZWxldGVcIl0ge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IEBkZWw7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ucHJvamVjdF9jYXJkIHtcclxuICBhW2RhdGEtbWV0aG9kPVwiZGVsZXRlXCJdLFxyXG4gIGFbaHJlZio9XCIvZmF2b3JpdGVfcHJvamVjdHMvZmF2b3JpdGVcIl0ge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuYVtkYXRhLW1ldGhvZD1cImRlbGV0ZVwiXSxcclxuYVtocmVmKj1cIi9mYXZvcml0ZV9wcm9qZWN0cy9mYXZvcml0ZVwiXSB7XHJcbiAgYm9yZGVyOiBub25lO1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgcGFkZGluZzowO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgbWFyZ2luOjA7XHJcbiAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gIHotaW5kZXg6MjtcclxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgZm9udC1zaXplOjBweDtcclxuICBsaW5lLWhlaWdodDowcHg7XHJcbiAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBAZGVsO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICB0b3A6MHB4O1xyXG4gICAgbGVmdDowcHg7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgY2xlYXI6Ym90aDtcclxuICAgIGhlaWdodDoxMDAlO1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIG1hcmdpbjowO1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIHotaW5kZXg6MTtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gIH1cclxuICAmOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OicnO1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIGNsZWFyOmJvdGg7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIHRvcDowcHg7XHJcbiAgICBsZWZ0OjBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZyk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbWcge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gICZbaHJlZio9XCIvZmF2b3JpdGVfcHJvamVjdHMvdW5mYXZvcml0ZVwiXSB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogQGZhdm9yaXQ7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmFbaHJlZio9XCIvZmF2b3JpdGVfcHJvamVjdHMvZmF2b3JpdGVcIl0ge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogQGZhdm9yaXQ7XHJcbiAgfVxyXG59XHJcblxyXG5hLmljb24tZGVsW2RhdGEtbWV0aG9kPVwiZGVsZXRlXCJdIHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBkZWw7XHJcbiAgfVxyXG59XHJcblxyXG4ubGlzdCB7XHJcbiAgYVtkYXRhLW1ldGhvZD1cImRlbGV0ZVwiXSxcclxuICBhW2hyZWYqPVwiL2Zhdm9yaXRlX3Byb2plY3RzL2Zhdm9yaXRlXCJdIHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuI21haW4ge1xyXG4gIC5pY29uLW9wZXJhdGlvbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgbGluZS1oZWlnaHQ6IDI2cHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICYgPiAqIHtcclxuICAgICAgbGluZS1oZWlnaHQ6IEBmczE2O1xyXG4gICAgfVxyXG5cclxuICAgIGFbaHJlZio9XCIvb3BlcmF0aW9ucy9cIl0ge1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgcGFkZGluZzogMCAwIDAgMzBweDtcclxuICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICAgIGNvbnRlbnQ6IEBmaW5hbmNlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6NTAlO1xyXG4gICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgbWFyZ2luOi0xM3B4IDAgMDtcclxuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDo1MCU7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIG1hcmdpbjotMTNweCAwIDA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNwbGl0Y29udGVudCB7XHJcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICB9XHJcbn1cclxuXHJcbiNuZXctb3BlcmF0aW9uLWludm9pY2UtZm9ybSxcclxuI25ldy1yZWxhdGlvbi1mb3JtIHtcclxuICBwIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgbWFyZ2luOiAwIDEwcHggMCAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAhaW1wb3J0YW50Oy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCkgIWltcG9ydGFudDtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgJiArIGEge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZyk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvcik7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAhaW1wb3J0YW50Oy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCkgIWltcG9ydGFudDtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIE5FVyBDT05UQUNUIC0gTU9EQUwgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIFNFVFRJTkdTIFBST0pFQ1QgKi9cclxuXHJcbi8qIFNUQVJUIENPTlRBQ1RTICovXHJcblxyXG4jdGFiLWNvbnRlbnQtY29udGFjdHMge1xyXG4gIC50YWJ1bGFyIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgLnRhYnVsYXIge1xyXG4gICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI21haW4gI2NvbnRlbnQgLnRhYi1jb250ZW50IHtcclxuICAmI3RhYi1jb250ZW50LWFnaWxlX3NwcmludHMge1xyXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgIGgzIHtcclxuICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLmF1dG9zY3JvbGwge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgQ09OVEFDVFMgKi9cclxuXHJcbi8qIFNUQVJUIERFQUxTICovXHJcblxyXG4jdGFiLWNvbnRlbnQtZGVhbHMge1xyXG4gIC50YWJ1bGFyIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG5cclxuICAubGlzdCB7XHJcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gIH1cclxuXHJcbiAgYVtocmVmKj0nZGVhbF9jYXRlZ29yaWVzL25ldyddIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHBhZGRpbmc6IDhweCAzMHB4O1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tYnV0dG9uLWZvbnQtd2VpZ2h0KTtcclxuICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItaG92ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgICY6ZGlzYWJsZWQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1kaXNhYmxlZCk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1kaXNhYmxlZCk7XHJcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWRpc2FibGVkKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItZGlzYWJsZWQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgREVBTFMgKi9cclxuXHJcbi8qIFNUQVJUIEhFTFAgREVTSyAqL1xyXG5cclxuI21haW4gI2NvbnRlbnQgLnRhYi1jb250ZW50IHtcclxuICYjdGFiLWNvbnRlbnQtcXVlc3Rpb25zIHtcclxuICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG4gICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICBoMyB7XHJcbiAgICAgb3JkZXI6IDE7XHJcbiAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgIH1cclxuXHJcbiAgIC5hdXRvc2Nyb2xsIHtcclxuICAgICBvcmRlcjogMztcclxuICAgICB3aWR0aDogMTAwJTtcclxuICAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgfVxyXG5cclxuICAgJiA+IGEge1xyXG4gICAgIG9yZGVyOiAyO1xyXG4gICAgIGZsb2F0OiByaWdodDtcclxuICAgICBvcGFjaXR5OiAxO1xyXG4gICB9XHJcbiB9XHJcbn1cclxuXHJcbiN0YWItY29udGVudC1oZWxwZGVzayB7XHJcbiAgI2hlbHBkZXNrX3NldHRpbmdzIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG5cclxuICAuYm94IHtcclxuICAgICY6bnRoLW9mLXR5cGUoMSl7XHJcbiAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNoZWxwZGVza19zbXRwX3Bhc3N3b3JkX2ZpZWxkIHtcclxuICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gIH1cclxufVxyXG5cclxuI3RhYi1jb250ZW50LWhlbHBkZXNrX3RlbXBsYXRlIHtcclxuICAjaGVscGRlc2tfdGVtcGxhdGUge1xyXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgIC5ib3gge1xyXG4gICAgICBwYWRkaW5nOiA1MnB4IDIwcHggMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5pbmZvIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiNtYWluICNjb250ZW50IC50YWItY29udGVudCB7XHJcbiAgJiN0YWItY29udGVudC1oZWxwZGVza19jYW5uZWRfcmVzcG9uc2VzLFxyXG4gICYjdGFiLWNvbnRlbnQtY2hlY2tsaXN0X3RlbXBsYXRlLFxyXG4gICYjdGFiLWNvbnRlbnQtaW52b2ljZV90ZW1wbGF0ZXMsXHJcbiAgJiN0YWItY29udGVudC1kbXNmX3dvcmtmbG93IHtcclxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAuc3BsaXRjb250ZW50IHtcclxuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICB9XHJcblxyXG4gICAgLmF1dG9zY3JvbGwge1xyXG4gICAgICBvcmRlcjogMjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIC5ub2RhdGEge1xyXG4gICAgICBvcmRlcjogMjtcclxuICAgIH1cclxuXHJcbiAgICAmID4gcCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgICAgb3JkZXI6IDE7XHJcbiAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYjdGFiLWNvbnRlbnQtaW52b2ljZV90ZW1wbGF0ZXMge1xyXG4gICAgaDIge1xyXG4gICAgICBvcmRlcjogMTtcclxuICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICB9XHJcbiAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgIG9yZGVyOiAyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIEhFTFAgREVTSyAqL1xyXG5cclxuLyogU1RBUlQgUkVQT1JUIFRFTVBMQVRFICovXHJcblxyXG4jdGFiLWNvbnRlbnQtcmVwb3J0X3RlbXBsYXRlcyB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWZsb3c6IGNvbHVtbjtcclxuXHJcbiAgaDMge1xyXG4gICAgb3JkZXI6IDE7XHJcbiAgICBtYXJnaW46IDAgMCAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAuY29udGV4dHVhbCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gIH1cclxuXHJcbiAgLmxpc3QsXHJcbiAgLmF1dG9zY3JvbGwge1xyXG4gICAgb3JkZXI6IDM7XHJcbiAgfVxyXG5cclxuICAubm9kYXRhIHtcclxuICAgIG9yZGVyOiAzO1xyXG4gIH1cclxufVxyXG5cclxuI25ld19jYW5uZWRfcmVzcG9uc2Uge1xyXG4gIC5pbmZvIHtcclxuICAgIG1hcmdpbjogMTBweCAwIDAgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBSRVBPUlQgVEVNUExBVEUgKi9cclxuXHJcbi8qIFNUQVJUIElOVk9JQ0VTICovXHJcblxyXG4jdGFiLWNvbnRlbnQtaW52b2ljZXMge1xyXG4gIC50YWJ1bGFyIHtcclxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuXHJcbiAgICBmaWVsZHNldCB7XHJcbiAgICAgIHBhZGRpbmc6IDUycHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jcHJvamVjdHNfbGlzdCArIHAgLm15LXByb2plY3R7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHBhZGRpbmc6IDAgMCAwIDI1cHg7XHJcbiAgZm9udC1zaXplOiBAZnMxMjtcclxuICBsaW5lLWhlaWdodDogQGZzMjA7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IEBmYXZvcml0O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICB0b3A6MHB4O1xyXG4gICAgbGVmdDowcHg7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgY2xlYXI6Ym90aDtcclxuICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgIHotaW5kZXg6MTtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplLXNtYWxsKTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICB9XHJcbn1cclxuLyogRU5EIElOVk9JQ0VTICovXHJcblxyXG4vKiBFTkQgU0VUVElOR1MgUFJPSkVDVCAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgRURJVCBOT1RFUyAqL1xyXG5cclxuLmNvbnRyb2xsZXItbm90ZXMge1xyXG4gICNtYWluIHtcclxuICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGgyLm5vdGVfdGl0bGUge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgICByaWdodDogMzBweDtcclxuXHJcbiAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZyk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmF0dGFjaG1lbnRzIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgIC5pY29uLFxyXG4gICAgICAgIC5pY29uLW9ubHkge1xyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ub3RlX2RhdGFfaGVhZGVyIHtcclxuICAgIHBhZGRpbmc6MCAwIDIwcHg7XHJcbiAgfVxyXG5cclxuICAuZWRpdF9ub3RlIHtcclxuICAgIHRhYmxlIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcblxyXG4gICAgICB0ciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgbGFiZWwge1xyXG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNub3RlX2NyZWF0ZWRfb24ge1xyXG4gICAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgICB9XHJcblxyXG4gICAgZmllbGRzZXQge1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHBhZGRpbmc6MzdweCAyMHB4IDVweDtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjE3cHg7XHJcbiAgICAgICAgbGVmdDoyMHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgRURJVCBOT1RFUyAqL1xyXG5cclxuLmNvbnRyb2xsZXItcmVwb3J0cyB7XHJcbiAgJi5hY3Rpb24taXNzdWVfcmVwb3J0X2RldGFpbHMge1xyXG4gICAgLmxpc3QuaXNzdWUtcmVwb3J0IHtcclxuICAgICAgbWFyZ2luOiAwIDAgMjBweCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgJiB+IGEge1xyXG4gICAgICAgIHBhZGRpbmc6IDhweCAzMHB4O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnKTtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNjb250ZW50ID4gI2NvbnRhY3RzX25vdGVzIHtcclxuICBtYXJnaW46IDAgMCAyNXB4O1xyXG5cclxuICAubm90ZV9kYXRhIHtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgcGFkZGluZzogNXB4IDA7XHJcblxyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCA1cHg7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgIH1cclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBwYWRkaW5nOiA1cHggMCAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIFJFRE1JTkVVUCBQTEFHSU5TICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBTSURFQkFSICovXHJcblxyXG4jc2lkZWJhciB7XHJcbiAgI2N1c3RvbWVyX3ByZXZpb3VzX2lzc3VlcyB7XHJcbiAgICB1bCB7XHJcbiAgICAgIGxpIHtcclxuICAgICAgICAudGlja2V0LW1ldGEge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdGFibGUubm90ZV9kYXRhIGEuZGVsZXRlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICBhW2RhdGEtbWV0aG9kPVwiZGVsZXRlXCJdLFxyXG4gIGFbaHJlZio9XCIvZmF2b3JpdGVfcHJvamVjdHMvZmF2b3JpdGVcIl0ge1xyXG4gICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgI2NvbnRhY3RfaXNzdWVzIHtcclxuXHJcbiAgICB0YWJsZSB7XHJcbiAgICAgIC5kb25lX2NoZWNrYm94IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIC50YWdfbGlzdCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGZvbnQtc2l6ZTogMDtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gICAgLnRhZy1sYWJlbC1jb2xvciB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgICBtaW4taGVpZ2h0OiBhdXRvO1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6ZW1wdHkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdGFibGUubm90ZV9kYXRhIHtcclxuICAgIC5jb250ZW50LnByZXZpZXcge1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNpc3N1ZV9jb250YWN0cyB7XHJcbiAgICBhIHtcclxuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgdWwge1xyXG4gICAgICBsaSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbjogNXB4IDAgMDtcclxuICAgICAgICBwYWRkaW5nOiAwIDQwcHggMCAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYS5kZWxldGUge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpbWcuZ3JhdmF0YXIge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICBzcGFuLmNvbnRhY3Qge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIG1hcmdpbjogMCA1cHggMCAwO1xyXG4gICAgICBwYWRkaW5nOjAgMCAwIDI2cHg7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBTSURFQkFSICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBGSUZBTkNFICovXHJcbiNtYWluICNjb250ZW50IC50YWItY29udGVudCB7XHJcbiAgJiN0YWItY29udGVudC1maW5hbmNlIHtcclxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICB9XHJcbn1cclxuXHJcbiN0YWItY29udGVudC1maW5hbmNlIHtcclxuXHJcbiAgaDMge1xyXG4gICAgb3JkZXI6IDE7XHJcbiAgICBmbGV4OiAxIDAgYXV0bztcclxuICB9XHJcbiAgLmF1dG9zY3JvbGwge1xyXG4gICAgb3JkZXI6IDM7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gIH1cclxuXHJcbiAgcCB7XHJcbiAgICBvcmRlcjogMjtcclxuXHJcbiAgICAmLm5vZGF0YSB7XHJcbiAgICAgIG9yZGVyOiAzO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhW2hyZWYqPVwiaWNvbi1hZGRcIl0ge1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIHBhZGRpbmc6MDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgbWFyZ2luOjA7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6MjtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBmb250LXNpemU6MHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6MHB4O1xyXG4gICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIG1pbi13aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IEBuZXctb2JqZWN0O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgRklGQU5DRSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTUVOVSBGT1IgTU9CSUxFICovXHJcblxyXG4jd3JhcHBlciB7XHJcbiAgLmZseW91dC1tZW51IHtcclxuXHJcbiAgICAjYWNjb3VudHNfc3RhdCxcclxuICAgICNkaXNhcHByb3ZlZF9vcGVyYXRpb25ze1xyXG4gICAgICAuYWNjb3VudHMtc3RhdCB7XHJcbiAgICAgICAgdGgge1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmctZmZmKTtcclxuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zdW0ge1xyXG4gICAgICAgICAgcGFkZGluZzogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2plY3QtbWVtYmVycyB7XHJcbiAgICAgIC5hc3NpZ25hYmxlLXVzZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggMzZweDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmctZmZmKTtcclxuXHJcbiAgICAgICAgYnIge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTBweCAzNnB4O1xyXG4gICAgICAgICAgbWFyZ2luOiAtMTBweCAtMTBweCAtMTBweCAtMzZweDtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDQ2cHgnKTtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ncmF2YXRhciB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgIGxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICB3aWR0aDogMTZweDtcclxuICAgICAgICAgIGhlaWdodDogMTZweDtcclxuICAgICAgICAgIG1hcmdpbjogLThweCAwIDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm9yZGVycy1zdGF0IHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuXHJcbiAgICAgIHRoIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICB9XHJcbiAgICAgIHRkIHtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmctZmZmKTtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTBweCAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuZGVsaW1pdGVyIHtcclxuICAgICAgICBociB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNpbXBvcnRfbGluayB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmctZmZmKTtcclxuICAgIH1cclxuXHJcbiAgICB0YWJsZS5hY2NvdW50cy1zdGF0IHtcclxuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICB0aCB7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAxMHB4O1xyXG4gICAgICB9XHJcbiAgICAgIHRkIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTBweCAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmludm9pY2VzLXN0YXQge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xyXG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG5cclxuICAgICAgdHIge1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgfVxyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDA7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuZGVsaW1pdGVyIHtcclxuICAgICAgICBociB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgc3Bhbi50YWctbGFiZWwtY29sb3Ige1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgYnIge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGFibGUubm90ZV9kYXRhIGEuZGVsZXRlIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICAjYWNjb3VudHNfc3RhdCxcclxuICAgICNkZWFsX2NvbnRhY3RzLFxyXG4gICAgI2NvbnRhY3RfaXNzdWVzIHtcclxuICAgICAgLmNvbnRleHR1YWwge1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgcGFkZGluZzowO1xyXG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICBtYXJnaW46NXB4IDVweCAwIDA7XHJcbiAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICAgIHotaW5kZXg6MjtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBmb250LXNpemU6MHB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6MHB4O1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgIG1pbi13aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IEBuZXctb2JqZWN0O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2RlYWxfY29udGFjdHMge1xyXG4gICAgICB0YWJsZS5ub3RlX2RhdGEge1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iZy1mZmYpO1xyXG5cclxuICAgICAgICB0ZC5hdmF0YXIge1xyXG4gICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcclxuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0ZC5uYW1lIHtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XHJcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgLmNvbnRhY3RzX2hlYWRlciB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI3Jlc3BvbnNpYmxlX3VzZXIge1xyXG4gICAgICB1bCB7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAuZ3JhdmF0YXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBsZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTZweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IC04cHggMCAwO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDM2cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2NvbnRhY3RfaXNzdWVzLFxyXG4gICAgI2NvbnRhY3RfcHJvamVjdHMge1xyXG4gICAgICBmb3Jte1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodC1iZyk7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgICAgICAmW3N0eWxlKj1cIm5vbmVcIl0ge1xyXG4gICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgICAgdG9wOiAtOTk5OTk5OXB4O1xyXG4gICAgICAgICAgcmlnaHQ6IC05OTk5OTk5cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzZWxlY3Qge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcclxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xyXG4gICAgICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxODtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yKTtcclxuICAgICAgICAgIG1hcmdpbjowIDAgMTBweDtcclxuICAgICAgICAgIG1pbi13aWR0aDogMTkwcHg7XHJcbiAgICAgICAgICBvdXRsaW5lOiAwIG5vbmU7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgIGZsZXg6IDEgMCAwO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMzBweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnKTtcclxuICAgICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpkaXNhYmxlZCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWRpc2FibGVkKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWRpc2FibGVkKTtcclxuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctZGlzYWJsZWQpO1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1kaXNhYmxlZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmICsgYSxcclxuICAgICAgICAgICYgKyBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3IpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmcpO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyLFxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyKTtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNjb250YWN0X3Byb2plY3Qge1xyXG4gICAgICBsaSB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2F0dHJpYnV0ZXMge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJiAgPiBkaXYge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5wZXJzb24ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuY29udGFjdCB7XHJcbiAgICAgICAgbWFyZ2luOiA4cHggMTBweDtcclxuICAgICAgICB3aWR0aDogMjI5cHg7XHJcbiAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcclxuXHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgcGFkZGluZzogMnB4IDA7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2FkZF9pc3N1ZSB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAjYWRkX2lzc3VlX2Zvcm0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG5cclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNlbGVjdDIgfiAqLFxyXG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIH4gKixcclxuICAgICAgICAuamNmLXNlbGVjdCB+ICosXHJcbiAgICAgICAgdGV4dGFyZWEgfiAqIHtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBociB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5yZWNlbnQtcHJvZHVjdHMge1xyXG4gICAgICAucHJvZHVjdCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iZy1mZmYpO1xyXG5cclxuICAgICAgICAuaW1hZ2Uge1xyXG4gICAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZGF0YSB7XHJcbiAgICAgICAgICBwYWRkaW5nOiA1cHggNXB4IDVweCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLm9yZGVyIHtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmctZmZmKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgYVtocmVmKj1cInZjZlwiXXtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIG1hcmdpbjo1cHggNXB4IDAgMDtcclxuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OjI7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTowcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6MHB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIG1pbi13aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDogQHZjZjtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjY29udGFjdF9pc3N1ZXMge1xyXG4gICAgICB0YWJsZSB7XHJcbiAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcclxuICAgICAgICBib3JkZXItc3BhY2luZzogMDtcclxuXHJcbiAgICAgICAgdHIge1xyXG4gICAgICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgbWluLXdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgICAmOmVtcHR5IHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLmRvbmVfY2hlY2tib3gge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICYuaXNzdWVfaXRlbV9zdWJqZWN0IHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMzBweCAxMHB4IDEwcHg7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogLTdweCAwIDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGFncyB7XHJcbiAgICAgIC50YWctbGFiZWwtY29sb3Ige1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgcGFkZGluZzogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IEBnZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI3RhZ3Mge1xyXG4gICAgICAudGFnX2xpc3Qge1xyXG4gICAgICAgIC50YWctbGFiZWwtY29sb3Ige1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGFnLWxhYmVsIHtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLnRhZy1jb3VudCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogLThweCAwIDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAjbm90ZXMge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgdGFibGUubm90ZV9kYXRhIHtcclxuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG5cclxuICAgICAgICBhYmJyLFxyXG4gICAgICAgIHNwYW4uZmllbGQtZGVzY3JpcHRpb25bdGl0bGVdIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHIge1xyXG4gICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRkLm5hbWUge1xyXG4gICAgICAgICAgaDQge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgJiA+ICoge1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBhW2hyZWYqPVwibm90ZXNcIl0ge1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgICAgICBtYXJnaW46IC0xNXB4IDAgMDtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XHJcblxyXG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogQGZhdjtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1iZy1mZmYpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5xdWVzdGlvbnMtdGFncyB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogNTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvdW50IHtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBmczExO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IEBmczEyO1xyXG4gICAgICAgICAgcGFkZGluZzogMnB4IDVweDtcclxuICAgICAgICAgIG1hcmdpbjogLTEwcHggMCAwO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjdGFncyB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuXHJcbiAgICAudGFnX2xpc3Qge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG5cclxuICAgICAgLnRhZy1sYWJlbC1jb2xvciB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICBmb250LXNpemU6IEBmczEwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxMDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDVweCAwO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcblxyXG4gICAgICB9XHJcblxyXG4gICAgICAudGFnLWNvdW50IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZnMxMTtcclxuICAgICAgICBsaW5lLWhlaWdodDogQGZzMTI7XHJcbiAgICAgICAgcGFkZGluZzogMnB4IDVweDtcclxuICAgICAgICBtYXJnaW46IC0xMHB4IDAgMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucXVlc3Rpb24tbWV0YSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgbGkuaWNvbjpub3QoLnRhZ3MpIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAudGFncyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuXHJcbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjcmVjZW50bHlfdmlld2VkIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgIC5ub3RlX2RhdGEge1xyXG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJnLWZmZik7XHJcblxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHIge1xyXG4gICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubmFtZSB7XHJcbiAgICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjaW1wb3J0X2xpbmsge1xyXG4gICAgICBhIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZGl2LmNvbnRhY3Qge1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnRhZ19saXN0IHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tZmx5b3V0X21lbnVfY29sb3IpO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1mbHlvdXRfbWVudV9jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tZGVsIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIG1pbi13aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgbWluLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICBjb2xvcjogdmFyKC0tYmctZmZmKTtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgY29udGVudDogQGRlbDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMHB4O1xyXG4gICAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjY3VzdG9tZXJfcHJvZmlsZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0LWJnKTtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcblxyXG4gICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgIG1hcmdpbjo1cHggNXB4IDAgMDtcclxuICAgICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgICAgei1pbmRleDoyO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTowcHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZmx5b3V0X21lbnVfY29sb3IpO1xyXG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgIG1pbi13aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IEBuZXctb2JqZWN0O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZmx5b3V0X21lbnVfY29sb3IpO1xyXG4gICAgICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgZm9ybSN0aWNrZXRfZGF0YV9mb3JtIHtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuXHJcbiAgICAgICAgLmNvbnRleHR1YWwge1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBtYXJnaW46IDEwcHggMCA1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBiciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc2VsZWN0LFxyXG4gICAgICAgIC5qY2Ytc2VsZWN0IHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgICAgcGFkZGluZzogNnB4IDEycHg7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgICBsaW5lLWhlaWdodDogQGZzMTg7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgIG91dGxpbmU6IDAgbm9uZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuXHJcbiAgICAgICAgJiB+IGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICAgIG1hcmdpbjogMTBweCAwIDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgIHBhZGRpbmc6IDhweCAzMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIG1hcmdpbjogMTBweCAwIDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWhvdmVyKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmRpc2FibGVkIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWRpc2FibGVkKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1kaXNhYmxlZCk7XHJcbiAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWRpc2FibGVkKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWRpc2FibGVkKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgKyBhLFxyXG4gICAgICAgICYgKyBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgIHBhZGRpbmc6IDhweCAxNXB4O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBtYXJnaW46IDEwcHggMCAwO1xyXG4gICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tYnV0dG9uLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3IpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgI2hlbHBkZXNrX3RpY2tldF9mcm9tX2FkZHJlc3NfYWRkX2xpbmsge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAgOHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzowO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6MjtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgZm9udC1zaXplOjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgY29udGVudDogQG5ldy1vYmplY3Q7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uX2NvbG9yX2FjdGl2ZS1iZyk7XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2FjdGl2ZS1iZyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmRpc2FibGVkIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDAuMztcclxuXHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItZGlzYWJsZWQpO1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctZGlzYWJsZWQpO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjY3VzdG9tZXJfcHJldmlvdXNfaXNzdWVzIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG5cclxuICAgICAgdWwge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICY6ZW1wdHkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgICAgICAgIC50aWNrZXQtbWV0YSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG4gICAgICAgICAgICBtYXJnaW46IDVweCAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC50aWNrZXQtdGl0bGUge1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmctZmZmKTtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDVweCAtMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjaXNzdWVfY29udGFjdHMge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCk7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgIHBhZGRpbmc6MDtcclxuICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgbWFyZ2luOjVweCA1cHggMCAwO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICB6LWluZGV4OjI7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgZm9udC1zaXplOjBweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OjBweDtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgICBtaW4td2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBAbmV3LW9iamVjdDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgdWwge1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDM1cHggNXB4IDEwcHg7XHJcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmctZmZmKTtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICByaWdodDogMzVweDtcclxuICAgICAgICAgICAgd2lkdGg6IDFweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5pY29uLWRlbCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHJpZ2h0OiA1cHg7XHJcbiAgICAgICAgbWFyZ2luOiAtMTNweCAwIDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHNwYW4uY29udGFjdCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMTBweCcpO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDVweCAtMTBweDtcclxuXHJcbiAgICAgICAgYSB7XHJcblxyXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNsaW5rcyxcclxuICAgICNjaGFydHMge1xyXG4gICAgICBhIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjbmV4dF9ob2xpZGF5cyB7XHJcbiAgICAgIHRkIHtcclxuICAgICAgICBwYWRkaW5nOjVweCAxMHB4O1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuXHJcbi8qIEVORCBNRU5VIEZPUiBNT0JJTEUgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIFJFUE9SVCAqL1xyXG5cclxuLmNvbnRyb2xsZXItcmVwb3J0cyB7XHJcbiAgI21haW4gI2NvbnRlbnQge1xyXG4gICAgJiA+IGFbaHJlZio9XCJyZXBvcnRcIl06bm90KC5pY29uLW9ubHkpIHtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICBwYWRkaW5nOiA4cHggMzBweDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tYnV0dG9uLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNjb250ZW50IHtcclxuICAuaXNzdWUtcmVwb3J0LWdyYXBoIHtcclxuICAgIG1pbi13aWR0aDogIDYwMHB4O1xyXG4gICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbn1cclxuLyogU1RBUlQgUkVQT1JUICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBNUkRJQSAqL1xyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTI1MHB4KSB7XHJcbiAgI2ludm9pY2VfZm9ybSB7XHJcbiAgICBmaWVsZHNldC5hdHRyaWJ1dGVzIHtcclxuICAgICAgb3ZlcmZsb3cteDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG5cclxuICAuY29udHJvbGxlci12ZXJzaW9ucy5hY3Rpb24taW5kZXggI21haW4gPiAjY29udGVudCBoMzpiZWZvcmUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgLmNvbnRyb2xsZXItbm90ZXMgI21haW4gPiAjY29udGVudCAuY29udGV4dHVhbCAuaWNvbntcclxuICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5jb250cm9sbGVyLW5vdGVzIHtcclxuICAgICNtYWluIHtcclxuICAgICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLXBlb3BsZSxcclxuICAuY29udHJvbGxlci1xdWVzdGlvbnMsXHJcbiAgLmNvbnRyb2xsZXItb3JkZXJzLFxyXG4gIC5jb250cm9sbGVyLXByb2R1Y3RzLFxyXG4gIC5jb250cm9sbGVyLW9wZXJhdGlvbnMsXHJcbiAgLmNvbnRyb2xsZXItZGVhbHMsXHJcbiAgLmNvbnRyb2xsZXItY29udGFjdHMsXHJcbiAgLmNvbnRyb2xsZXItaW52b2ljZXMge1xyXG4gICAgJi5hY3Rpb24tc2hvdy5sb2dnZWRhcyB7XHJcblxyXG4gICAgICAjd3JhcHBlciB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQ4cHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICN3cmFwcGVyMyB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAjbWFpbiB7XHJcbiAgICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjbWFpbiB7XHJcbiAgICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgICAgJiA+IC5jb250ZXh0dWFsIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogIGxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogIGxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDVweDtcclxuXHJcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZyk7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgJi5uZXctaWNvbi1zYXZlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLXNhdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbi1zYXZlLWJnKTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tc2F2ZS1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb24tc2F2ZS1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAmLm5ldy1pY29uLWNsb3NlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNsb3NlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb24tY2xvc2UtYmcpO1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jbG9zZS1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb24tY2xvc2UtYmctaG92ZXIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5oaWRkZW4tbGluayB7XHJcbiAgICAgICAgICAgICAgLmljb246bm90KC5uZXctaWNvbikge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5kcmRuIHtcclxuICAgICAgICAgICAgICAuZHJkbi10cmlnZ2VyIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAuZHJkbi1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgICAgIC5kcmRuLWl0ZW1zIHtcclxuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuZmx5b3V0LWlzLWFjdGl2ZSB7XHJcbiAgICAgICAgI21haW4ge1xyXG5cclxuICAgICAgICAgICNjb250ZW50IHtcclxuICAgICAgICAgICAgJiA+IC5jb250ZXh0dWFsIHtcclxuICAgICAgICAgICAgICBsZWZ0OiAtMjUwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5mbHlvdXQtaXMtYWN0aXZlIHtcclxuICAgIC5jb250cm9sbGVyLXBlb3BsZSxcclxuICAgIC5jb250cm9sbGVyLXF1ZXN0aW9ucyxcclxuICAgIC5jb250cm9sbGVyLW9yZGVycyxcclxuICAgIC5jb250cm9sbGVyLXByb2R1Y3RzLFxyXG4gICAgLmNvbnRyb2xsZXItb3BlcmF0aW9ucyxcclxuICAgIC5jb250cm9sbGVyLWRlYWxzLFxyXG4gICAgLmNvbnRyb2xsZXItY29udGFjdHMsXHJcbiAgICAuY29udHJvbGxlci1pbnZvaWNlc3tcclxuICAgICAgJi5hY3Rpb24tc2hvdyB7XHJcbiAgICAgICAgI21haW4gI2NvbnRlbnQgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgICBsZWZ0OiAtMjUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuY29udHJvbGxlci1xdWVzdGlvbnMge1xyXG4gICAgICAmLmFjdGlvbi1zaG93IHtcclxuICAgICAgICAudG9wLXF1ZXN0aW9ucyB7XHJcbiAgICAgICAgICAucmlnaHQtcXVlc3Rpb25zIHtcclxuICAgICAgICAgICAgbGVmdDogLTI1MHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItcXVlc3Rpb25zIHtcclxuICAgICYuYWN0aW9uLXNob3cge1xyXG4gICAgICAudG9wLXF1ZXN0aW9ucyB7XHJcbiAgICAgICAgLnJpZ2h0LXF1ZXN0aW9ucyB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246ICBsZWZ0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogIGxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xyXG5cclxuICAgICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmRyZG4ge1xyXG4gICAgICAgICAgICAgIC5kcmRuLXRyaWdnZXIge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIC5kcmRuLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgICAgICAgLmRyZG4taXRlbXMge1xyXG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2ludm9pY2VfcGF5bWVudF9mb3JtLFxyXG4gICNvcGVyYXRpb25fZm9ybSxcclxuICAjcHJvZHVjdF9mb3JtLFxyXG4gIC5lZGl0X29wZXJhdGlvbixcclxuICAjZXhwZW5zZV9mb3JtLFxyXG4gICNhZGRfbm90ZV9mb3JtLFxyXG4gICNpbnZvaWNlX2Zvcm0sXHJcbiAgI29yZGVyX2Zvcm0gIHtcclxuICAgIGZpZWxkc2V0IHtcclxuICAgICAgcGFkZGluZzogMzdweCAxMHB4IDE1cHg7XHJcblxyXG4gICAgICBsZWdlbmQge1xyXG4gICAgICAgIHRvcDogMTRweDtcclxuICAgICAgICBsZWZ0OiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29udHJvbGxlci1ub3RlcyB7XHJcbiAgICAuZWRpdF9ub3RlIHtcclxuICAgICAgZmllbGRzZXQge1xyXG4gICAgICAgIHBhZGRpbmc6IDM3cHggMTBweCAyMHB4O1xyXG5cclxuICAgICAgICBsZWdlbmQge1xyXG4gICAgICAgICAgdG9wOiAxMHB4O1xyXG4gICAgICAgICAgbGVmdDogMTBweDtcclxuXHJcbiAgICAgICAgICAmICsgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNxdWVyeV9mb3JtIHtcclxuICAgIHBbc3R5bGU9XCJmbG9hdDpyaWdodDtcIl0ge1xyXG4gICAgICBhIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMCA1cHg7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYXZhdGFyIHtcclxuXHJcbiAgICBhW2RhdGEtbWV0aG9kPVwiZGVsZXRlXCJdIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgIGFbaHJlZio9XCJxdWVzdGlvbnNfc2VjdGlvbnMvbmV3XCJdIHtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbWFpbiB7XHJcbiAgICAjY29udGFjdF9saXN0LmRlYWxfbGlzdCB7XHJcbiAgICAgIC5saXN0LnNhbGVzLWZ1bm5lbCB7XHJcbiAgICAgICAgLnRvdGFsIHtcclxuICAgICAgICAgIHRoIHtcclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCxcclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICNjb250YWN0X2xpc3QuZGVhbF9saXN0IHtcclxuICAgICAgLmxpc3Qge1xyXG4gICAgICAgICYuZGVhbC1ib2FyZCB7XHJcblxyXG4gICAgICAgICAgdGgge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IEBmczE2O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogQGZzMTY7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubW9kYWwge1xyXG4gICAgI25ld19jb250YWN0IHtcclxuICAgICAgcDpub3QoLmJ1dHRvbnMpIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcblxyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgdGFibGUuc3ViamVjdF9oZWFkZXIgdGQuYXZhdGFyIHtcclxuICAgIHdpZHRoOiA1MHB4O1xyXG4gIH1cclxuICAjY29udGFjdF9saXN0IC5jb250YWN0LmNhcmQgI2F2YXRhciB7XHJcbiAgICB3aWR0aDogNDBweDtcclxuICAgIGhlaWdodDogNDBweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjYWNjb3VudF9mb3JtIGZpZWxkc2V0IHtcclxuICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcblxyXG4gICAgbGVnZW5kIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xyXG4gICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3RhYi1jb250ZW50LWludm9pY2VzIC50YWJ1bGFyIGZpZWxkc2V0IHtcclxuICAgIHBhZGRpbmctdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAuY29udHJvbGxlci1yZXBvcnRzIHtcclxuICAgICNjb250ZW50IHtcclxuICAgICAgJiA+IGFbaHJlZio9XCJyZXBvcnRcIl06bm90KC5pY29uLW9ubHkpIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2NoZWNrbGlzdC1tZW51IHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gICN0YWItY29udGVudC1kZWFscyB7XHJcbiAgICBhW2hyZWYqPSdkZWFsX2NhdGVnb3JpZXMvbmV3J10ge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDAgO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2ludm9pY2VfcGF5bWVudF9mb3JtICxcclxuICAjb3BlcmF0aW9uX2Zvcm0gLFxyXG4gICNwcm9kdWN0X2Zvcm0gLFxyXG4gIC5lZGl0X29wZXJhdGlvbiAsXHJcbiAgI2V4cGVuc2VfZm9ybSAsXHJcbiAgI2FkZF9ub3RlX2Zvcm0gLFxyXG4gICNpbnZvaWNlX2Zvcm0gLFxyXG4gICNvcmRlcl9mb3JtICB7XHJcbiAgICBmaWVsZHNldCB7XHJcbiAgICAgIG1hcmdpbjogMjBweCAtMTBweCAwO1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgIH1cclxuICB9XHJcbiAgLm1vZGFsIHtcclxuICAgIC5qc3RUYWJzLnRhYnMge1xyXG4gICAgICBsaSB7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNuZXdfY29udGFjdCB7XHJcbiAgICAgIHAjc2hvd19kZXRhaWxzX2xpbmsge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHAge1xyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNuZXctb3BlcmF0aW9uLWludm9pY2UtZm9ybSxcclxuICAjbmV3LXJlbGF0aW9uLWZvcm0ge1xyXG4gICAgcCB7XHJcbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgIG1hcmdpbjogMTBweCAwIDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItbm90ZXMge1xyXG4gICAgLm5vdGVfZGF0YV9oZWFkZXIge1xyXG4gICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgLm5vdGVfdGl0bGUge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZnMxNjtcclxuICAgICAgICBsaW5lLWhlaWdodDogQGZzMTY7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjbWFpbiB7XHJcbiAgICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICAgLmJveCB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5lZGl0X25vdGUge1xyXG4gICAgICBmaWVsZHNldCB7XHJcbiAgICAgICAgbWFyZ2luOiAwIC0xMHB4O1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgdGFibGUge1xyXG4gICAgICAgIHRib2R5IHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgICAgIGJyIHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmID4gKiB7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgICAuamNmLXNlbGVjdCB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgaW5wdXRbdHlwZT1cImRhdGVcIl0ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjY29udGVudCB7XHJcbiAgICAgIGZvcm0ge1xyXG4gICAgICAgIGlucHV0W3R5cGU9XCJkYXRlXCJdIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3F1ZXJ5X2Zvcm0ge1xyXG4gICAgLmhvbGRlci1idXR0b25zLWZpbHRlciB7XHJcbiAgICAgIHdpZHRoOiBjYWxjKH4nMTAwdncgLSAyMHB4Jyk7XHJcbiAgICAgIG1heC13aWR0aDogY2FsYyh+JzEwMHZ3IC0gMjBweCcpO1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgICAuYnV0dG9ucyB7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5qY2Ytc2VsZWN0IHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgICAgICBtYXJnaW46IDAgMCAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLW5vdGVzIHtcclxuICAgICNtYWluIHtcclxuICAgICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgICAuYXR0YWNobWVudHMge1xyXG4gICAgICAgICAgcGFkZGluZy10b3A6IDQwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB0YWJsZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLW5vdGVzLmFjdGlvbi1lZGl0IHtcclxuICAgICNtYWluIHtcclxuICAgICAgLmF0dGFjaG1lbnRzIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAuaWNvbi1vbmx5IHtcclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZykgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNxdWVyeV9mb3JtIHtcclxuICAgIC5ob2xkZXItYnV0dG9ucy1maWx0ZXIge1xyXG4gICAgICAuYnV0dG9ucy5oaWRlLXdoZW4tcHJpbnQge1xyXG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIG1hcmdpbjogMCA1cHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgI29yZGVyX2Zvcm0ge1xyXG4gICAgZmllbGRzZXQge1xyXG4gICAgICB0YWJsZS5wcm9kdWN0LWxpbmVzIHtcclxuICAgICAgICB0ci5saW5lLmZpZWxkcyB7XHJcbiAgICAgICAgICB0ZC5pdGVtIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAxNTBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgIGFbaHJlZio9XCJxdWVzdGlvbnNfc2VjdGlvbnMvbmV3XCJdIHtcclxuICAgICAgb3JkZXI6IDE7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICByaWdodDogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICN0YWItY29udGVudC1oZWxwZGVza190ZW1wbGF0ZSB7XHJcbiAgICAjaGVscGRlc2tfdGVtcGxhdGUge1xyXG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAuYm94IHtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHggMTVweCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICBsZWdlbmQge1xyXG4gICAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICAgIHRvcDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNjb250ZW50IHtcclxuICAgIGZpZWxkc2V0I2ludm9pY2VfdGVtcGxhdGVfY29udGVudCB7XHJcbiAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7fVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuJi5oYXMtYXNzaWduYWJsZS11c2VyIHtcclxuICAjd3JhcHBlcjMge1xyXG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gIH1cclxuICAjbWFpbiB7XHJcbiAgICAucmVkbWluZUV2b2x1dGlvbi1hZ2lsZS11c2VycyB7XHJcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5vcGVuLXNpZGViYXIge1xyXG4gICAgI3NpZGViYXIge1xyXG4gICAgICAucHJvamVjdC1tZW1iZXJzIHtcclxuICAgICAgICBsZWZ0OiAzMjBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAmLmhhcy1hc3NpZ25hYmxlLXVzZXIge1xyXG4gICAgI3dyYXBwZXIzIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4ubm8tYW5pbWF0ZSB7XHJcbiAgI3NpZGViYXIge1xyXG4gICAgLnByb2plY3QtbWVtYmVycyB7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIHJpZ2h0IHZhcigtLXRpbWUtaG92ZXItbnVsbCkgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogIHJpZ2h0IHZhcigtLXRpbWUtaG92ZXItbnVsbCkgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiAgcmlnaHQgdmFyKC0tdGltZS1ob3Zlci1udWxsKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogIHJpZ2h0IHZhcigtLXRpbWUtaG92ZXItbnVsbCkgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246ICByaWdodCB2YXIoLS10aW1lLWhvdmVyLW51bGwpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4jc2lkZWJhciB7XHJcbiAgLnByb2plY3QtbWVtYmVycyB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiA5NnB4O1xyXG4gICAgaGVpZ2h0OiBjYWxjKH4nMTAwJSAtIDQxcHgnKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnKTtcclxuICAgIHBhZGRpbmc6IDEwcHggMDtcclxuICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246ICBsZWZ0IHZhcigtLXRpbWUtbWFpbikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiAgbGVmdCB2YXIoLS10aW1lLW1haW4pIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogIGxlZnQgdmFyKC0tdGltZS1tYWluKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICBoMyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmFzc2lnbmFibGUtdXNlciB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICBtYXJnaW46IDNweCBhdXRvO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjBweDtcclxuICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlcik7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLnVzZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMDtcclxuICAgICAgICB0ZXh0LWluZGVudDogLTk5OTk5OXB4O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5lbXB0eS11c2VyLXVwIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDM3cHg7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1jb2xvci9wZXJzb24ucG5nXCIpIDUwJSA1MCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLWljb24td2lkdGgtc21hbGwpIHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoLXNtYWxsKTtcclxuICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuZ3JhdmF0YXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bm90KC5kcmFnZ2FibGUtYWN0aXZlKSB7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jY29udGVudCB7XHJcbiAgI3NldHRpbmdzIHtcclxuICAgIGZvcm1bYWN0aW9uKj1cIi9yZWRtaW5lX2NybS9zZXR0aW5ncy9tb25leVwiXSB7XHJcbiAgICAgIC5ib3gge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG5ib2R5IHtcclxuICAudGFidWxhciB7XHJcbiAgICBsYWJlbC5lcnJvciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1yZWRfYm9yZGVyX2Vycm9yKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgSEVMUCAmIFNVUFBPUlQgUEFHRVMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEFERCBRVUVTVElPTiAqL1xyXG5cclxuI3dyYXBwZXIge1xyXG5cclxuICAjaGVscGRlc2tfbGlmZXRpbWUge1xyXG5cclxuICB9XHJcbiAgLnF1ZXN0aW9uIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAud2lraS1hbmNob3Ige1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogQG5vdGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgJiA+IC53aWtpLWFuY2hvciB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAxMjVweDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjcXVlc3Rpb25fZm9ybSB7XHJcblxyXG4gICAgLmF0dGFjaG1lbnRzX2Zvcm0ge1xyXG4gICAgICBtYXJnaW4tdG9wOiA3cHg7XHJcbiAgICB9XHJcbiAgICBhW2hyZWYqPVwicXVlc3Rpb25zX3NlY3Rpb25zL25ld1wiXSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGEud2lraS1hbmNob3Ige1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgIGJyIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAucXVlc3Rpb24tdGFncy1lZGl0IHtcclxuICAgICAgICBtYXJnaW46IDEwcHggMCAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgZmxleDogMCAxIGF1dG87XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB3aWR0aDogMTc1cHg7XHJcblxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgICAgIG1hcmdpbjogMCA1cHggMCAyNHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgJiArIGxhYmVsIHtcclxuICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjpudGgtbGFzdC1vZi10eXBlKDEpIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5xdWVzdGlvbi10YWdzLWVkaXQge1xyXG4gICAgZmxleDogMSAwIGF1dG87XHJcbiAgICB3aWR0aDoxMDAlO1xyXG5cclxuICB9XHJcblxyXG4gIC5ib3gge1xyXG4gICAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IHtcclxuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNwYW4uYXR0YWNobWVudHNfZm9ybSB7XHJcbiAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgYVtocmVmKj1cIi9oZWxwZGVzay9zaG93X29yaWdpbmFsXCJdIHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICB3aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIG1hcmdpbjowO1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OjI7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgZm9udC1zaXplOjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OjBweDtcclxuICAgIGNvbG9yOiAgdmFyKC0taWNvbi1jb2xvcik7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBAc2VhcmNoO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB6LWluZGV4OjE7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5zZWxlY3RlZCB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuZGlzYWJsZWQge1xyXG4gICAgICBvcGFjaXR5OiAwLjM7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1kaXNhYmxlZCk7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctZGlzYWJsZWQpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIEFERCBRVUVTVElPTiAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTElTVCBRVUVTVElPTiBQQUdFICovXHJcbiNxdWVzdGlvbl9mb3JtIHtcclxuICBjb2xvcjogdmFyKC0tYmctZmZmKTtcclxufVxyXG4jbWFpbiB7XHJcbiAgI2NvbnRlbnQge1xyXG4gICAgLnRvcC1xdWVzdGlvbnMge1xyXG4gICAgICBhLmljb24ge1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgei1pbmRleDogNTtcclxuICAgIH1cclxuXHJcbiAgICBmb3JtW2FjdGlvbio9J3F1ZXN0aW9uc19zZWN0aW9ucyddIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgIC5ib3gge1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgPiBwIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmID4gI2NvbnRlbnQge1xyXG5cclxuICAgIGZvcm1bYWN0aW9uKj0ncmVkbWluZV9jb250YWN0c19oZWxwZGVzaydde1xyXG4gICAgICAubm9kYXRhIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgI3RhYi1jb250ZW50LWVtYWlsX3J1bGVzIHtcclxuICAgICAgaDMge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgaDQge1xyXG4gICAgICAgIG1hcmdpbjogMjBweCAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAubm9kYXRhIHtcclxuICAgICAgICBtYXJnaW46IDIwcHggMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnF1ZXN0aW9ucy1maWx0ZXJzIHtcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBmbG9hdDogbm9uZTtcclxuXHJcbiAgICAmICsgI3RvcGljc19saXN0IHtcclxuICAgICAgLnRpdGxlLWJhciB7XHJcbiAgICAgICAgbWFyZ2luOiAtMzlweCAwIDI0cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIDEwcHg7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiA1cHggMTVweDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCk7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLmNvbnRyb2xsZXItcXVlc3Rpb25zX3NlY3Rpb25zLFxyXG4uY29udHJvbGxlci1xdWVzdGlvbnMge1xyXG5cclxuICAucmVkbWluZS1ldm9sdXRpb24tYXR0YWNobWVudHMge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm9keSk7XHJcbiAgfVxyXG5cclxuICAjbWFpbiB7XHJcbiAgICAjY29udGVudCB7XHJcbiAgICAgIC50b3AtcXVlc3Rpb25zIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgLnJpZ2h0LXF1ZXN0aW9ucyB7XHJcbiAgICAgICAgICB3aWR0aDogMzkycHg7XHJcbiAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuICAgICAgICAgIC5maWx0ZXJzIHtcclxuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICAgIG9yZGVyOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLmNvbnRleHR1YWwge1xyXG4gICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgICAgbWFyZ2luOiAycHggMCAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAgICAgJjplbXB0eSB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5pY29uLFxyXG4gICAgICAgICAgICAub3Blbi1maWx0ZXIge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuXHJcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDIsXHJcbiAgICAgICAgaDEge1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgb3JkZXI6IDA7XHJcbiAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQDEwMjRfaDI7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgICAgIHBhZGRpbmc6IDE1cHggNDVweDtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICAzMHB4IGF1dG87XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDUwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5jb250cm9sbGVyLXF1ZXN0aW9uc19zZWN0aW9ucy5hY3Rpb24tZWRpdCB7XHJcbiAgICAjbWFpbiB7XHJcbiAgICAgICNjb250ZW50IHtcclxuICAgICAgICAudG9wLXF1ZXN0aW9ucyB7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNjBweCk7XHJcbiAgICAgICAgICBtYXJnaW46IDAgLTMwcHggNzBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuLmNvbnRyb2xsZXItcXVlc3Rpb25zLmFjdGlvbi1jcmVhdGUge1xyXG4gICNtYWluIHtcclxuICAgICNjb250ZW50IHtcclxuICAgICAgLnRvcC1xdWVzdGlvbnMge1xyXG4gICAgICAgIG1hcmdpbjogMCAtMzBweCA3MHB4O1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDYwcHgnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItcXVlc3Rpb25zX3NlY3Rpb25zLmFjdGlvbi1pbmRleCxcclxuLmNvbnRyb2xsZXItcXVlc3Rpb25zLmFjdGlvbi1zaG93LFxyXG4uY29udHJvbGxlci1xdWVzdGlvbnMuYWN0aW9uLWluZGV4IHtcclxuICAjbWFpbiB7XHJcblxyXG4gICAgI2Fuc3dlci1mb3JtIHtcclxuICAgICAgcCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG5cclxuICAgICAgICBiciB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpudGgtbGFzdC1vZi10eXBlKDEpe1xyXG4gICAgICAgICAgbWFyZ2luOiAxNXB4IDAgMDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLnF1ZXN0aW9uLXRhZ3MtZWRpdCB7XHJcbiAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlIC0gMTg1cHgnKSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmFkZC1jb21tZW50LWxpbmsge1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAjY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI3RvcGljc19saXN0IHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnRpdGxlLWJhciB7XHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaW5mbyB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jbWFpbiAjY29udGVudCB7XHJcbiAgI2ZvcnVtX2xpc3Qge1xyXG5cclxuICAgICNmb3J1bV9saXN0IHtcclxuICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBkaXYucHJvamVjdC1mb3J1bXMge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICBtYXJnaW46IDMwcHggMCAwO1xyXG4gICAgICBwYWRkaW5nOiAzMHB4IDAgMDtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zZWN0aW9uLWxpc3Qge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgIG1hcmdpbjogMCAtMTBweDtcclxuXHJcbiAgICAgICY6ZW1wdHkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnNlY3Rpb24tdGlsZSB7XHJcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLW90aGVyKTtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMjBweDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcblxyXG4gICAgICAgICAgaDQge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBoNCB7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgICAgICBmb250LXNpemU6IEBmczE2O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxNjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgJiA+IHVsIHtcclxuICAgICAgJiA+IGxpIHtcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLW90aGVyKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Oy1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgYm94LXNoYWRvdyB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246ICBib3gtc2hhZG93IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiAgYm94LXNoYWRvdyB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiAgYm94LXNoYWRvdyB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAgYm94LXNoYWRvdyB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmhvbGRlci1mb3J1bXMge1xyXG4gICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBoMyB7XHJcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjBweCAxNXB4IDUwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiBAZ2ZmO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IEBxdWVzdGlvbnM7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDo1MCU7XHJcbiAgICAgICAgICAgIGxlZnQ6MTBweDtcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICBtYXJnaW46LTE1cHggMCAwO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6NTAlO1xyXG4gICAgICAgICAgICBsZWZ0OjEwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgICAgbWFyZ2luOi0xNXB4IDAgMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hbGwtaG92ZXItYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLnRvcGljX2xpc3Qge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMCA1MHB4O1xyXG5cclxuICAgICAgICAubGlzdC1pdGVtIHtcclxuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCAxMHB4O1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hbGwtaG92ZXItYmcpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGJyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50b3BpYy1zdWJqZWN0IHtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3RvcGljc19jb250YWluZXIge1xyXG4gICAgbWFyZ2luOiAwIDAgMzBweDtcclxuXHJcbiAgICAudG9waWMge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1vdGhlcik7XHJcbiAgICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudG9waWMtdm90ZSB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luOiAwIDIwcHggMCAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDNweCAwIDA7XHJcblxyXG4gICAgICAgIC52b3RlLXNjb3JlIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4xNDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmstZ3JleSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAudG9waWMtY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBmbGV4OiAxIDAgYXV0bztcclxuXHJcbiAgICAgICAgLnN1YmplY3Qge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5tZXRhIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTVweDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLW90aGVyLWluKTtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDAuODU3MXJlbTtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICAwLjg1NzFyZW07XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcblxyXG5cclxuICAgICAgICAgICAgJi5pY29uLXRhZyB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG5cclxuICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG5cclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDE1cHggNXB4IDI1cHg7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMTVweDtcclxuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAwIDEwcHg7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjg1NzFyZW07XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCk7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAucXVlc3Rpb24gIHtcclxuICAgLnF1ZXN0aW9uLWNvbnRhaW5lciB7XHJcbiAgICAgZmxleDogMTtcclxuICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Oy1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgIGZvbnQtZmFtaWx5OiBAZ2ZmO1xyXG4gICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgIHBhZGRpbmc6IDE1cHggMjBweDtcclxuICAgICB3ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICAgYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgLW1zLXRyYW5zaXRpb246IGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAtby10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLW90aGVyKTtcclxuXHJcbiAgICAgJjpob3ZlciB7XHJcbiAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgIH1cclxuXHJcbiAgICAgLmljb24sXHJcbiAgICAgLmljb24tb25seSB7XHJcbiAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICAgfVxyXG4gICAgIH1cclxuICAgfVxyXG4gfVxyXG5cclxuICAucXVlc3Rpb24gIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgIHRhYmxlIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgIH1cclxuXHJcbiAgICAuY29tbWVudHNfY29udGFpbmVyIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG5cclxuICAgICAgLmFkZF9jb21tZW50cyB7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAwIDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICB0ZXh0YXJlYSB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuY29tbWVudCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweCAxNXB4IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICB3ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1vdGhlcik7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcblxyXG4gICAgICAgICAgLmNvbnRleHR1YWwge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmF1dGhvciB7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDEwcHg7XHJcbiAgICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgICAgLmljb24sXHJcbiAgICAgICAgICAuaWNvbi1vbmx5IHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcblxyXG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2Fuc3dlcnMge1xyXG4gICAgcGFkZGluZzowIDAgNTBweDtcclxuXHJcbiAgICBoMyB7XHJcbiAgICAgIG9yZGVyOiAwO1xyXG4gICAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBmb250LXNpemU6IEAxMDI0X2gyO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgcGFkZGluZzogMTVweCAwO1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAgMzBweCBhdXRvO1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDUwJTtcclxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICBtYXJnaW46IDAgMCAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5xdWVzdGlvbiB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDMwcHggNTVweDtcclxuICAgICAgd2lkdGg6IGNhbGMoficxMDAlIC0gNTVweCcpO1xyXG4gICAgfVxyXG5cclxuICAgIC5hdHRhY2htZW50cyB7XHJcbiAgICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjcmVwbHkge1xyXG4gICAgICAjYW5zd2VyLWZvcm0ge1xyXG4gICAgICAgIC5ib3gge1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAgICAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdyk7XHJcbiAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctb3RoZXIpO1xyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBkaXYucXVlc3Rpb24udm90YWJsZSB7XHJcbiAgICAudm90ZSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gICAgICBtYXJnaW46IDAgMjBweCAwIDA7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgYm9yZGVyOiA1cHggc29saWQgdmFyKC0tYmctZmZmKTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgZm9udC1zaXplOiBAZnMxNjtcclxuICAgICAgbGluZS1oZWlnaHQ6IEBmczE2O1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogIHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6ICB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYmlnLXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnZvdGUtY291bnQge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBhLnZvdGUtdXAsXHJcbiAgICAgIGEudm90ZS1kb3duIHtcclxuICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICYuZGlzYWJsZWQge1xyXG4gICAgICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWRpc2FibGVkKTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWRpc2FibGVkKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCk7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDogQGFycm93LWRvd247XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1mb250LXNpemUpO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgYS52b3RlLXVwIHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgTElTVCBRVUVTVElPTiBQQUdFICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBBRE1JTiBTRVRUSU5HUyAqL1xyXG5cclxuI3NldHRpbmdzX2hlbHBkZXNrX2F1dG9jbG9zZV90aWNrZXRzX3RpbWVfdW5pdF9kYXksXHJcbiNzZXR0aW5nc19oZWxwZGVza19hdXRvY2xvc2VfdGlja2V0c190aW1lX3VuaXRfaG91ciB7XHJcbiAgbWFyZ2luOiAwIDE4cHggMDtcclxufVxyXG5cclxuLm5ld19oZWxwZGVza19tYWlsX3J1bGUsXHJcbi5lZGl0X2hlbHBkZXNrX21haWxfcnVsZSB7XHJcbiAgLm1haWxfcnVsZV9ibG9jayB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiA0NXB4IDIwcHggMjBweDtcclxuICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDhweDstbW96LWJvcmRlci1yYWRpdXM6IDhweDtib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG5cclxuICAgIGxlZ2VuZCB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAxN3B4O1xyXG4gICAgICBsZWZ0OiAyMHB4O1xyXG4gICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuXHJcbiAgICAuYWRkLWZpbHRlcixcclxuICAgICNtYWlsX3R5cGUge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgd2lkdGg6IDE3NXB4O1xyXG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZsZXg6IDAgMSBhdXRvO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYWRkLWZpbHRlciB7XHJcbiAgICAgIG1hcmdpbjogMjBweCAwIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmZpbHRlciB7XHJcbiAgICAgIC5zZWxlY3QyIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0YWJsZSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xyXG5cclxuICAgICAgdHIge1xyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcblxyXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHNlbGVjdDIge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI2NvbnRlbnQgI3NldHRpbmdzIHtcclxuICAjdGFiLWNvbnRlbnQtdGVtcGxhdGVzIHtcclxuICAgIC5ib3gge1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICNzZXR0aW5nc19oZWxwZGVza19maXJzdF9hbnN3ZXJfdGVtcGxhdGUsXHJcbiAgICAjc2V0dGluZ3NfaGVscGRlc2tfYXV0b2Nsb3NlX3RlbXBsYXRlIHtcclxuICAgICAgbWFyZ2luOiAxNXB4IDAgMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiN0YWItY29udGVudC1lbWFpbF9ydWxlcyB7XHJcbiAgLmxpc3Qge1xyXG4gICAgbWFyZ2luOiAwIDAgMjBweDtcclxuXHJcbiAgICAmOm50aC1sYXN0LW9mLXR5cGUoMSkge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29udHJvbGxlci1xdWVzdGlvbnMuYWN0aW9uLWVkaXQge1xyXG4gICNtYWluIHtcclxuICAgICNjb250ZW50IHtcclxuICAgICAgLnRvcC1xdWVzdGlvbnMge1xyXG4gICAgICAgIG1hcmdpbjogMCAtMzBweCA3MHB4O1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDYwcHgnKTtcclxuXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBBREQgUVVFU1RJT04gKi9cclxuXHJcbi5jb250cm9sbGVyLXF1ZXN0aW9uc19zZWN0aW9ucy5hY3Rpb24tbmV3LFxyXG4uY29udHJvbGxlci1xdWVzdGlvbnMuYWN0aW9uLW5ldyB7XHJcbiAgI21haW4ge1xyXG4gICAgI2NvbnRlbnQge1xyXG4gICAgICAudG9wLXF1ZXN0aW9ucyB7XHJcbiAgICAgICAgbWFyZ2luOiAwIC0zMHB4IDcwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgNjBweCcpO1xyXG5cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbmV3X3F1ZXN0aW9uc19zZWN0aW9uIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgLmJveCB7XHJcbiAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuXHJcbi8qIEVORCBBRE1JTiBTRVRUSU5HUyAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTUFJTiBMSVNUICovXHJcblxyXG4jbWFpbiA+ICNjb250ZW50ICNmb3J1bV9saXN0IHtcclxuXHJcbiAgLmV2ZW4ge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5saXN0LWJ1dHRvbnMge1xyXG4gICAgcGFkZGluZzowIDE1cHggMCAxMHB4O1xyXG4gICAgbGlzdC1zdHlsZTpub25lO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICBtYXJnaW46IC0xNXB4IDAgMDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDonJztcclxuICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgbWFyZ2luOiAtMTBweCAwIDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgd2lkdGg6IDFweDtcclxuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgfVxyXG5cclxuICAgIGxpIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBtYXJnaW46IDAgMCAwIDVweDtcclxuXHJcbiAgICAgICYuZmlyc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm9wZW4tZm9ydW1zIHtcclxuICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZzowO1xyXG4gICAgZmxvYXQ6cmlnaHQ7XHJcbiAgICBoZWlnaHQ6dmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICB3aWR0aDp2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgIG1hcmdpbjowO1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OjI7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGZvbnQtc2l6ZTowcHg7XHJcbiAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogQG9wZW4tZm9sZGVyO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICBtYXJnaW46MDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHotaW5kZXg6MTtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplKTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OicnO1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjBweDtcclxuICAgICAgbGVmdDowcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG5cclxuICAgICAgJjphZnRlciB7Y29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO31cclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcblxyXG4gICAgICAmOmFmdGVyIHtjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7fVxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAub3BlbiB7XHJcbiAgICAucHJvamVjdC1mb3J1bXMge1xyXG4gICAgICAmID4gaDMge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMCAwOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwIDA7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwIDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5vcGVuLWZvcnVtcyB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlLWJnKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYgPiBoMyB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuXHJcbiAgICAgIC5vcGVuLWZvcnVtcyB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlLWJnKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI21haW4gPiAjY29udGVudCB7XHJcbiAgLmZvcnVtcy1ib3gge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1vdGhlcik7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O2JveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93KTtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3cpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgYm94LXNoYWRvdyB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogIGJveC1zaGFkb3cgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogIGJveC1zaGFkb3cgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiAgYm94LXNoYWRvdyB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246ICBib3gtc2hhZG93IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJpZy1zaGFkb3ctaG92ZXIpO1xyXG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1iaWctc2hhZG93LWhvdmVyKTtcclxuICAgIH1cclxuXHJcbiAgICAucHJvamVjdC1mb3J1bXMge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgIGgzIHtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggNjBweCAxNXB4IDUwcHggIWltcG9ydGFudDtcclxuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IEBnZmY7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBmb250LXNpemU6IEBmczE2O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTBweCA1MCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1vdGhlcik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OiBAcHJvamVjdHM7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDo1MCU7XHJcbiAgICAgICAgICBsZWZ0OjEwcHg7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBtYXJnaW46LTE1cHggMCAwO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tZm9udC1zaXplKTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOjUwJTtcclxuICAgICAgICAgIGxlZnQ6MTBweDtcclxuICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICBtYXJnaW46LTEzcHggMCAwO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hbGwtaG92ZXItYmcpO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ob2xkZXItZm9ydW1zIHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMDtcclxuXHJcbiAgICAgICYgPiB1bCB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzowIDAgMCAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuXHJcbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDYwcHggMCAwO1xyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjBweCAxNXB4IDUwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBAZ2ZmO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IEBmczE2O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgY29udGVudDogQHF1ZXN0aW9ucztcclxuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgdG9wOjUwJTtcclxuICAgICAgICAgICAgICBsZWZ0OjEwcHg7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICAgIG1hcmdpbjotMTVweCAwIDA7XHJcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgdG9wOjUwJTtcclxuICAgICAgICAgICAgICBsZWZ0OjEwcHg7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOi0xNXB4IDAgMDtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnLWJnKTtcclxuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuXHJcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hbGwtaG92ZXItYmcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50b3BpY19saXN0IHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgbWFyZ2luOiAwIDAgMCA1MHB4O1xyXG5cclxuICAgICAgLmxpc3QtaXRlbSB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCAxMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFsbC1ob3Zlci1iZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBiciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLnRvcGljLXN1YmplY3Qge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBNQUlOIExJU1QgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1FRElBKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItcXVlc3Rpb25zLmFjdGlvbi1jcmVhdGUge1xyXG4gICAgI21haW4ge1xyXG4gICAgICAjY29udGVudCB7XHJcbiAgICAgICAgLnRvcC1xdWVzdGlvbnMge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIC0xMHB4IDIwcHg7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMjBweCk7XHJcblxyXG4gICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMHB4IDUwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNXB4IDI1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjBweCAxNXB4IDQ1cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3dyYXBwZXIgLnF1ZXN0aW9uID4gLndpa2ktYW5jaG9yIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcbiAgI2Fuc3dlci1mb3JtIHtcclxuICAgIC5hY2NlcHRlZF9hbnN3ZXIge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xsZXItcXVlc3Rpb25zX3NlY3Rpb25zLmFjdGlvbi1lZGl0ICNtYWluICNjb250ZW50IC50b3AtcXVlc3Rpb25zLFxyXG4gIC5jb250cm9sbGVyLXF1ZXN0aW9ucy5hY3Rpb24tZWRpdCAjbWFpbiAjY29udGVudCAudG9wLXF1ZXN0aW9ucyxcclxuICAuY29udHJvbGxlci1xdWVzdGlvbnNfc2VjdGlvbnMuYWN0aW9uLW5ldyAjbWFpbiAjY29udGVudCAudG9wLXF1ZXN0aW9ucyxcclxuICAuY29udHJvbGxlci1xdWVzdGlvbnMuYWN0aW9uLW5ldyAjbWFpbiAjY29udGVudCAudG9wLXF1ZXN0aW9ucyB7XHJcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLXF1ZXN0aW9uc19zZWN0aW9ucy5hY3Rpb24taW5kZXggI21haW4gI2NvbnRlbnQsXHJcbiAgLmNvbnRyb2xsZXItcXVlc3Rpb25zLmFjdGlvbi1zaG93ICNtYWluICNjb250ZW50LFxyXG4gIC5jb250cm9sbGVyLXF1ZXN0aW9ucy5hY3Rpb24taW5kZXggI21haW4gI2NvbnRlbnQge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLXF1ZXN0aW9uc19zZWN0aW9ucyxcclxuICAuY29udHJvbGxlci1xdWVzdGlvbnN7XHJcbiAgICAjbWFpbiB7XHJcbiAgICAgICNjb250ZW50IHtcclxuICAgICAgICAudG9wLXF1ZXN0aW9ucyB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gICAgICAgICAgLmZpbHRlcnMge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI21haW4ge1xyXG4gICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG5cclxuICAgICAuZm9ydW1zLWJveCB7XHJcbiAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG5cclxuICAgICAgIC5wcm9qZWN0LWZvcnVtcyB7XHJcbiAgICAgICAgIGgzIHtcclxuICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG5cclxuICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgfVxyXG4gICAgICAgICB9XHJcbiAgICAgICB9XHJcbiAgICAgfVxyXG5cclxuICAgICAgI2ZvcnVtX2xpc3Qge1xyXG4gICAgICAgICYgPiB1bCB7XHJcbiAgICAgICAgICAmID4gbGkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4IDE1cHggNTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAub3Blbi1mb3J1bXN7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmxpc3QtYnV0dG9ucyB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgI3RvcGljc19jb250YWluZXIge1xyXG4gICAgICAgIC50b3BpYyB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xyXG5cclxuICAgICAgICAgIC50b3BpYy1jb250ZW50e1xyXG4gICAgICAgICAgICBmbGV4OiAxO1xyXG5cclxuICAgICAgICAgICAgLm1ldGEge1xyXG4gICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAycHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XHJcblxyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAucXVlc3Rpb24ge1xyXG4gICAgICAgIC5xdWVzdGlvbi1jb250YWluZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KTtcclxuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcclxuXHJcbiAgICAgICAgICAuY29tbWVudCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIDA7XHJcblxyXG4gICAgICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctYm94KSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5hdHRhY2htZW50cyB7XHJcbiAgICAgICAgICAgIHRhYmxlIHtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLnF1ZXN0aW9uIC5xdWVzdGlvbi1jb250YWluZXIgLmljb24sXHJcbiAgICAgICNyZXBseSAuaWNvbixcclxuICAgICAgLnF1ZXN0aW9uIC5xdWVzdGlvbi1jb250YWluZXIgLmljb24tb25seSxcclxuICAgICAgI3JlcGx5IC5pY29uLW9ubHkge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1iZy1ib3gpO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5hZGQtY29tbWVudC1mb3JtIHtcclxuICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuXHJcbiAgICAgICAgICAmICsgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XHJcbiAgICAgICAgICAgIC8qYmFja2dyb3VuZDogQGZmZjsqL1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNjb250ZW50IHtcclxuICAgICAgI3NldHRpbmdzIHtcclxuICAgICAgICAjdGFiLWNvbnRlbnQtdGVtcGxhdGVzIHtcclxuICAgICAgICAgIC5ib3gge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjYW5zd2VycyB7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDIwcHg7XHJcblxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcclxuICAgICAgICAgIG1hcmdpbjogMCAtMTBweCAyMHB4O1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnF1ZXN0aW9uIHtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFkZC1jb21tZW50LWZvcm0ge1xyXG4gICAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAmICsgYSB7XHJcbiAgICAgICAgICAgICAgLypiYWNrZ3JvdW5kOiBAZmZmOyovXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgI3JlcGx5IHtcclxuICAgICAgICAgICNhbnN3ZXItZm9ybSB7XHJcbiAgICAgICAgICAgIC5ib3gge1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgICAgICAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1ib3gpO1xyXG5cclxuICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgICAgICAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKTtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjcmVwbHkge1xyXG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpICFpbXBvcnRhbnQ7O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCkgIWltcG9ydGFudDs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucXVlc3Rpb25zLWZpbHRlcnMge1xyXG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xyXG4gICAgICB1bCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnF1ZXN0aW9uLnNvbHV0aW9uIHtcclxuICAgICAgLmxpa2luZyB7XHJcbiAgICAgICAgLmF1dGhvciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gIC5jb250cm9sbGVyLXF1ZXN0aW9ucy5hY3Rpb24tY3JlYXRlIHtcclxuICAgICNtYWluIHtcclxuICAgICAgI2NvbnRlbnQge1xyXG4gICAgICAgIC50b3AtcXVlc3Rpb25zIHtcclxuICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBAZnMxNjtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGgyO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2Fuc3dlci1mb3JtIHtcclxuICAgIC5hY2NlcHRlZF9hbnN3ZXIge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAubmV3X2hlbHBkZXNrX21haWxfcnVsZSxcclxuICAuZWRpdF9oZWxwZGVza19tYWlsX3J1bGUge1xyXG4gICAgLm1haWxfcnVsZV9ibG9jayB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDstbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyMHB4KTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICBsZWdlbmQge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1tb2JpbGUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuYWRkLWZpbHRlciB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmFkZC1maWx0ZXIsXHJcbiAgICAgICNtYWlsX3R5cGUge1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDVweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBzZWxlY3QyIHtcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0YWJsZSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICAgdGJvZHkge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHIge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XHJcblxyXG4gICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgcGFkZGluZzogNHB4IDA7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluID4gI2NvbnRlbnQge1xyXG4gICAgLmVkaXRfY2FubmVkX3Jlc3BvbnNlIHtcclxuICAgICAgZGl2LmJveCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcblxyXG4gICAgICAgICYgPiBmaWVsZHNldCB7XHJcbiAgICAgICAgICBsZWdlbmQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgbGVnZW5kIHtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNlZGl0X2Nhbm5lZF9yZXNwb25zZSB7XHJcblxyXG4gICAgfVxyXG4gIH1cclxuICAuY29udHJvbGxlci1xdWVzdGlvbnNfc2VjdGlvbnMsXHJcbiAgLmNvbnRyb2xsZXItcXVlc3Rpb25ze1xyXG4gICAgI21haW4ge1xyXG4gICAgICAjY29udGVudCB7XHJcbiAgICAgICAgLnRvcC1xdWVzdGlvbnMge1xyXG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxNjtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAuZmlsdGVycyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAucmlnaHQtcXVlc3Rpb25zIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbWFpbiB7XHJcbiAgICAmID4gI2NvbnRlbnQge1xyXG4gICAgICAuZm9ydW1zLWJveCB7XHJcbiAgICAgICAgbWFyZ2luOiAwIC0xMHB4IDEwcHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoficxMDAlICsgMjBweCcpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuXHJcbiAgICAgICAgLmhvbGRlci1mb3J1bXMge1xyXG4gICAgICAgICAgJiA+IHVsIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICNmb3J1bV9saXN0IHtcclxuICAgICAgICAmID4gdWwge1xyXG4gICAgICAgICAgJiA+IGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIC0xMHB4IDEwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLnRvcGljX2xpc3Qge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuYWRkLWNvbW1lbnQtZm9ybSB7XHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICYgKyBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvcik7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmctaG92ZXIpO1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBmb3JtW2FjdGlvbio9J3F1ZXN0aW9uc19zZWN0aW9ucyddIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgLmJveCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjcXVlc3Rpb25fc3ViamVjdCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBkaXYucXVlc3Rpb24ge1xyXG5cclxuICAgICAgICAmLnZvdGFibGUge1xyXG4gICAgICAgICAgLnZvdGUge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgICAgICAgZmxleC1mbG93OiByb3c7XHJcblxyXG4gICAgICAgICAgICBhLnZvdGUtdXAsXHJcbiAgICAgICAgICAgIGEudm90ZS1kb3duIHtcclxuICAgICAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnZvdGUtY291bnQge1xyXG4gICAgICAgICAgICAgIG1pbi13aWR0aDogMzBweDtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucXVlc3Rpb24tY29udGFpbmVyIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbnVsbCkgIWltcG9ydGFudDtcclxuICAgICAgICAgIC1tb3otYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICN0b3BpY3NfY29udGFpbmVyIHtcclxuICAgICAgICAudG9waWMge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIC0xMHB4IDEwcHg7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4JykgIWltcG9ydGFudDtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1udWxsKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgLW1vei1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW51bGwpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3dyYXBwZXIge1xyXG4gICAgLnF1ZXN0aW9uIHtcclxuXHJcbiAgICAgICYgPiAud2lraS1hbmNob3Ige1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBtYXJnaW46IDEwcHggMTBweCAwIDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgICNjb250ZW50IHtcclxuICAgICAgZm9ybSNoZWxwZGVza19zZXR0aW5ncyB7XHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgSEVMUCAmIFNVUFBPUlQgUEFHRVMgKi9cclxuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBTSURFQkFSICovXHJcblxyXG4jc2lkZWJhciB7XHJcbiAgI3RpY2tldF9kYXRhX2Zvcm0ge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcblxyXG4gICAgICAmLmNvbnRhY3RfYXV0b19jb21wbGV0ZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjaGVscGRlc2tfdGlja2V0X2Zyb21fYWRkcmVzc19hZGRfbGluayB7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgcGFkZGluZzowO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIG1hcmdpbjowO1xyXG4gICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OjI7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBmb250LXNpemU6MHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBAbmV3LW9iamVjdDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjBweDtcclxuICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDonJztcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjBweDtcclxuICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmRpc2FibGVkIHtcclxuICAgICAgICBvcGFjaXR5OiAwLjM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWRpc2FibGVkKTtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGxhYmVsIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgbWFyZ2luOiAwIDAgNXB4O1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgICAmICsgYnIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgICBwYWRkaW5nOiA2cHggMTJweDtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMThweDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICBtYXJnaW46MCAhaW1wb3J0YW50O1xyXG4gICAgICBtaW4td2lkdGg6IDE5MHB4O1xyXG4gICAgICBvdXRsaW5lOiAwIG5vbmU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgIGZsZXg6IDEgMCAwO1xyXG5cclxuICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luOjAgMCAxNXB4IDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICBwYWRkaW5nOiA4cHggMzBweDtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tYnV0dG9uLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6ZGlzYWJsZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWRpc2FibGVkKTtcclxuICAgICAgICBjdXJzb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWRpc2FibGVkKTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1kaXNhYmxlZCk7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItZGlzYWJsZWQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJiArIGEge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tYnV0dG9uLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmcpO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tYmctaG92ZXIpO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgU0lERUJBUiAqL1xyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG5cclxuLyogU1RBUlQgQUdJTEUgUEFHRVMgKi9cclxuXHJcbi8qIFNUQVJUIEFHSUxFIFBMQUdJTlMgKi9cclxuXHJcbi5hZ2lsZS1ib2FyZCB7XHJcbiAgLnVzZXI6YWZ0ZXIge2NvbnRlbnQ6ICcnO31cclxuXHJcbiAgLnF1aWNrLWNvbW1lbnQge1xyXG4gICAgbWFyZ2luOiAxMHB4IDAgMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgdGV4dGFyZWEge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgYnV0dG9uW3R5cGU9XCJidXR0b25cIl0sXHJcbiAgICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGZzMTI7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6ZGlzYWJsZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1kaXNhYmxlZCk7XHJcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItZGlzYWJsZWQpO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1kaXNhYmxlZCk7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yLWRpc2FibGVkKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgKyBhIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBmczEyO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3IpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZyk7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIsXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmljb24tY29tbWVudCB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgdG9wOjA7XHJcbiAgICAgIGxlZnQ6MDtcclxuICAgICAgd2lkdGg6IDE0cHg7XHJcbiAgICAgIGhlaWdodDogMTRweDtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtkaXNwbGF5OiBub25lO31cclxuICB9XHJcblxyXG4gIC5pc3N1ZS1jYXJke1xyXG5cclxuICAgIGRpdi5xdWljay1lZGl0LWNhcmQge1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICBoZWlnaHQ6IDE2cHg7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG5cclxuICAgICAgYS5hZGQtY29tbWVudCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBkaXYucXVpY2stZWRpdC1jYXJkIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jbWFpbiB7XHJcbiAgc3Bhbi5jaGVja2xpc3QtcmVtb3ZlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAuYWdpbGVfb3B0aW9uc19maWVsZCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgbWluLXdpZHRoOiAzMCU7XHJcbiAgICB3aWR0aDogNTAlO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIHBhZGRpbmc6IDAgNXB4IDAgMDtcclxuXHJcbiAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBTVEFSVCBBR0lMRSBBRE1JTiBQQVJUICovXHJcblxyXG4vKiBTVEFSVCBBR0lMRSBDT0xPUiAqL1xyXG5cclxuLmNvbnRyb2xsZXItYWdpbGVfY29sb3JzIHtcclxuXHJcbiAgI21haW4gPiAjY29udGVudCB7XHJcbiAgICAmID4gaDIge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcblxyXG4gICAgICAuamNmLXNlbGVjdCxcclxuICAgICAgLnNlbGVjdDIge1xyXG4gICAgICAgIG1heC13aWR0aDogNDA0cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRhYmxlLmxpc3Qge1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbi8qIEVORCBBR0lMRSBDT0xPUiAqL1xyXG5cclxuLyogRU5EIEFHSUxFIEFETUlOIFBBUlQgKi9cclxuXHJcbi8qIEVORCBBR0lMRSBQTEFHSU5TICovXHJcblxyXG50YWJsZS5saXN0Lmlzc3Vlcy1ib2FyZCB7XHJcbiAgYm94LXNoYWRvdzogbm9uZTtcclxuXHJcbiAgdGgge1xyXG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICB9XHJcbiAgPiB0Ym9keSA+IHRyOmhvdmVyID4gdGQge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICB9XHJcbiAgLmlzc3VlLWNhcmQge1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIGJvcmRlci13aWR0aDogMDtcclxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA0cHg7XHJcbiAgICAuYXR0cmlidXRlcyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICB9XHJcbiAgICBwLnByb2plY3QsXHJcbiAgICBwLmlzc3VlLWlkIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgIH1cclxuICAgIHAubmFtZSB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgIH1cclxuICAgIGRpdi5zdWItaXNzdWVzIHVsIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG4gICAgfVxyXG4gICAgZGl2LnF1aWNrLWVkaXQtY2FyZCB7XHJcbiAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMjBweCAwIDAgMjBweDtcclxuICAgICAgei1pbmRleDogMjtcclxuXHJcbiAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAgNHB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwcHg7XHJcbiAgICAgICAgICBsZWZ0OiAwcHg7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogMHB4O1xyXG4gICAgICAgICAgbGVmdDogMHB4O1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiV0ZTLVJNLWZvbnRcIjtcclxuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItZm9udC1zaXplKTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnF1aWNrLWVkaXQ6YWZ0ZXIge2NvbnRlbnQ6IEBlZGl0O31cclxuICAgICAgICAmLmFkZC1jb21tZW50OmFmdGVyIHtjb250ZW50OiBAY29tbWVudDt9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlcik7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGRpdi5zdWItaXNzdWVzIHtcclxuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG5cclxuICAgICAgdWwge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmluZm8ge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgICAgbWFyZ2luLXRvcDogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcblxyXG4gICAgICAudXNlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBtYXJnaW46IDAgNXB4IDAgMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgc3Bhbi5ob3VycyB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWdyZXktZGFyayk7XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tY29tbWVudCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xyXG4gICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgbWluLWhlaWdodDogMTZweDtcclxuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxNjtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICAgIGhlaWdodDogMTZweDtcclxuICAgICAgICBmb250LXNpemU6IEBmczE2O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxNjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuYWRkLWlzc3VlIC5uZXctY2FyZF9faW5wdXQge1xyXG4gICAgZm9udC1zaXplOiBAZnMxMjtcclxuICB9XHJcbn1cclxuI21haW4gPiAjY29udGVudCAjcXVlcnlfZm9ybVthY3Rpb24qPSdhZ2lsZS9ib2FyZCddIHtcclxuICBoMiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1hcmdpbjogMCAtMzBweCA3MHB4O1xyXG4gICAgcGFkZGluZzogMTVweCA3MnB4IDE1cHggNDVweDtcclxuICAgIC5zZWxlY3RlZF9zcHJpbnQge1xyXG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgfVxyXG4gICAgLmljb24tYWRkIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG4gICAgLmxpdmVfc2VhcmNoIHtcclxuICAgICAgcmlnaHQ6IDIwNHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAuc2VsZWN0ZWRfc3ByaW50IHtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gIH1cclxuICAubGl2ZV9zZWFyY2gge1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgfVxyXG59XHJcbi5jb250cm9sbGVyLWFnaWxlX2JvYXJkcyAge1xyXG4gIC5pc3N1ZS1jYXJkIGRpdi5jaGVja2xpc3QgdWwge1xyXG4gICAgbGkge1xyXG4gICAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gICNxdWVyeV9mb3JtX3dpdGhfYnV0dG9ucyB7XHJcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gIH1cclxuXHJcbiAgI3F1ZXJ5X2Zvcm0gLmhvbGRlci1maWx0ZXJzICNvcHRpb25zIHRhYmxlIHRkIHtcclxuICAgIHBhZGRpbmc6IDAgMCAxMHB4IDA7XHJcbiAgfVxyXG5cclxuICAjbWFpbiA+ICNjb250ZW50IHtcclxuICAgICY6YWZ0ZXIge1xyXG5cclxuICAgIH1cclxuICAgID4gLmNvbnRleHR1YWwge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIG1hcmdpbjogMTNweCAwIDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5qY2YtbGlzdCAuamNmLW9wdGdyb3VwLWNhcHRpb24ge1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgfVxyXG4gIC5qY2YtbGlzdCAuamNmLW9wdGdyb3VwIC5qY2Ytb3B0aW9uIHtcclxuICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICB9XHJcbiAgLmFnaWxlLWJvYXJkLmF1dG9zY3JvbGwge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuXHJcbiAgLmFnaWxlX29wdGlvbnNfZmllbGQge1xyXG4gICAgbWluLWhlaWdodDogMDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcGFkZGluZzogM3B4IDAgM3B4IDE4MHB4O1xyXG5cclxuICAgIGxhYmVsIHtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0xODBweDtcclxuICAgICAgd2lkdGg6IDE3NXB4O1xyXG4gICAgICBwYWRkaW5nOiAwIDVweCAwIDA7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYWdpbGUtYm9hcmQtZnVsbHNjcmVlbiB7XHJcbiAgI2hlYWRlciAucmVkbWluZWV2b2x1dGlvbi1zZWFyY2gtbGluayxcclxuICAjbWFpbiA+ICNjb250ZW50ID4gLmNvbnRleHR1YWwsXHJcbiAgI2hlYWRlcixcclxuICAjc2lkZWJhcixcclxuICAjdG9wLW1lbnUsXHJcbiAgLm9wZW4tc2lkZWJhci1saW5rLFxyXG4gICNtYWluLW1lbnUsXHJcbiAgI3NpZGViYXIgLnByb2plY3QtbWVtYmVycyxcclxuICAuYnV0dG9ucyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcclxuICAgIHRvcDogLTk5OTk5OTlweCAhaW1wb3J0YW50OztcclxuICAgIGxlZnQ6IC05OTk5OTk5cHggIWltcG9ydGFudDs7XHJcbiAgfVxyXG5cclxuICAjY29udGVudCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgLmluLWZpbHRlciB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgIH1cclxuXHJcbiAgICAjcXVlcnlfZm9ybSB7XHJcbiAgICAgIHotaW5kZXg6IDEwMDtcclxuXHJcbiAgICAgIC5jb250ZXh0dWFsIHtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgdG9wOiAxNXB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAjcXVlcnlfZm9ybV9jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGgyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGZvcm1bYWN0aW9uKj1cImFnaWxlL2JvYXJkXCJdIHtcclxuICAgICAgei1pbmRleDogMTtcclxuICAgIH1cclxuXHJcbiAgICAuaWNvbiB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAuaWNvbi1mdWxsc2NyZWVuIHtcclxuICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICAgIHRleHQtaW5kZW50OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250YWluZXItZml4ZWQge1xyXG4gICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICB9XHJcbiAgICB0YWJsZS5saXN0Lmlzc3Vlcy1ib2FyZC5zdGlja3kge1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNjb250ZW50IHtcclxuICB0YWJsZS5saXN0Lmlzc3Vlcy1ib2FyZC5zdGlja3kge1xyXG4gICAgdG9wOiA0MXB4O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gIH1cclxuXHJcbiAgLmNhcmQtZmllbGRzIHtcclxuICAgIC5mbG9hdGluZyB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDVweCAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICBtaW4td2lkdGg6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gICNtYWluID4gI2NvbnRlbnQgI3F1ZXJ5X2Zvcm1bYWN0aW9uKj0nYWdpbGUvYm9hcmQnXSB7XHJcbiAgICBoMiB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggNTAlO1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHggYXV0bztcclxuICAgICAgbWFyZ2luOiAwIC0xMHB4IDMwcHg7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMTAwcHggMTVweCA0NXB4O1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICYgPiBzcGFuOm50aC1sYXN0LWNoaWxkKDEpIHtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIG1hcmdpbjogLTRweCAwIDAgMjBweDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7ZGlzcGxheTogbm9uZTt9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sbGVyLWFnaWxlX2JvYXJkcyB7XHJcbiAgICAjbWFpbiA+ICNjb250ZW50ICB7XHJcbiAgICAgICYgPiAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI21haW4ge1xyXG4gICAgICAuaWNvbi1mdWxsc2NyZWVuIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IC05OTk5OTlweDtcclxuICAgICAgICBsZWZ0OiAgLTk5OTk5OXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmF1dG9zY3JvbGwge1xyXG4gICAgICBvdmVyZmxvdy14OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRhaW5lci1maXhlZCB7XHJcbiAgICAgIG1pbi13aWR0aDogMTAwMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgdGFibGUubGlzdC5pc3N1ZXMtYm9hcmQuc3RpY2t5IHtcclxuICAgICAgdG9wOiA1MXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkLWZpZWxkcyB7XHJcbiAgICAgIC5mbG9hdGluZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgICNjb250ZW50IHtcclxuICAgICAgZmllbGRzZXQuZmlsdGVyLWJveCB7XHJcbiAgICAgICAgLm9wZW4tYm94IHtcclxuICAgICAgICAgIC5hZG1pbi1maWx0ZXIge1xyXG4gICAgICAgICAgICAuY2FyZC1maWVsZHMge1xyXG4gICAgICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5hZ2lsZV9vcHRpb25zX2ZpZWxkIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogU1RBUlQgQUdJTEUgQURNSU4gUEFSVCAqL1xyXG5cclxuICAvKiBTVEFSVCBBR0lMRSBDT0xPUiAqL1xyXG5cclxuICAuY29udHJvbGxlci1hZ2lsZV9jb2xvcnMge1xyXG4gICAgI21haW4gPiAjY29udGVudCB7XHJcbiAgICAgICYgPiBoMiB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuXHJcbiAgICAgICAgLmpjZi1zZWxlY3QsXHJcbiAgICAgICAgLnNlbGVjdDJ7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogRU5EIEFHSUxFIENPTE9SICovXHJcblxyXG4gIC8qIEVORCBBR0lMRSBBRE1JTiBQQVJUICovXHJcblxyXG4gIHRhYmxlLmxpc3QuaXNzdWVzLWJvYXJkIC5pc3N1ZS1jYXJkIGRpdi5xdWljay1lZGl0LWNhcmQge1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgdGFibGUubGlzdC5pc3N1ZXMtYm9hcmQgLmlzc3VlLWNhcmQgZGl2LnF1aWNrLWVkaXQtY2FyZCB7XHJcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gICNjb250ZW50IC5jYXJkLWZpZWxkcyAuZmxvYXRpbmd7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbi1yaWdodDogMDtcclxuICB9XHJcbiAgI21haW4gPiAjY29udGVudCAjcXVlcnlfZm9ybVthY3Rpb24qPSdhZ2lsZS9ib2FyZCddIGgyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWJveCk7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMHB4IDEycHg7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE3cHggYXV0bztcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgLnJldm8taWNvbi1pbmZvIHtcclxuICAgICAgb3JkZXI6IDE7XHJcbiAgICB9XHJcbiAgICAubGl2ZV9zZWFyY2gge1xyXG4gICAgICBvcmRlcjogMjtcclxuICAgIH1cclxuXHJcbiAgICAmID4gc3BhbjpudGgtbGFzdC1jaGlsZCgxKSB7XHJcbiAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgbWFyZ2luOiAxMHB4IDAgMCAhaW1wb3J0YW50O1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogU1RBUlQgQUdJTEUgQURNSU4gUEFSVCAqL1xyXG5cclxuICAvKiBTVEFSVCBBR0lMRSBDT0xPUiAqL1xyXG5cclxuICAuY29udHJvbGxlci1hZ2lsZV9jb2xvcnMge1xyXG5cclxuICAgICNtYWluID4gI2NvbnRlbnQge1xyXG4gICAgICAmID4gaDIge1xyXG5cclxuICAgICAgICAuamNmLXNlbGVjdCxcclxuICAgICAgICAuc2VsZWN0MiB7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogRU5EIEFHSUxFIENPTE9SICovXHJcblxyXG4gIC8qIEVORCBBR0lMRSBBRE1JTiBQQVJUICovXHJcblxyXG59XHJcblxyXG5ib2R5IHtcclxuICAuc2ltcGxlY29sb3JwaWNrZXIge1xyXG4gICAgJi5idXR0b24ge1xyXG4gICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi5waWNrZXIge1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgfVxyXG5cclxuICAgIHNwYW4uY29sb3Ige1xyXG4gICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtYWxsKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250cm9sbGVyLXByb2plY3RzLmFjdGlvbi1zaG93IHtcclxuICAjbWFpbiB7XHJcbiAgICAmID4jY29udGVudCB7XHJcbiAgICAgICNxdWVyeV9mb3JtW2FjdGlvbio9J2FnaWxlL2JvYXJkJ10ge1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIycHggMjJweDtcclxuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDUwJTtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDI1cHg7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgZm9udC1zaXplOiBAZnMxNjtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDIycHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjJweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICBjb250ZW50OiBAYWdpbGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgICAgbGVmdDowO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vKiBFTkQgIEFHSUxFIFBBR0UgKi9cclxuXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcblxyXG4vKiBTVEFSVCBSRURNSU5FVVAgUFJPRFVLVFMgKi9cclxuXHJcbiNjb250ZW50IHtcclxuICBmb3JtIHtcclxuICAgIC50YWJ1bGFyIHtcclxuICAgICAgI3Byb2R1Y3RzX2Zvcm0ge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjcHJvZHVjdHNfaW5wdXRzIHtcclxuICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgJjplbXB0eSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJiArIHNwYW4ge1xyXG4gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICB0b3A6IDA7XHJcbiAgICAgcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ucHJvZHVjdCB7XHJcblxyXG4gIC5yZWRtaW5lLWV2b2x1dGlvbi1hdHRhY2htZW50cyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuXHJcbiAgLnN1YmplY3RfaGVhZGVyIHtcclxuXHJcbiAgICB0ZCB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbXMtdHJhbnNpdGlvbjogIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICYubmFtZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cykgMDstbW96LWJvcmRlci1yYWRpdXM6IDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cykgMDtib3JkZXItcmFkaXVzOiAwIHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpIDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuYXZhdGFyIHtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpIDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGgxIHtcclxuICAgICAgZm9udC1zaXplOiBAZnMxNjtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgbWFyZ2luOiAwIDAgM3B4IDtcclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jcHJvZHVjdHNfZm9ybSB7XHJcbiAgcGFkZGluZy1yaWdodDogMzVweCAhaW1wb3J0YW50O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgLnByb2R1Y3RfZmllbGRzIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgLmRlbGV0ZSB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgcGFkZGluZzowO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICBtYXJnaW46MCA1cHggMCAxMHB4O1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OjI7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgZm9udC1zaXplOjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OjBweDtcclxuICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgIG1pbi13aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IEBkZWw7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIHRvcDowcHg7XHJcbiAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICBjbGVhcjpib3RoO1xyXG4gICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIHotaW5kZXg6MTtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICB0b3A6MHB4O1xyXG4gICAgICBsZWZ0OjBweDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlLWJnKTtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2FjdGl2ZS1iZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmRpc2FibGVkIHtcclxuICAgICAgb3BhY2l0eTogMC4zO1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1kaXNhYmxlZCk7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1kaXNhYmxlZCk7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNtYWluIHtcclxuICB0YWJsZS5wcm9kdWN0LWxpbmVzLmZvcm0ge1xyXG4gICAgdGQge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29udHJvbGxlci1wcm9kdWN0cyB7XHJcbiAgJi5hY3Rpb24tc2hvdyB7XHJcbiAgICAjbWFpbiB7XHJcbiAgICAgIGRpdi5pc3N1ZSB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgaHIge1xyXG4gICAgICAgICAgbWFyZ2luOiAxNXB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgUkVETUlORVVQIFBST0RVS1RTICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBNRURJQSAqL1xyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgI3Byb2R1Y3RzX2Zvcm0ge1xyXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgIGxhYmVsIHtcclxuICAgICAgcGFkZGluZzogNXB4IDAgMTBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5kZWxldGUge1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gIC5wcm9kdWN0LmRldGFpbHMge1xyXG4gICAgLnN1YmplY3RfaGVhZGVyIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcblxyXG4gICAgICB0ciB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCxcclxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDstbW96LWJvcmRlci1yYWRpdXM6IDA7Ym9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLmF2YXRhciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAwO1xyXG4gICAgICAgICAgICBhLFxyXG4gICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDY0cHg7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiA2NHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjY29udGVudCB7XHJcbiAgICAjcHJvZHVjdHNfaW5wdXRzIHtcclxuICAgICAgLnByb2R1Y3RfZmllbGRzIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBwYWRkaW5nOiA1cHggMzVweCA1cHggMDtcclxuICAgICAgICBtYXJnaW46IDVweCAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIC5kZWxldGUge1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgIG1hcmdpbjogLTE1cHggMCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnByb2R1Y3Qge1xyXG4gICAgLnN1YmplY3RfaGVhZGVyIHtcclxuICAgICAgdHIge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICAgIHRkIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xyXG4gIC5wcm9kdWN0IHtcclxuICAgIC5zdWJqZWN0X2hlYWRlciB7XHJcbiAgICAgIHRyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIFNUQVJUIE1FRElBICovXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuXHJcbi8qIFNUQVJUIFJFU09VUkNFUyAqL1xyXG5cclxuI3dyYXBwZXIge1xyXG4gICNxdWVyeV9mb3JtX3dpdGhfYnV0dG9ucyB7XHJcbiAgICAmID4gcC5jb250ZXh0dWFsIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItcmVzb3VyY2VfYm9va2luZ3Mge1xyXG4gIC5jaGFydC10eXBlLm1vbnRoX3ZpZXdfY2hhcnQge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gIH1cclxuICAjcXVlcnlfZm9ybV93aXRoX2J1dHRvbnMge1xyXG4gICAgLmJ1dHRvbnMge1xyXG4gICAgICBtYXgtd2lkdGg6IDcwMHB4O1xyXG4gICAgICBtYXJnaW46IDAgMCAzMHB4O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgICAgI21vbnRocyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnBlcmlvZF9waWNrZXJfaW5wdXQge1xyXG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI21vbnRocyB7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcbiAgICAjcXVlcnlfZGF0ZV9mcm9tLFxyXG4gICAgLnBlcmlvZF9waWNrZXJfaW5wdXQge1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhW2FjY2Vzc2tleT1cInBcIl0sXHJcbiAgYVthY2Nlc3NrZXk9XCJuXCJde1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgcGFkZGluZzogOHB4IDMwcHg7XHJcbiAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvcik7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGhlaWdodDogYXV0bztcclxuXHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWhvdmVyKTtcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWhvdmVyKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNjb250ZW50IC5yZXNvdXJjZS1wbGFubmluZy1jaGFydCB7XHJcbiAgbWFyZ2luOiAwIDAgMjBweDtcclxuXHJcbiAgLmljb24ge1xyXG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICBtaW4taGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgLnRhc2tfZG9uZSB7XHJcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQtYmcpO1xyXG4gIH1cclxuXHJcbiAgLnJlZF9iYXIge1xyXG4gICAgYmFja2dyb3VuZDogIHZhcigtLW5vdGljZS1lcnJvci1iZyk7XHJcbiAgICBib3JkZXItY29sb3I6IHZhcigtLW5vdGljZS1lcnJvci1tYWluKTtcclxuICB9XHJcblxyXG4gIC55ZWxsb3dfYmFyIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW5vdGljZS13b3JuaW5nLWJnKTtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbm90aWNlLXdvcm5pbmctbWFpbik7XHJcbiAgfVxyXG5cclxuICAuZ3JlZW5fYmFyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5vdGljZS1zdWNjZXNzZnUtYmcpO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ub3RpY2Utc3VjY2Vzc2Z1LW1haW4pO1xyXG4gIH1cclxuXHJcbiAgLnRvb2x0aXAge1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIC50aXAge1xyXG4gICAgICAgIGJvcmRlci13aWR0aDogMDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA0cHg7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IG1hcmdpbi10b3AgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBtYXJnaW4tdG9wIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBtYXJnaW4tdG9wIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IG1hcmdpbi10b3AgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogbWFyZ2luLXRvcCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnRpcCB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLW90aGVyKTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgZm9udC1zaXplOiBAZnMxMiAhaW1wb3J0YW50O1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnZnMgIWltcG9ydGFudDtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogdmFyKC0tc21hbGwtYm94LXNoYWRvdyk7XHJcbiAgICAtbW96LWJveC1zaGFkb3c6IHZhcigtLXNtYWxsLWJveC1zaGFkb3cpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tc21hbGwtYm94LXNoYWRvdyk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG1hcmdpbi10b3AgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IG1hcmdpbi10b3AgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogbWFyZ2luLXRvcCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IG1hcmdpbi10b3AgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBtYXJnaW4tdG9wIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgIGEge1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcikgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yZWRfYmFyICsgLnRvb2x0aXA6aG92ZXIge1xyXG4gICAgLnRpcCB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICB2YXIoLS1ub3RpY2UtZXJyb3ItYmcpO1xyXG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLW5vdGljZS1lcnJvci1tYWluKTtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAueWVsbG93X2JhciArIC50b29sdGlwOmhvdmVyIHtcclxuICAgIC50aXAge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ub3RpY2Utd29ybmluZy1iZyk7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbm90aWNlLXdvcm5pbmctbWFpbik7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmdyZWVuX2JhciArIC50b29sdGlwOmhvdmVyIHtcclxuICAgIC50aXAge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ub3RpY2Utc3VjY2Vzc2Z1LWJnKTtcclxuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ub3RpY2Utc3VjY2Vzc2Z1LW1haW4pO1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYgKyB0YWJsZSB7XHJcbiAgICBhIHtcclxuICAgICAgcGFkZGluZzogOHB4IDMwcHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6ZGlzYWJsZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWRpc2FibGVkKTtcclxuICAgICAgICBjdXJzb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWRpc2FibGVkKTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1kaXNhYmxlZCk7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItZGlzYWJsZWQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI3Jlc291cmNlX2Jvb2tpbmdfaXNzdWVfaWQgfiAuc2VsZWN0MiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XHJcbiAgcGFkZGluZzogMCAzMHB4IDAgMzVweDtcclxufVxyXG5cclxuLyogRU5EICBSRVNPVVJDRVMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1SRElBICovXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjUwcHgpIHt9XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gIC5jb250cm9sbGVyLXJlc291cmNlX2Jvb2tpbmdzLmFjdGlvbi1pbmRleCB7XHJcbiAgICAucmVzb3VyY2UtcGxhbm5pbmctY2hhcnQgLnVzZXItc3ViamVjdCxcclxuICAgIC5yZXNvdXJjZS1wbGFubmluZy1jaGFydCAudXNlci1saW5lLFxyXG4gICAgLnJlc291cmNlLXBsYW5uaW5nLWNoYXJ0IC5pc3N1ZS1saW5lIHtcclxuICAgICAgZm9udC1zaXplOiAwLjhlbTtcclxuICAgICAgcGFkZGluZzogMCAycHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItcmVzb3VyY2VfYm9va2luZ3Mge1xyXG4gICAgI3F1ZXJ5X2Zvcm1fd2l0aF9idXR0b25zIHtcclxuICAgICAgLmJ1dHRvbnMge1xyXG4gICAgICAgICNxdWVyeV9kYXRlX2Zyb20ge1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHt9XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU1MHB4KSB7XHJcbiAgLmNvbnRyb2xsZXItcmVzb3VyY2VfYm9va2luZ3MgYVthY2Nlc3NrZXk9XCJwXCJdLFxyXG4gIC5jb250cm9sbGVyLXJlc291cmNlX2Jvb2tpbmdzIGFbYWNjZXNza2V5PVwiblwiXSB7XHJcbiAgICBwYWRkaW5nOiA4cHggMTBweDtcclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTUwcHgpIHt9XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcblxyXG4gIC5jb250cm9sbGVyLXJlc291cmNlX2Jvb2tpbmdzIHtcclxuICAgIC5jaGFydC10eXBlLm1vbnRoX3ZpZXdfY2hhcnQge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIH1cclxuICAgICNxdWVyeV9mb3JtX3dpdGhfYnV0dG9ucyB7XHJcbiAgICAgIC5idXR0b25zIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgICAgICNxdWVyeV9kYXRlX2Zyb20ge1xyXG4gICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAxMHB4IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICNtb250aHMge1xyXG4gICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucmVzb3VyY2UtcGxhbm5pbmctY2hhcnQge1xyXG4gICAgICAmICsgdGFibGUge1xyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBNUkRJQSAqL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEJBQ0tMT0cgKi9cclxuXHJcbiNtYWluIHtcclxuICAmID4gI2NvbnRlbnQge1xyXG4gICAgLmxvYWRfbW9yZSB7XHJcbiAgICAgIG1hcmdpbjogMjBweCAwIDA7XHJcblxyXG4gICAgICAucGFnaW5hdGlvbiB7XHJcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuXHJcbiAgICAgICAgYVtocmVmKj1cImxvYWRfbW9yZVwiXXtcclxuICAgICAgICAgIHBhZGRpbmc6IDhweCAzMHB4O1xyXG4gICAgICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmcpO1xyXG4gICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jY29udGVudCB7XHJcbiAgZm9ybSB7XHJcbiAgICAucGxhbm5pbmctYm9hcmQtd3JhcHBlciB7XHJcbiAgICAgIC5jb2x1bW4taGVhZGVyIHtcclxuICAgICAgICBlbS5pbmZvIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1iZy1mZmYpO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jbWFpbiAucGxhbm5pbmctYm9hcmQge1xyXG5cclxuICAuY29sdW1uLWNvbnRlbnQge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICB9XHJcblxyXG4gIC5zcHJpbnQtbmFtZSxcclxuICAuc3ByaW50LWVzdGltYXRlIHtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIH1cclxuXHJcbiAgLmlzc3VlLWNhcmQge1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgIGJvcmRlci13aWR0aDogMDtcclxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA0cHg7XHJcblxyXG4gICAgLmZpZWxkcyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgcCB7XHJcbiAgICAgICAgbWFyZ2luOiA1cHggMCAwO1xyXG4gICAgICB9XHJcbiAgICAgIC5ob3VycyB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmlzc3VlLWNhcmQ6bm90KC5jb250ZXh0LW1lbnUtc2VsZWN0aW9uKSAuYXR0cmlidXRlc3tcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gIH1cclxuXHJcbiAgLmlzc3VlLWNhcmQgLmF0dHJpYnV0ZXMsXHJcbiAgLmlzc3VlLWNhcmQgc3Bhbi5ob3VycyB7XHJcbiAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgfVxyXG5cclxuICAuY29sdW1uLWhlYWRlciB7XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCk7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAudmVyc2lvbi1uYW1lIHtcclxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucGxhbm5pbmctYm9hcmQtd3JhcHBlciB7XHJcbiAgICAuZGVzY3JpcHRpb24gLmljb24ge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBkaXYucXVpY2stZWRpdC1jYXJkIHtcclxuICAgIHBhZGRpbmc6IDVweDtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4IDAgMCAyMHB4O1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIG9wYWNpdHk6IDAuNztcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiAgYWxsIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogIGFsbCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246ICBhbGwgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWZmZik7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgbWFyZ2luOiAwIDAgMCA0cHg7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrLWdyZXkpO1xyXG5cclxuICAgICAgaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMHB4O1xyXG4gICAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDBweDtcclxuICAgICAgICBsZWZ0OiAwcHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYucXVpY2stZWRpdDphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogQGVkaXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuYWRkLWNvbW1lbnQ6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IEBjb21tZW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGRpdi5zdWItaXNzdWVzIHtcclxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgIHVsIHtcclxuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgbGkge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmluZm8ge1xyXG4gICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XHJcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuXHJcbiAgICAudXNlciB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogMCA1cHggMCAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIHNwYW4uaG91cnMge1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmstZ3JleSk7XHJcbiAgfVxyXG5cclxuICAuaWNvbi1jb21tZW50IHtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgbWluLWhlaWdodDogMTZweDtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgbGluZS1oZWlnaHQ6IEBmczE2O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICB3aWR0aDogMTZweDtcclxuICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICBmb250LXNpemU6IEBmczE2O1xyXG4gICAgICBsaW5lLWhlaWdodDogQGZzMTY7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucXVpY2stY29tbWVudCB7XHJcbiAgICBtYXJnaW46IDEwcHggMCAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICB0ZXh0YXJlYSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgYnV0dG9uW3R5cGU9XCJidXR0b25cIl0sXHJcbiAgICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGZzMTI7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZyk7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yKTtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLW1haW4tYmctaG92ZXIpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tbWFpbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6ZGlzYWJsZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1tYWluLWJnLWRpc2FibGVkKTtcclxuICAgICAgICBjdXJzb3I6IHZhcigtLWJ1dHRvbi1tYWluLWNvbG9yLWRpc2FibGVkKTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idXR0b24tbWFpbi1iZy1kaXNhYmxlZCk7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnV0dG9uLW1haW4tY29sb3ItZGlzYWJsZWQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJiArIGEge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgICBsaW5lLWhlaWdodDogQGZzMTI7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbi1mb250LXdlaWdodCk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvcik7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIsXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbnRleHQtbWVudS1zZWxlY3Rpb24gYSwgLmNvbnRleHQtbWVudS1zZWxlY3Rpb24gYTpob3ZlciB7XHJcbiAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTUVESUEqL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAucGxhbm5pbmctYm9hcmQtd3JhcHBlciB7XHJcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xyXG4gIH1cclxuICAuY29udHJvbGxlci1hZ2lsZV92ZXJzaW9ucyB7XHJcbiAgICAmLmhhcy1mb290ZXIge1xyXG4gICAgICAjbWFpbiB7XHJcbiAgICAgICAgJiA+ICNjb250ZW50IHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjbWFpbiB7XHJcbiAgICAgICYgPiAjY29udGVudCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwIDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MDBweCkge31cclxuLyogRU5EIEJBQ0tMT0cgKi9cclxuXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIERFQUwgKi9cclxuXHJcbiNkZWFsX2Zvcm0ge1xyXG4gIC5kZWFsX2l0ZW1zIHtcclxuICAgIHBhZGRpbmc6IDQwcHggMCAwO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIGxlZ2VuZCB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgfVxyXG5cclxuICAgIHRhYmxlLnByb2R1Y3QtbGluZXMuZm9ybSB7XHJcbiAgICAgIHRyLmxpbmUtdG90YWwge1xyXG5cclxuICAgICAgICB0ZC5hZGQtbGluayB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDVweCAxMHB4IDA7XHJcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMzBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogQGdmcztcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZyk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvcik7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcblxyXG4gICAgICAgICAgJi50b3RhbC1kYXRhLnRvdGFsIHtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweCA1cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0ci5saW5lLXRvdGFsIHtcclxuICAgICAgICB0ZCB7XHJcbiAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRyLmxpbmUge1xyXG4gICAgICAgICYuZmllbGRzIHtcclxuICAgICAgICAgIHRkLml0ZW0ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDVweDtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcblxyXG4gICAgICAgICAgICAuaW5mbyB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAudGF4LWZpZWxkcyxcclxuICAgICAgLmRpc2NvdW50LWZpZWxkcyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcblxyXG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICAgIG1hcmdpbjogMCA1cHggMCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgI25ld19wcm9kdWN0X2NvZGUge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRleHRhcmVhIHtcclxuICAgIG1pbi1oZWlnaHQ6IDQ1cHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIEJPUkQgQk9YICovXHJcbi5zYWxlcy1mdW5uZWwge1xyXG4gIHNwYW4udGFnLWxhYmVsLWNvbG9yIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcclxuICAgIGEsXHJcbiAgICAmID4gc3BhbiB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAtMjBweDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbWFpbik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiNtYWluIHtcclxuICAubGlzdCB7XHJcbiAgICAmLmRlYWwtYm9hcmQge1xyXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgICAgIC1tb3otYm94LXNoYWRvdzogMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTtcclxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTtcclxuICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgdGgge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4yODU3cmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI4NTdyZW07XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRkIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudG90YWwge1xyXG4gICAgICAgIHRoIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuZGVhbC1zdGF0dXMtY29sIHtcclxuXHJcbiAgICAgICAgLmRlYWwtY2FyZCB7XHJcbiAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDRweDtcclxuXHJcbiAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5vcGVuIHtcclxuICAgICAgICAgIC5kZWFsLWNhcmQge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWxpZ2h0LWJnKTtcclxuXHJcbiAgICAgICAgICAgIC5pbmZvIHtcclxuICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi53b24ge1xyXG4gICAgICAgICAgLmRlYWwtY2FyZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbm90aWNlLXN1Y2Nlc3NmdS1tYWluKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbm90aWNlLXN1Y2Nlc3NmdS1iZyk7XHJcblxyXG4gICAgICAgICAgICAuaW5mbyB7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubG9zdCB7XHJcbiAgICAgICAgICAuZGVhbC1jYXJkIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ub3RpY2UtZXJyb3ItbWFpbik7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5vdGljZS1lcnJvci1iZyk7XHJcblxyXG4gICAgICAgICAgICAuaW5mbyB7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnNhbGVzLWZ1bm5lbCB7XHJcbiAgICAgIG1hcmdpbjogMjBweCAwO1xyXG5cclxuICAgICAgLnNhbGVzLWZ1bm5lbCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuXHJcbiAgICAgICAgc3Bhbi50YWctbGFiZWwtY29sb3Ige1xyXG4gICAgICAgICAgZm9udC1zaXplOiBAZnMxMjtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBAZnMxMjtcclxuICAgICAgICAgIG1hcmdpbjogNXB4IDA7XHJcbiAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0aCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctYm94KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnRvdGFsIHtcclxuICAgICAgICB0aCB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuZGVhbHMge1xyXG4gICAgICBtYXJnaW46IDIwcHggMDtcclxuXHJcbiAgICAgIHRoIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudG90YWwge1xyXG4gICAgICAgICYgPiB0aCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgICB0YWJsZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICB0aCB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNpbXBvcnQtZm9ybSB7XHJcbiAgYnV0dG9uW25hbWU9XCJwcmV2aW91c1wiXSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiA4cHggMTVweDtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgbGluZS1oZWlnaHQ6IEBnZnM7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tYnV0dG9uLWZvbnQtd2VpZ2h0KTtcclxuICAgIGNvbG9yOiB2YXIoLS1idXR0b24tY29sb3IpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnKTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgIC1tcy10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcblxyXG4gICAgJjphZnRlcixcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLWJnLWhvdmVyKTtcclxuICAgICAgY29sb3I6IHZhcigtLWJ1dHRvbi1jb2xvci1ob3Zlcik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgQk9SRCBCT1ggKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE9ORSBERUFMICovXHJcblxyXG4jY29udGVudCB7XHJcbiAgZGl2LmRlYWwge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xyXG5cclxuICAgIC5zdWJqZWN0X2hlYWRlciB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmRlYWwtbGluZXMge1xyXG4gICAgICBtYXJnaW46IDAgMCAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zdWJqZWN0X2hlYWRlciB7XHJcbiAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xyXG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cclxuICAgICAgdGQge1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cyk7LW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cyk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKSAwOy1tb3otYm9yZGVyLXJhZGl1czogMCB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKSAwO2JvcmRlci1yYWRpdXM6IDAgdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cykgMDtcclxuICAgICAgICB9XHJcblxyXG5cclxuICAgICAgICAmLmF2YXRhciB7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgIHdpZHRoOiA1N3B4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgaDEge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGZzMjA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgICBtYXJnaW46IDAgMCAzcHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHA6ZW1wdHkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5zdWJqZWN0X2luZm8ge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvcik7XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbjogM3B4IDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICB6LWluZGV4OjE7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aC1zbWFsbCk7XHJcbiAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgtc21hbGwpO1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJltjbGFzcyo9XCJpY29uLW1vbmV5XCJdIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgICAgICAgY29udGVudDogQG1vbmV5O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5pY29uLWRhdGUge1xyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IEBjYWxlbmRhcjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaWNvbi1yb3NldHRlIHtcclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBAcm9zZXR0ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBociB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmxpc3QucHJvZHVjdC1saW5lcyB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcblxyXG4gICAgICB0aGVhZCB7XHJcbiAgICAgICAgdGgge1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgcGFkZGluZzogN3B4IDE0cHg7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLml0ZW0ge1xyXG4gICAgICAgICAgaW1nLmdyYXZhdGFyIHtcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0aCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctYm94KTtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC50b3RhbCB7XHJcbiAgICAgICAgJi5kZWxpbWl0ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctYm94KSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGgge1xyXG4gICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XHJcblxyXG4gICAgICAgICAgJjplbXB0eSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI25vdGVfYXR0cmlidXRlcyB7XHJcblxyXG4gICAgICB0ZXh0YXJlYSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5ib3gge1xyXG4gICAgICAgICYgPiBwLmV4dGVuZGVkLWF0dHJpYnV0ZXMge1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgI25vdGVfYXR0YWNobWVudHMge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2NvbW1lbnRzIHtcclxuICAgIGgzIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgICBwYWRkaW5nOiAwIDAgN3B4O1xyXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIGZvbnQtc2l6ZTogQGZzMTY7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTogLTJweDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgICAgIGhlaWdodDogNHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRhYmxlIHtcclxuICAgICAgaDQge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XHJcblxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICBtaW4td2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbWFsbGVyLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyay1ncmV5KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBPTkUgREVBTCAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgREVBTCBORVcgQURNSU4gUEFHRSAqL1xyXG5cclxuLmNvbnRyb2xsZXItZGVhbF9zdGF0dXNlcy5hY3Rpb24tbmV3IHtcclxuXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgJiA+IC50YWJ1bGFyIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgIC50YWJ1bGFyIHtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKiBFTkQgREVBTCBORVcgQURNSU4gUEFHRSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgU0lERUJBUiAqL1xyXG5cclxuI3NpZGViYXIge1xyXG4gIC5kZWFsc19zdGF0aXN0aWNzICB7XHJcbiAgICB0ciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgIHRkIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nOiA1cHggMDtcclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjplbXB0eSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIFNJREVCQVIgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1FTlUgRk9SIE1PQklMRSAqL1xyXG5cclxuI3dyYXBwZXIge1xyXG4gIC5mbHlvdXQtbWVudSB7XHJcbiAgICAjZGVhbHNfc3RhdGlzdGljcyB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAuY29udGV4dHVhbCB7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHggMCAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMDtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBAc3RhdHM7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6NTAlO1xyXG4gICAgICAgICAgICBtYXJnaW46IC0xM3B4IDAgMDtcclxuICAgICAgICAgICAgbGVmdDo1cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZGVhbHNfc3RhdGlzdGljcyB7XHJcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgdHIge1xyXG5cclxuICAgICAgICB0ZCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJnLWZmZik7XHJcblxyXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGJyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG5cclxuICAgICAgc3Ryb25nIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICBmb250LXNpemU6IDBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMHB4O1xyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTRcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBNRU5VIEZPUiBNT0JJTEUgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1FRElBICovXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gICNtYWluID4gI2NvbnRlbnQgZm9ybSNkZWFsX2Zvcm0ge1xyXG4gICAgLnRhYnVsYXIgcCBsYWJlbDpmaXJzdC1jaGlsZFtmb3I9XCJEZWFsX2l0ZW1zXCJdICsgc3BhbixcclxuICAgIC5ib3ggcCBsYWJlbDpmaXJzdC1jaGlsZFtmb3I9XCJEZWFsX2l0ZW1zXCJdICsgc3BhbiB7XHJcbiAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjY29udGVudCB7XHJcbiAgICAjY29tbWVudHMge1xyXG4gICAgICB0YWJsZSB7XHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmNvbnRyb2xsZXItZGVhbF9zdGF0dXNlcy5hY3Rpb24tbmV3IHtcclxuICAgICNjb250ZW50IHtcclxuICAgICAgJiA+IC50YWJ1bGFyIHtcclxuXHJcbiAgICAgICAgLnRhYnVsYXIge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAjbWFpbiA+ICNjb250ZW50IGZvcm0jZGVhbF9mb3JtIHtcclxuICAgIC50YWJ1bGFyIHAgbGFiZWw6Zmlyc3QtY2hpbGRbZm9yPVwiRGVhbF9pdGVtc1wiXSxcclxuICAgIC5ib3ggcCBsYWJlbDpmaXJzdC1jaGlsZFtmb3I9XCJEZWFsX2l0ZW1zXCJdIHtcclxuICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG4gICNjb250ZW50IHtcclxuICAgIGRpdi5kZWFsIHtcclxuICAgICAgLnN1YmplY3RfaGVhZGVyIHtcclxuICAgICAgICB3aWR0aDogY2FsYyh+JzEwMCUgKyAyMHB4Jyk7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcblxyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCxcclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgI25vdGVfYXR0cmlidXRlcy5ib3gge1xyXG4gICAgICAgICYgPiBwLmV4dGVuZGVkLWF0dHJpYnV0ZXMge1xyXG4gICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAjbm90ZV9ub3RlX3RpbWUge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgZGl2LmRlYWwge1xyXG4gICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2RlYWxfZm9ybSB7XHJcbiAgICAuZGVhbF9pdGVtcyB7XHJcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4IDE1cHg7XHJcblxyXG4gICAgICBsZWdlbmQge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICBsZWZ0OiAtMTBweDtcclxuICAgICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDIwcHgnKTtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIE1FRElBICovXHJcblxyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBFWFBFTlNFUyAqL1xyXG5cclxuLyogU1RBUlQgVEFCTEUgKi9cclxuI21haW4ge1xyXG5cclxuICAjY29udGFjdF9saXN0IHtcclxuICAgICYuZXhwZW5zZV9saXN0IHtcclxuICAgICAgLmxpc3Qge1xyXG4gICAgICAgIHRyLnRvdGFsIHtcclxuXHJcbiAgICAgICAgICAmID4gdGgge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRhY3RzLmV4cGVuc2VzIHtcclxuICAgICAgdGgge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICNleHBlbnNlX2Zvcm0ge1xyXG4gICAgYS5pY29uLW9ubHkge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jZXhwZW5zZV9jb250YWN0X2lkX2FkZF9saW5rIHtcclxuICBpbWcge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBUQUJMRSAqL1xyXG5cclxuXHJcblxyXG4vKiBTVEFSVCBFWFBFTlNFUyovXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gICNtYWluIHtcclxuICAgICNleHBlbnNlX2Zvcm0ge1xyXG4gICAgICBhLmljb24tb25seSB7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUwMHB4KSB7fVxyXG4vKiBFTkQgQUNUSVZJVFkgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgT1BFUkFUSU9OUyAqL1xyXG5cclxuI21haW4gICNjb250YWN0X2xpc3QgLmxpc3Qub3BlcmF0aW9ucyB7XHJcbiAgLnRvdGFsIHtcclxuICAgICYgPiB0aCB7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ub3BlcmF0aW9uX2xpc3QgdHIubm90LWFwcHJvdmVkIHRkLFxyXG4ub3BlcmF0aW9uX2xpc3QgdGFibGUubGlzdCB0Ym9keSB0ci5ub3QtYXBwcm92ZWQ6aG92ZXIgdGR7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tbm90aWNlLWVycm9yLWJnKTtcclxuICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICBjb2xvcjogdmFyKC0tcHJpb3JpdHktNSk7XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE9ORSBPUEVSQVRJT05TICovXHJcblxyXG4jbWFpbiB7XHJcbiAgZGl2Lmlzc3VlIHtcclxuICAgICYub3BlcmF0aW9uIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgIGhyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAjaW52b2ljZXMsXHJcbiAgICAgICNyZWxhdGlvbnMge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAzMHB4IDEwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIC0zMHB4IDIwcHg7XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICAgJiA+IHN0cm9uZyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbnRleHR1YWwge1xyXG4gICAgICAgICAgcmlnaHQ6IDMwcHg7XHJcblxyXG4gICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgcGFkZGluZzowO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OjI7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6MHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBjb250ZW50OiBAbmV3LW9iamVjdDtcclxuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgdG9wOjBweDtcclxuICAgICAgICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG5cclxuICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2hvdmVyLWJnKTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAjcmVsYXRpb25zIHtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItY29udGVudCk7XHJcbiAgICAgICAgbWFyZ2luOiAwIC0zMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBhW2hyZWYqPVwiLnBkZlwiXSB7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzowO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6MjtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgZm9udC1zaXplOjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDowcHg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OiBAcGRmO1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICAgIGhlaWdodDoxMDAlO1xyXG4gICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWljb24tc21hbGxlci1mb250LXNpemUpO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgICBsZWZ0OjBweDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uX2NvbG9yX2FjdGl2ZS1iZyk7XHJcblxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnX2FjdGl2ZS1iZyk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuZGlzYWJsZWQge1xyXG4gICAgICAgICAgb3BhY2l0eTogMC4zO1xyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1kaXNhYmxlZCk7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1kaXNhYmxlZCk7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuXHJcbiAgICAgIC5pY29uLWludm9pY2Uge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogQGZzMTI7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOy1tb3otYm9yZGVyLXJhZGl1czogMDtib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDMwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyLWJnKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXItYmcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIG1hcmdpbjogLTEzcHggMCAwO1xyXG4gICAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmFtb3VudCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmNvbnRhY3Qge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmNvbnRhY3Qge1xyXG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItb3BlcmF0aW9ucyB7XHJcbiAgI2NvbW1lbnRzIHtcclxuICAgIGg0IHtcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgLmdyYXZhdGFyIHtcclxuICAgICAgICBtYXJnaW46IDAgNXB4IDhweCAwO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTstbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyogRU5EIE9ORSBPUEVSQVRJT05TICovXHJcblxyXG4vKiBFTkQgT1BFUkFUSU9OUyAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgTUVESUEqL1xyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAjbWFpbiBkaXYuaXNzdWUub3BlcmF0aW9uICNpbnZvaWNlcyAuY29udGV4dHVhbCBhOmJlZm9yZSxcclxuICAjbWFpbiBkaXYuaXNzdWUub3BlcmF0aW9uICNyZWxhdGlvbnMgLmNvbnRleHR1YWwgYTpiZWZvcmUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgI21haW4gZGl2Lmlzc3VlLm9wZXJhdGlvbiAjaW52b2ljZXMgcCxcclxuICAjbWFpbiBkaXYuaXNzdWUub3BlcmF0aW9uICNyZWxhdGlvbnMgcCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAxMHB4IDAgMDtcclxuXHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIGFbZGF0YS1tZXRob2Q9XCJkZWxldGVcIl0ge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gIGJvZHkge1xyXG4gICAgLm5ld19vcGVyYXRpb24ge1xyXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSArIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICBtYXJnaW46IDEwcHggMCAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLyogRU5EIElOVk9DRSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG4vKiBTVEFSVCBPUkRFUlMgKi9cclxuXHJcbi5jb250cm9sbGVyLW9yZGVycyB7XHJcbiAgI21haW4ge1xyXG4gICAgZGl2Lmlzc3VlIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgIGhyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2ludm9pY2VzIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ib3gpO1xyXG4gICAgICBwYWRkaW5nOiAxNXB4IDMwcHggMDtcclxuICAgICAgbWFyZ2luOiAwIC0zMHB4IDIwcHg7XHJcblxyXG4gICAgICAuaWNvbixcclxuICAgICAgLmljb24taW52b2ljZSArIGFbaHJlZio9XCJpbnZvaWNlc1wiXXtcclxuICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbl9iZ19ob3Zlci1iZyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaHIge1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICNjb21tZW50cyB7XHJcbiAgICAgIGg0IHtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWNvbnRlbnQpICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgIC5ncmF2YXRhciB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgNXB4IDhweCAwO1xyXG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpOy1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGEuaWNvbi1vcmRlciB7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICBmb250LXNpemU6IEBmczEyO1xyXG4gICAgICBsaW5lLWhlaWdodDogQGdsaDtcclxuICAgICAgcGFkZGluZzogMCAwIDAgMzBweCAhaW1wb3J0YW50O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7LW1vei1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAgICY6YWZ0ZXIsXHJcbiAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAtMTNweCAwIDA7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZy1iZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IEBjYXJ0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRlYWwtbGluZXMge1xyXG4gICAgICBtYXJnaW46IDAgMCAzMHB4O1xyXG5cclxuICAgICAgLmxpc3QucHJvZHVjdC1saW5lcyB7XHJcbiAgICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG5cclxuICAgICAgICB0ZCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiA3cHggMTRweDtcclxuXHJcbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICYuaXRlbSB7XHJcbiAgICAgICAgICAgIGltZy5ncmF2YXRhciB7XHJcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWJveCk7XHJcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudG90YWwge1xyXG4gICAgICAgICAgJi5kZWxpbWl0ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1ib3gpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgdGgge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG5cclxuICAgICAgICAgICAgJjplbXB0eSB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdGFibGUucHJvZHVjdC1saW5lcy5mb3JtIHRkLnByb2R1Y3QtaW1hZ2Uge1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge31cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTAwcHgpIHt9XHJcbi8qIEVORCBPUkRFUlMqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcblxyXG5cclxuLyogU1RBUlQgUkVETUlORVVQIEZBVk9SSVRFIFBST0pFQ1RTICovXHJcblxyXG4jbWFpbiA+ICNjb250ZW50IHtcclxuICAjcHJvamVjdHNfbGlzdCB7XHJcblxyXG4gICAgLnByb2plY3RfY2FyZCB7XHJcbiAgICAgIGg0IHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3ItdGV4dCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246ICBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcbiAgICAgIC5wYXJlbnQge1xyXG4gICAgICAgIGRpdiB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvci10ZXh0KTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBoNCxcclxuICAgICAgICAgIGRpdiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNwcm9qZWN0c19saXN0IHtcclxuICBkaXYjcHJvamVjdHMge1xyXG4gICAgLnJvdyB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY2FyZCB7XHJcbiAgICBtYXJnaW46IDAgMjBweCAyMHB4IDA7XHJcbiAgfVxyXG5cclxuICAucHJvamVjdF9jYXJkIHtcclxuICAgIHBhZGRpbmc6MCAxNXB4IDU1cHggMTVweDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodC1iZyk7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgIC50YWdzIHtcclxuICAgICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xyXG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgIH1cclxuXHJcbiAgICBhW2RhdGEtbWV0aG9kPVwiZGVsZXRlXCJdOmFmdGVyLFxyXG4gICAgYVtocmVmKj1cIi9mYXZvcml0ZV9wcm9qZWN0cy9mYXZvcml0ZVwiXTphZnRlciB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICBhW2RhdGEtbWV0aG9kPVwiZGVsZXRlXCJdW2hyZWYqPVwiL2Zhdm9yaXRlX3Byb2plY3RzL3VuZmF2b3JpdGVcIl06YWZ0ZXIsXHJcbiAgICBhW2hyZWYqPVwiL2Zhdm9yaXRlX3Byb2plY3RzL2Zhdm9yaXRlXCJdW2hyZWYqPVwiL2Zhdm9yaXRlX3Byb2plY3RzL3VuZmF2b3JpdGVcIl06YWZ0ZXIge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICB9XHJcblxyXG4gICAgaDQge1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2ZzO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAucGFyZW50IHtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIHBhZGRpbmc6IDZweCAxMXB4IDZweCAxMHB4O1xyXG4gICAgICBtYXJnaW46IDAgLTE1cHg7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGJvcmRlcjogNHB4IHNvbGlkIHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICBib3JkZXItbGVmdDogMDtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246ICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yLXRleHQpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wZW9wbGUge1xyXG4gICAgICBib3R0b206IDEwcHg7XHJcbiAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSAtIDMwcHgnKTtcclxuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAgLTE1cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpudGgtY2hpbGQoNykge1xyXG4gICAgICAgICAgJiB+IHNwYW4ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnLi4uJztcclxuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1haW4pO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogMTAwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRpdGxlIHtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgcGFkZGluZzogNXB4IDA7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc3VkZXItZGFyay1ncmV5KTtcclxuXHJcbiAgICAgIGg0IHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tYWluKTtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiAgY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogIGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRlc2NyaXB0aW9uIHtcclxuICAgICAgY29sb3I6IHZhcigtLXN1ZGVyLWRhcmstZ3JleSk7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnRhZ3Mge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6NTAlO1xyXG4gICAgICAgIGxlZnQ6MDtcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgaGVpZ2h0OjIwcHg7XHJcbiAgICAgICAgd2lkdGg6MjBweDtcclxuICAgICAgICBtYXJnaW46IC0xM3B4IDAgMDtcclxuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHotaW5kZXg6MTtcclxuICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItYmcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudGFnLWxhYmVsLWNvbG9yIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6ZW1wdHkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgZGl2LnByb2plY3RfY2FyZCBkaXYudGl0bGUge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcclxuICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICB9XHJcbn1cclxuXHJcbi8qIEVORCBSRURNSU5FVVAgRkFWT1JJVEUgUFJPSkVDVFMgKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIE1FRElBKi9cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gICNtYWluID4gI2NvbnRlbnQge1xyXG4gICAgI3Byb2plY3RzX2xpc3Qge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAjcHJvamVjdHNfbGlzdCB7XHJcblxyXG4gICAgZGl2I3Byb2plY3RzIHtcclxuICAgICAgLnJvdyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC01cHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSArIDEwcHgnKTtcclxuXHJcbiAgICAgICAgLmNhcmQge1xyXG4gICAgICAgICAgd2lkdGg6IDMzLjMzMzMlO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucHJvamVjdF9jYXJkIHtcclxuICAgICAgbWFyZ2luOiAwIDVweCAxMHB4O1xyXG4gICAgICB3aWR0aDogY2FsYyh+JzEwMCUgLSAxMHB4Jyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcbiAgI3Byb2plY3RzX2xpc3Qge1xyXG4gICAgZGl2I3Byb2plY3RzIHtcclxuICAgICAgLnJvdyB7XHJcblxyXG4gICAgICAgIC5jYXJkIHtcclxuICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xyXG4gICNwcm9qZWN0c19saXN0IHtcclxuICAgIGRpdiNwcm9qZWN0cyB7XHJcbiAgICAgIC5yb3cge1xyXG5cclxuICAgICAgICAuY2FyZCB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGh0dHBzOi8vcmVkbWluZS1ldm9sdXRpb24uY29tLyAtLSAqL1xyXG5cclxuLyogU1RBUlQgUkVETUlORSBEUklWRSBQQUdFICovXHJcblxyXG4jbWFpbiB7XHJcbiAgaDIuZHJpdmVfaGVhZGVyIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tY29sb3IvZHJpdmUuc3ZnKTt9XHJcbiAgI2RyaXZlLWVudHJpZXMgdGFibGUuZmlsZXMgdGhlYWQgdGgsXHJcbiAgI2RyaXZlLWVudHJpZXMgdGFibGUuZmlsZXMgdGJvZHkgdGQge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgfVxyXG59XHJcblxyXG4uY29udHJvbGxlci1kcml2ZV9lbnRyaWVzICNtYWluIHtcclxuICAuZmlsZW5hbWUge1xyXG4gICAgYS5pY29uIHtcclxuICAgICAgcGFkZGluZzogMCAwIDAgMzVweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIGZvbnQtc2l6ZTogQGdmcztcclxuICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuXHJcbiAgICAgICY6YWZ0ZXIsXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICB3aWR0aDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2ZpbGVzLXNpZGViYXItbWVudSB7XHJcbiAgICBhLmljb24ge1xyXG4gICAgICBwYWRkaW5nOiAwIDAgMCAzNXB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taWNvbi13aWR0aCk7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgZm9udC1zaXplOiBAZ2ZzO1xyXG5cclxuICAgICAgJjphZnRlcixcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXdpZHRoKTtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWljb24td2lkdGgpO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29udHJvbGxlci1kcml2ZV9lbnRyaWVzIHtcclxuICAjY29weS1tb2RhbC1mb3JtLFxyXG4gICNtb3ZlLW1vZGFsLWZvcm0ge1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpO1xyXG4gICAgbWFyZ2luOiAtMjBweDtcclxuICAgIHBhZGRpbmc6IDAgMCAyMHB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctZmZmKTtcclxuXHJcblxyXG4gICAgLmJveCB7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICB0YWJsZSNmb2xkZXJzIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1jb250ZW50KTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuXHJcbiAgICAgIHRkIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZXhwYW5kZXIge1xyXG4gICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgIG1hcmdpbi10b3A6IDJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNuZXctZmlsZXMtZm9ybSB7XHJcbiAgICAuYnV0dG9ucyB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5kaXYubW9kYWwge1xyXG5cclxuICAjZmlsZS1leHBsb3JlciB7XHJcbiAgICB3aWR0aDogY2FsYygxMDAlICsgNDBweCk7XHJcbiAgICBtYXJnaW46IC0yMHB4IC0yMHB4IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1mZmYpO1xyXG5cclxuICAgIC5icmVhZGNydW1iIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIHRhYmxlIHtcclxuICAgICAgdGgsXHJcbiAgICAgIHRkIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmb3JtW2FjdGlvbio9XCIvZHJpdmUvY3JlYXRlX2ZpbGVzXCJdIHtcclxuICAgIC5hdHRhY2htZW50c19mb3JtIHtcclxuICAgICAgLmRlc2NyaXB0aW9uIHtcclxuICAgICAgICBtYXJnaW46IDVweCAwIDVweCAwIWltcG9ydGFudDtcclxuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzZweCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5hdHRhY2htZW50c19maWVsZHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAmID4gc3BhbiB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1jb2xvci1kYXJrLWdyZXkpO1xyXG4gICAgICAgICAgcGFkZGluZzogMCAwIDVweDtcclxuICAgICAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaWNvbi1vbmx5IHtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmctYmcpO1xyXG4gICAgICB9XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWJnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlci1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI3NoYXJlLW1vZGFsLWZvcm0ge1xyXG4gIC5wdWJsaWMtbGluayB7XHJcbiAgICAuZmlsbGVyIHtcclxuICAgICAgcGFkZGluZzogMCA1cHggMCAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcCB7XHJcbiAgICAuaW5saW5lLFxyXG4gICAgLmlubGluZSArIGxhYmVsIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgIH1cclxuICAgIC5leHBpcmVzIHtcclxuICAgICAgcGFkZGluZy10b3A6IDJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC51aS13aWRnZXQtY29udGVudCBhIHtcclxuICAgIHNwYW4ge1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgc3BhbiB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXItYmcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8qIFNUQVJUIEFETUlOICovXHJcbiNzZXR0aW5nc19zdG9yYWdlX3NpemUge1xyXG4gIG1hcmdpbi1yaWdodDogMTBweDtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAjbWFpbj4jY29udGVudCBmb3JtIC5ib3ggcCAjc2V0dGluZ3Nfc3RvcmFnZV9zaXplIHtcclxuICAgIG1pbi13aWR0aDogY2FsYygxMDAlIC0gNTBweCkgIWltcG9ydGFudDtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gaHR0cHM6Ly9yZWRtaW5lLWV2b2x1dGlvbi5jb20vIC0tICovXHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuXHJcbi8qIFNUQVJUIFJFRE1JTkVVUCBDTVMgUExBR0lOICovXHJcblxyXG4jY29udGVudCB7XHJcbiAgZm9ybSB7XHJcbiAgICAjc2V0dGluZ3NfY2FjaGVfZXhwaXJlc19pbiB7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gICN0b3AtbWVudSB7XHJcbiAgICB1bC5tZW51LWNoaWxkcmVuIHtcclxuICAgICAgJiA+IGxpIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGxpIHtcclxuICAgICAgdWwubWVudS1jaGlsZHJlbiB7XHJcbiAgICAgICAgdG9wOiAzMHB4O1xyXG5cclxuICAgICAgICAuY21zIHtcclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3NldHRpbmdzX2NhY2hlX2V4cGlyZXNfaW4ge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgfVxyXG5cclxuICAjdGFiLWNvbnRlbnQtcGFnZV9maWVsZHMge1xyXG4gICAgLmFkZC10by10YWJsZSB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcbiAgICAgIHRleHQtYWxpZ246IGVuZDtcclxuICAgIH1cclxuICAgIHRhYmxlLmxpc3Qge1xyXG4gICAgICB0aCB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNtcy1wYWdlLXRhZ3MtZWRpdCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gICYuY29udHJvbGxlci1jbXNfcGFydHMgLkNvZGVNaXJyb3IsXHJcbiAgJi5jb250cm9sbGVyLWNtc19wYWdlcyAjdGFiLWNvbnRlbnQtY29udGVudCBwLFxyXG4gICYuY29udHJvbGxlci1jbXNfcGFnZXMgI3RhYi1jb250ZW50LWNvbnRlbnQgLkNvZGVNaXJyb3IsXHJcbiAgI2Ntc19sYXlvdXRfY29udGVudCB+IC5Db2RlTWlycm9yLFxyXG4gICNjbXNfc25pcHBldF9jb250ZW50IH4gLkNvZGVNaXJyb3Ige1xyXG4gICAgbWFyZ2luOiAxMHB4IDAgMCAwIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbiNtYWluIHtcclxuICAub3BlbiAuaWNvbi1mb2xkZXIge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICB9XHJcblxyXG4gICNzaWRlYmFyIHtcclxuICAgICNjbXMtc2V0dGluZ3MtbWVudSB7XHJcbiAgICAgIC5pY29uIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBnbGg7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICAgIHBhZGRpbmc6IDRweCA1cHggNHB4IDMycHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIsXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY29uX2JnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3IpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1ob3Zlcik7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmdfaG92ZXIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLnNlbGVjdGVkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMzJweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1tYWluX2NvbG9yKTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0tbWFpbl9jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmb3JtW2FjdGlvbio9XCIvY21zL2Fzc2V0c1wiXSB7XHJcbiAgICAuYXV0b3Njcm9sbCB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29udHJvbGxlci1jbXNfcGFnZXMgLmNvbnRleHR1YWwucGFnZS1lZGl0IHtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgYm9yZGVyOiAwO1xyXG5cclxuICBociB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItY21zX2Fzc2V0cyB7XHJcbiAgI21haW4ge1xyXG4gICAgLnRhYnVsYXIgLmJveCB7XHJcbiAgICAgIGEuaWNvbi1vbmx5IHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yLWhvdmVyKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBodHRwczovL3JlZG1pbmUtZXZvbHV0aW9uLmNvbS8gLS0gKi9cclxuLmNvbnRyb2xsZXItY21zX21lbnVzIHtcclxuICAjY21zX21lbnVzIHtcclxuICAgIGFbaHJlZio9XCJoaWdoZXN0XCJdLFxyXG4gICAgYVtocmVmKj1cImhpZ2hlclwiXSxcclxuICAgIGFbaHJlZio9XCJsb3dlclwiXSxcclxuICAgIGFbaHJlZio9XCJsb3dlc3RcIl0ge1xyXG4gICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgcGFkZGluZzowO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgd2lkdGg6IHZhcigtLWljb24tc21hbGxlci13aWR0aCk7XHJcbiAgICAgIG1hcmdpbjowIDVweDtcclxuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgei1pbmRleDoyO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgZm9udC1zaXplOjBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6MHB4O1xyXG4gICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvci1iZyk7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgIG1pbi13aWR0aDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgbWluLWhlaWdodDogdmFyKC0taWNvbi1zbWFsbGVyLXdpZHRoKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1vei10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgLW1zLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAtby10cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICB0b3A6MHB4O1xyXG4gICAgICAgIGxlZnQ6MHB4O1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICBoZWlnaHQ6MTAwJTtcclxuICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgIG1hcmdpbjowO1xyXG4gICAgICAgIG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiB2YXIoLS1pY29uLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgei1pbmRleDoxO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pY29uLXNtYWxsZXItd2lkdGgpO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHRvcDowcHg7XHJcbiAgICAgICAgbGVmdDowcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWljb25fYmcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IHZhcigtLWljb24tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWNvbi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZCB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb24tY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19ob3Zlcik7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5zZWxlY3RlZCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljb25fY29sb3JfYWN0aXZlKTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taWNvbl9iZ19hY3RpdmUpO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuZGlzYWJsZWQge1xyXG4gICAgICAgIG9wYWNpdHk6IDAuMztcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbl9jb2xvcl9hY3RpdmUpO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbnRyb2xsZXItY21zX3BhZ2VzLFxyXG4uY29udHJvbGxlci1jbXNfcGFydHMge1xyXG4gICNjb250ZW50IHtcclxuICAgIGRpdi50YWJzIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBtYXJnaW46MCAwIDIwcHg7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgei1pbmRleDoyO1xyXG4gICAgICBmb250LXNpemU6IEBnZnM7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBAZ2xoO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBoZWlnaHQ6IDUwcHg7XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgY2xlYXI6Ym90aDtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206MXB4O1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJiA+IHVsIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICBmb250LXNpemU6IDA7XHJcblxyXG4gICAgICAgICYgPiBsaSB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuXHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAxNXB4IDAgMDtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IEBnZmY7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMCAxNXB4O1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgIGNvbG9yOiBAZ3JleTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBAZnMxNjtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10aW1lLWhvdmVyKSBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgICAgICYuc2VsZWN0ZWQsXHJcbiAgICAgICAgICAgICYucGFnZSB7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tY29sb3IpO1xyXG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG5cclxuICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAgdmFyKC0tY29sb3ItbWFpbi1jb2xvcik7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICAgIGNsZWFyOmJvdGg7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgYm90dG9tOjBweDtcclxuICAgICAgICAgICAgICBsZWZ0OjUwJTtcclxuICAgICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IDNweDtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1tYWluLWNvbG9yKTtcclxuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBsZWZ0IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogd2lkdGggdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQsIGxlZnQgdmFyKC0tdGltZS1ob3ZlcikgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBsZWZ0IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBsZWZ0IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0LCBsZWZ0IHZhcigtLXRpbWUtaG92ZXIpIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ== */
