.aside {
  background-color: #1e1e2d;
}
.aside .aside-menu.ps > .ps__rail-x {
  background-color: transparent;
}
.aside .aside-menu.ps > .ps__rail-x:hover, .aside .aside-menu.ps > .ps__rail-x:focus {
  opacity: 1;
  background-color: transparent;
}
.aside .aside-menu.ps > .ps__rail-x:hover > .ps__thumb-x, .aside .aside-menu.ps > .ps__rail-x:focus > .ps__thumb-x {
  opacity: 1;
}
.aside .aside-menu.ps > .ps__rail-x > .ps__thumb-x {
  background-color: #637099;
  opacity: 1;
}
.aside .aside-menu.ps > .ps__rail-x > .ps__thumb-x:hover, .aside .aside-menu.ps > .ps__rail-x > .ps__thumb-x:focus {
  opacity: 1;
  background-color: #637099;
}
.aside .aside-menu.ps > .ps__rail-y {
  background-color: transparent;
}
.aside .aside-menu.ps > .ps__rail-y:hover, .aside .aside-menu.ps > .ps__rail-y:focus {
  background-color: transparent;
  opacity: 1;
}
.aside .aside-menu.ps > .ps__rail-y:hover > .ps__thumb-y, .aside .aside-menu.ps > .ps__rail-y:focus > .ps__thumb-y {
  opacity: 1;
}
.aside .aside-menu.ps > .ps__rail-y > .ps__thumb-y {
  background: #637099;
  opacity: 1;
}
.aside .aside-menu.ps > .ps__rail-y > .ps__thumb-y:hover, .aside .aside-menu.ps > .ps__rail-y > .ps__thumb-y:focus {
  opacity: 1;
  background: #637099;
}

.aside-menu {
  background-color: #1e1e2d;
}
.aside-menu .menu-nav > .menu-item > .menu-heading .menu-text,
.aside-menu .menu-nav > .menu-item > .menu-link .menu-text {
  color: #a2a3b7;
}
.aside-menu .menu-nav > .menu-item > .menu-heading .menu-icon,
.aside-menu .menu-nav > .menu-item > .menu-link .menu-icon {
  color: #494b74;
}
.aside-menu .menu-nav > .menu-item > .menu-heading .menu-icon.svg-icon svg g [fill],
.aside-menu .menu-nav > .menu-item > .menu-link .menu-icon.svg-icon svg g [fill] {
  transition: fill 0.3s ease;
  fill: #494b74;
}
.aside-menu .menu-nav > .menu-item > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
.aside-menu .menu-nav > .menu-item > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
  transition: fill 0.3s ease;
}
.aside-menu .menu-nav > .menu-item > .menu-heading .menu-bullet.menu-bullet-dot > span,
.aside-menu .menu-nav > .menu-item > .menu-link .menu-bullet.menu-bullet-dot > span {
  background-color: #5c5e81;
}
.aside-menu .menu-nav > .menu-item > .menu-heading .menu-bullet.menu-bullet-line > span,
.aside-menu .menu-nav > .menu-item > .menu-link .menu-bullet.menu-bullet-line > span {
  background-color: #5c5e81;
}
.aside-menu .menu-nav > .menu-item > .menu-heading .menu-arrow,
.aside-menu .menu-nav > .menu-item > .menu-link .menu-arrow {
  color: #5c5e81;
}
.aside-menu .menu-nav > .menu-item.menu-item-open {
  transition: background-color 0.3s;
}
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-heading,
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-link {
  background-color: #1b1b28;
}
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-heading .menu-text,
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-link .menu-text {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-heading .menu-icon,
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-link .menu-icon {
  color: #3699FF;
}
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-heading .menu-icon.svg-icon svg g [fill],
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-link .menu-icon.svg-icon svg g [fill] {
  transition: fill 0.3s ease;
  fill: #3699FF;
}
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
  transition: fill 0.3s ease;
}
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-heading .menu-bullet.menu-bullet-dot > span,
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-link .menu-bullet.menu-bullet-dot > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-heading .menu-bullet.menu-bullet-line > span,
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-link .menu-bullet.menu-bullet-line > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-heading .menu-arrow,
.aside-menu .menu-nav > .menu-item.menu-item-open > .menu-link .menu-arrow {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item.menu-item-here {
  transition: background-color 0.3s;
}
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-heading,
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-link {
  background-color: #1b1b28;
}
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-heading .menu-text,
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-link .menu-text {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-heading .menu-icon,
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-link .menu-icon {
  color: #3699FF;
}
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-heading .menu-icon.svg-icon svg g [fill],
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-link .menu-icon.svg-icon svg g [fill] {
  transition: fill 0.3s ease;
  fill: #3699FF;
}
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
  transition: fill 0.3s ease;
}
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-heading .menu-bullet.menu-bullet-dot > span,
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-link .menu-bullet.menu-bullet-dot > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-heading .menu-bullet.menu-bullet-line > span,
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-link .menu-bullet.menu-bullet-line > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-heading .menu-arrow,
.aside-menu .menu-nav > .menu-item.menu-item-here > .menu-link .menu-arrow {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item.menu-item-active {
  transition: background-color 0.3s;
}
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-heading,
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-link {
  background-color: #1b1b28;
}
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-heading .menu-text,
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-link .menu-text {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-heading .menu-icon,
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-link .menu-icon {
  color: #3699FF;
}
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-heading .menu-icon.svg-icon svg g [fill],
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-link .menu-icon.svg-icon svg g [fill] {
  transition: fill 0.3s ease;
  fill: #3699FF;
}
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
  transition: fill 0.3s ease;
}
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-heading .menu-bullet.menu-bullet-dot > span,
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-link .menu-bullet.menu-bullet-dot > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-heading .menu-bullet.menu-bullet-line > span,
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-link .menu-bullet.menu-bullet-line > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-heading .menu-arrow,
.aside-menu .menu-nav > .menu-item.menu-item-active > .menu-link .menu-arrow {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover {
  transition: background-color 0.3s;
}
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading,
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link {
  background-color: #1b1b28;
}
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-text,
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-text {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-icon,
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-icon {
  color: #3699FF;
}
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-icon.svg-icon svg g [fill],
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-icon.svg-icon svg g [fill] {
  transition: fill 0.3s ease;
  fill: #3699FF;
}
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
  transition: fill 0.3s ease;
}
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-bullet.menu-bullet-dot > span,
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-bullet.menu-bullet-dot > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-bullet.menu-bullet-line > span,
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-bullet.menu-bullet-line > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-arrow,
.aside-menu .menu-nav > .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-arrow {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item > .menu-arrow {
  color: #1e1e2d;
}
.aside-menu .menu-nav > .menu-section .menu-text {
  color: #4c4e6f;
}
.aside-menu .menu-nav > .menu-section .menu-icon {
  color: #4c4e6f;
}
.aside-menu .menu-nav > .menu-separator {
  border-bottom: 1px solid #4c4e6f;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item > .menu-heading .menu-text,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item > .menu-link .menu-text {
  color: #9899ac;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item > .menu-heading .menu-icon,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item > .menu-link .menu-icon {
  color: #494b74;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item > .menu-heading .menu-icon.svg-icon svg g [fill],
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item > .menu-link .menu-icon.svg-icon svg g [fill] {
  transition: fill 0.3s ease;
  fill: #494b74;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
  transition: fill 0.3s ease;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item > .menu-heading .menu-bullet.menu-bullet-dot > span,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item > .menu-link .menu-bullet.menu-bullet-dot > span {
  background-color: #5c5e81;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item > .menu-heading .menu-bullet.menu-bullet-line > span,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item > .menu-link .menu-bullet.menu-bullet-line > span {
  background-color: #5c5e81;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item > .menu-heading .menu-arrow,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item > .menu-link .menu-arrow {
  color: #5c5e81;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open {
  transition: background-color 0.3s;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-heading,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-link {
  background-color: #1b1b28;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-heading .menu-text,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-link .menu-text {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-heading .menu-icon,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-link .menu-icon {
  color: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-heading .menu-icon.svg-icon svg g [fill],
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-link .menu-icon.svg-icon svg g [fill] {
  transition: fill 0.3s ease;
  fill: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
  transition: fill 0.3s ease;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-heading .menu-bullet.menu-bullet-dot > span,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-link .menu-bullet.menu-bullet-dot > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-heading .menu-bullet.menu-bullet-line > span,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-link .menu-bullet.menu-bullet-line > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-heading .menu-arrow,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-open > .menu-link .menu-arrow {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here {
  transition: background-color 0.3s;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here > .menu-heading,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here > .menu-link {
  background-color: #1b1b28;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here > .menu-heading .menu-icon,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here > .menu-link .menu-icon {
  color: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here > .menu-heading .menu-icon.svg-icon svg g [fill],
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here > .menu-link .menu-icon.svg-icon svg g [fill] {
  transition: fill 0.3s ease;
  fill: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
  transition: fill 0.3s ease;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here > .menu-heading .menu-bullet.menu-bullet-dot > span,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here > .menu-link .menu-bullet.menu-bullet-dot > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here > .menu-heading .menu-bullet.menu-bullet-line > span,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here > .menu-link .menu-bullet.menu-bullet-line > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here > .menu-heading .menu-arrow,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-here > .menu-link .menu-arrow {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active {
  transition: background-color 0.3s;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-heading,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-link {
  background-color: #1b1b28;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-heading .menu-text,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-link .menu-text {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-heading .menu-icon,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-link .menu-icon {
  color: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-heading .menu-icon.svg-icon svg g [fill],
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-link .menu-icon.svg-icon svg g [fill] {
  transition: fill 0.3s ease;
  fill: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
  transition: fill 0.3s ease;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-heading .menu-bullet.menu-bullet-dot > span,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-link .menu-bullet.menu-bullet-dot > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-heading .menu-bullet.menu-bullet-line > span,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-link .menu-bullet.menu-bullet-line > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-heading .menu-arrow,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item.menu-item-active > .menu-link .menu-arrow {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover {
  transition: background-color 0.3s;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link {
  background-color: #1b1b28;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-text,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-text {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-icon,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-icon {
  color: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-icon.svg-icon svg g [fill],
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-icon.svg-icon svg g [fill] {
  transition: fill 0.3s ease;
  fill: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
  transition: fill 0.3s ease;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-bullet.menu-bullet-dot > span,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-bullet.menu-bullet-dot > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-bullet.menu-bullet-line > span,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-bullet.menu-bullet-line > span {
  background-color: #3699FF;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-arrow,
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-arrow {
  color: #ffffff;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-section .menu-text {
  color: #4c4e6f;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-section .menu-icon {
  color: #4c4e6f;
}
.aside-menu .menu-nav > .menu-item .menu-submenu .menu-separator {
  border-bottom: 1px solid #4c4e6f;
}

@media (min-width: 992px) {
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav > .menu-item {
    background: transparent;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav > .menu-item > .menu-link > .menu-icon {
    color: #7c87a6;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav > .menu-item.menu-item-hover, .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav > .menu-item.menu-item-open {
    background: transparent !important;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav > .menu-item.menu-item-hover > .menu-link > .menu-icon, .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav > .menu-item.menu-item-open > .menu-link > .menu-icon {
    color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav > .menu-item.menu-item-here, .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav > .menu-item.menu-item-active {
    background: transparent !important;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav > .menu-item.menu-item-here > .menu-link > .menu-icon, .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav > .menu-item.menu-item-active > .menu-link > .menu-icon {
    color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav > .menu-item:hover {
    background: transparent;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav > .menu-item:hover > .menu-link > .menu-icon {
    color: #3699FF !important;
  }
}
@media (min-width: 992px) {
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu {
    background-color: #fff;
    box-shadow: 0px 0px 50px 0px rgba(82, 63, 105, 0.15);
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-heading .menu-text,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-link .menu-text,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-heading .menu-text,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-link .menu-text {
    color: rgb(104.9855769231, 109.8125, 146.0144230769);
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-heading .menu-icon,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-link .menu-icon,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-heading .menu-icon,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-link .menu-icon {
    color: rgb(168.4708737864, 169.9757281553, 186.5291262136);
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-heading .menu-icon.svg-icon svg g [fill],
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-link .menu-icon.svg-icon svg g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-heading .menu-icon.svg-icon svg g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-link .menu-icon.svg-icon svg g [fill] {
    transition: fill 0.3s ease;
    fill: rgb(168.4708737864, 169.9757281553, 186.5291262136);
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-link .menu-icon.svg-icon svg:hover g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
    transition: fill 0.3s ease;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-heading .menu-bullet.menu-bullet-dot > span,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-link .menu-bullet.menu-bullet-dot > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-heading .menu-bullet.menu-bullet-dot > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-link .menu-bullet.menu-bullet-dot > span {
    background-color: rgb(168.4708737864, 169.9757281553, 186.5291262136);
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-heading .menu-bullet.menu-bullet-line > span,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-link .menu-bullet.menu-bullet-line > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-heading .menu-bullet.menu-bullet-line > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-link .menu-bullet.menu-bullet-line > span {
    background-color: rgb(168.4708737864, 169.9757281553, 186.5291262136);
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-heading .menu-arrow,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-link .menu-arrow,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-heading .menu-arrow,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item > .menu-link .menu-arrow {
    color: rgb(168.4708737864, 169.9757281553, 186.5291262136);
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open {
    transition: background-color 0.3s;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link {
    background-color: #F3F6F9;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading .menu-text,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link .menu-text,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading .menu-text,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link .menu-text {
    color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading .menu-icon,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link .menu-icon,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading .menu-icon,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link .menu-icon {
    color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading .menu-icon.svg-icon svg g [fill],
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link .menu-icon.svg-icon svg g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading .menu-icon.svg-icon svg g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link .menu-icon.svg-icon svg g [fill] {
    transition: fill 0.3s ease;
    fill: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link .menu-icon.svg-icon svg:hover g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
    transition: fill 0.3s ease;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading .menu-bullet.menu-bullet-dot > span,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link .menu-bullet.menu-bullet-dot > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading .menu-bullet.menu-bullet-dot > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link .menu-bullet.menu-bullet-dot > span {
    background-color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading .menu-bullet.menu-bullet-line > span,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link .menu-bullet.menu-bullet-line > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading .menu-bullet.menu-bullet-line > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link .menu-bullet.menu-bullet-line > span {
    background-color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading .menu-arrow,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link .menu-arrow,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-heading .menu-arrow,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-open > .menu-link .menu-arrow {
    color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here {
    transition: background-color 0.3s;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-heading,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-link,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-heading,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-link {
    background-color: #F3F6F9;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-heading .menu-icon.svg-icon svg g [fill],
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-link .menu-icon.svg-icon svg g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-heading .menu-icon.svg-icon svg g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-link .menu-icon.svg-icon svg g [fill] {
    transition: fill 0.3s ease;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-link .menu-icon.svg-icon svg:hover g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
    transition: fill 0.3s ease;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-heading .menu-bullet.menu-bullet-dot > span,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-link .menu-bullet.menu-bullet-dot > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-heading .menu-bullet.menu-bullet-dot > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-link .menu-bullet.menu-bullet-dot > span {
    background-color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-heading .menu-bullet.menu-bullet-line > span,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-link .menu-bullet.menu-bullet-line > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-heading .menu-bullet.menu-bullet-line > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-here > .menu-link .menu-bullet.menu-bullet-line > span {
    background-color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active {
    transition: background-color 0.3s;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link {
    background-color: #F3F6F9;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading .menu-text,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link .menu-text,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading .menu-text,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link .menu-text {
    color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading .menu-icon,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link .menu-icon,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading .menu-icon,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link .menu-icon {
    color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading .menu-icon.svg-icon svg g [fill],
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link .menu-icon.svg-icon svg g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading .menu-icon.svg-icon svg g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link .menu-icon.svg-icon svg g [fill] {
    transition: fill 0.3s ease;
    fill: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link .menu-icon.svg-icon svg:hover g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
    transition: fill 0.3s ease;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading .menu-bullet.menu-bullet-dot > span,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link .menu-bullet.menu-bullet-dot > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading .menu-bullet.menu-bullet-dot > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link .menu-bullet.menu-bullet-dot > span {
    background-color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading .menu-bullet.menu-bullet-line > span,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link .menu-bullet.menu-bullet-line > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading .menu-bullet.menu-bullet-line > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link .menu-bullet.menu-bullet-line > span {
    background-color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading .menu-arrow,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link .menu-arrow,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-heading .menu-arrow,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item.menu-item-active > .menu-link .menu-arrow {
    color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover {
    transition: background-color 0.3s;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link {
    background-color: #F3F6F9;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-text,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-text,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-text,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-text {
    color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-icon,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-icon,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-icon,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-icon {
    color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-icon.svg-icon svg g [fill],
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-icon.svg-icon svg g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-icon.svg-icon svg g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-icon.svg-icon svg g [fill] {
    transition: fill 0.3s ease;
    fill: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-icon.svg-icon svg:hover g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-icon.svg-icon svg:hover g [fill],
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-icon.svg-icon svg:hover g [fill] {
    transition: fill 0.3s ease;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-bullet.menu-bullet-dot > span,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-bullet.menu-bullet-dot > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-bullet.menu-bullet-dot > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-bullet.menu-bullet-dot > span {
    background-color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-bullet.menu-bullet-line > span,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-bullet.menu-bullet-line > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-bullet.menu-bullet-line > span,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-bullet.menu-bullet-line > span {
    background-color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-arrow,
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-arrow,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-heading .menu-arrow,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-item:not(.menu-item-parent):not(.menu-item-open):not(.menu-item-here):not(.menu-item-active):hover > .menu-link .menu-arrow {
    color: #3699FF;
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-section .menu-text,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-section .menu-text {
    color: rgb(163.6682692308, 166.6875, 189.3317307692);
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-section .menu-icon,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-section .menu-icon {
    color: rgb(169.6019230769, 172.425, 193.5980769231);
  }
  .aside-minimize:not(.aside-minimize-hover) .aside-menu .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-separator,
  .aside-menu.aside-menu-dropdown .menu-nav .menu-item:not([data-menu-submenu-mode=accordion]).menu-item-hover > .menu-submenu .menu-subnav .menu-separator {
    border-bottom: 1px solid rgba(0, 0, 0, 0.07);
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL3RoZW1lcy9sYXlvdXQvYXNpZGUvZGFyay5jc3MiLCJtYXBwaW5ncyI6IkFBUUE7RUFDQztBQVBEO0FDS1E7RUFDSTtBREhaO0FDS1k7RUFFSTtFQUNBO0FESmhCO0FDTWdCO0VBQ0k7QURKcEI7QUNRWTtFQUNJLHlCRFBtQjtFQ1FuQjtBRE5oQjtBQ1FnQjtFQUVJO0VBQ0EseUJEYmU7QUFNbkM7QUNZUTtFQUNJO0FEVlo7QUNZWTtFQUVJO0VBQ0E7QURYaEI7QUNhZ0I7RUFDSTtBRFhwQjtBQ2VZO0VBQ0ksbUJEaENtQjtFQ2lDbkI7QURiaEI7QUNlZ0I7RUFFSTtFQUNBLG1CRHRDZTtBQXdCbkM7O0FFcXVCQztFQ3J3Qk87QUhvQ1I7QUUrRUU7O0VDbkhNO0FId0NSO0FFbUZFOztFQzNITTtBSDRDUjtBSTFDWTs7RUFDSTtFQUNBO0FKNkNoQjtBSXZDZ0I7O0VBQ0k7QUowQ3BCO0FFa0ZJOztFQ3ZJSTtBSHlEUjtBRW9GSTs7RUM3SUk7QUg2RFI7QUV1RkU7O0VDcEpNO0FIaUVSO0FFeUZDO0VBQ0M7QUZ2RkY7QUUwRkU7O0VDOUpNO0FId0VSO0FFMkZHOztFQ25LSztBSDRFUjtBRTRGRzs7RUN4S0s7QUhnRlI7QUk5RVk7O0VBQ0k7RUFDQTtBSmlGaEI7QUkzRWdCOztFQUNJO0FKOEVwQjtBRTJGSzs7RUNwTEc7QUg2RlI7QUU2Rks7O0VDMUxHO0FIaUdSO0FFZ0dHOztFQ2pNSztBSHFHUjtBRW1HQztFQUNDO0FGakdGO0FFb0dFOztFQzVNTTtBSDRHUjtBRXFHRzs7RUNqTks7QUhnSFI7QUVzR0c7O0VDdE5LO0FIb0hSO0FJbEhZOztFQUNJO0VBQ0E7QUpxSGhCO0FJL0dnQjs7RUFDSTtBSmtIcEI7QUVxR0s7O0VDbE9HO0FIaUlSO0FFdUdLOztFQ3hPRztBSHFJUjtBRTBHRzs7RUMvT0s7QUh5SVI7QUU2R0M7RUFDQztBRjNHRjtBRThHRTs7RUMxUE07QUhnSlI7QUUrR0c7O0VDL1BLO0FIb0pSO0FFZ0hHOztFQ3BRSztBSHdKUjtBSXRKWTs7RUFDSTtFQUNBO0FKeUpoQjtBSW5KZ0I7O0VBQ0k7QUpzSnBCO0FFK0dLOztFQ2hSRztBSHFLUjtBRWlISzs7RUN0Ukc7QUh5S1I7QUVvSEc7O0VDN1JLO0FINktSO0FFdUhDO0VBQ0M7QUZySEY7QUV3SEU7O0VDeFNNO0FIb0xSO0FFeUhHOztFQzdTSztBSHdMUjtBRTBIRzs7RUNsVEs7QUg0TFI7QUkxTFk7O0VBQ0k7RUFDQTtBSjZMaEI7QUl2TGdCOztFQUNJO0FKMExwQjtBRXlISzs7RUM5VEc7QUh5TVI7QUUySEs7O0VDcFVHO0FINk1SO0FFOEhHOztFQzNVSztBSGlOUjtBRTRqQkk7RUFDQztBRjFqQkw7QUVrSkM7RUN0V087QUh1TlI7QUVvSkU7RUMzV007QUgwTlI7QUU4akJHO0VDeHhCSztBSDZOUjtBRTFHRTs7RUNuSE07QUhpT1I7QUV0R0U7O0VDM0hNO0FIcU9SO0FJbk9ZOztFQUNJO0VBQ0E7QUpzT2hCO0FJaE9nQjs7RUFDSTtBSm1PcEI7QUV2R0k7O0VDdklJO0FIa1BSO0FFckdJOztFQzdJSTtBSHNQUjtBRWxHRTs7RUNwSk07QUgwUFI7QUVoR0M7RUFDQztBRmtHRjtBRS9GRTs7RUM5Sk07QUhpUVI7QUU5Rkc7O0VDbktLO0FIcVFSO0FFN0ZHOztFQ3hLSztBSHlRUjtBSXZRWTs7RUFDSTtFQUNBO0FKMFFoQjtBSXBRZ0I7O0VBQ0k7QUp1UXBCO0FFOUZLOztFQ3BMRztBSHNSUjtBRTVGSzs7RUMxTEc7QUgwUlI7QUV6Rkc7O0VDak1LO0FIOFJSO0FFdEZDO0VBQ0M7QUZ3RkY7QUVyRkU7O0VDNU1NO0FIcVNSO0FFL0VHOztFQ3ROSztBSHlTUjtBSXZTWTs7RUFDSTtFQUNBO0FKMFNoQjtBSXBTZ0I7O0VBQ0k7QUp1U3BCO0FFaEZLOztFQ2xPRztBSHNUUjtBRTlFSzs7RUN4T0c7QUgwVFI7QUUzRUc7O0VDL09LO0FIOFRSO0FFeEVDO0VBQ0M7QUYwRUY7QUV2RUU7O0VDMVBNO0FIcVVSO0FFdEVHOztFQy9QSztBSHlVUjtBRXJFRzs7RUNwUUs7QUg2VVI7QUkzVVk7O0VBQ0k7RUFDQTtBSjhVaEI7QUl4VWdCOztFQUNJO0FKMlVwQjtBRXRFSzs7RUNoUkc7QUgwVlI7QUVwRUs7O0VDdFJHO0FIOFZSO0FFakVHOztFQzdSSztBSGtXUjtBRTlEQztFQUNDO0FGZ0VGO0FFN0RFOztFQ3hTTTtBSHlXUjtBRTVERzs7RUM3U0s7QUg2V1I7QUUzREc7O0VDbFRLO0FIaVhSO0FJL1dZOztFQUNJO0VBQ0E7QUprWGhCO0FJNVdnQjs7RUFDSTtBSitXcEI7QUU1REs7O0VDOVRHO0FIOFhSO0FFMURLOztFQ3BVRztBSGtZUjtBRXZERzs7RUMzVUs7QUhzWVI7QUVoQ0M7RUN0V087QUh5WVI7QUU5QkU7RUMzV007QUg0WVI7QUVpYUs7RUM3eUJHO0FIK1lSOztBS3pWSTtFSGdpQ0Q7SUFDQztFRm5zQkY7RUV3c0JHO0lBQ0M7RUZ0c0JKO0VFMHNCRTtJQUVDO0VGenNCSDtFRThzQkk7SUN4bUNFO0VINlpOO0VFaXRCRTtJQUVDO0VGaHRCSDtFRXF0Qkk7SUNybkNFO0VIbWFOO0VFd3RCRTtJQUNDO0VGdHRCSDtFRTJ0Qkk7SUNqb0NFO0VIeWFOO0FBQ0Y7QUtwWEk7RUhvNUJDOztJQUNDO0lBQ0E7RUY1aEJKO0VFN1RBOzs7O0lDbkhNO0VIc2JOO0VFM1RBOzs7O0lDM0hNO0VINGJOO0VJMWJVOzs7O0lBQ0k7SUFDQTtFSitiZDtFSXpiYzs7OztJQUNJO0VKOGJsQjtFRWxVRTs7OztJQ3ZJSTtFSCtjTjtFRWxVRTs7OztJQzdJSTtFSHFkTjtFRWpVQTs7OztJQ3BKTTtFSDJkTjtFRWpVRDs7SUFDQztFRm9VQTtFRWpVQTs7OztJQzlKTTtFSHFlTjtFRWxVQzs7OztJQ25LSztFSDJlTjtFRW5VQzs7OztJQ3hLSztFSGlmTjtFSS9lVTs7OztJQUNJO0lBQ0E7RUpvZmQ7RUk5ZWM7Ozs7SUFDSTtFSm1mbEI7RUUxVUc7Ozs7SUNwTEc7RUhvZ0JOO0VFMVVHOzs7O0lDMUxHO0VIMGdCTjtFRXpVQzs7OztJQ2pNSztFSGdoQk47RUV4VUQ7O0lBQ0M7RUYyVUE7RUV4VUE7Ozs7SUM1TU07RUgwaEJOO0VJeGhCVTs7OztJQUNJO0VKNmhCZDtFSXRoQmM7Ozs7SUFDSTtFSjJoQmxCO0VFcFVHOzs7O0lDbE9HO0VINGlCTjtFRXBVRzs7OztJQ3hPRztFSGtqQk47RUU1VEQ7O0lBQ0M7RUYrVEE7RUU1VEE7Ozs7SUMxUE07RUg0akJOO0VFN1RDOzs7O0lDL1BLO0VIa2tCTjtFRTlUQzs7OztJQ3BRSztFSHdrQk47RUl0a0JVOzs7O0lBQ0k7SUFDQTtFSjJrQmQ7RUlya0JjOzs7O0lBQ0k7RUowa0JsQjtFRXJVRzs7OztJQ2hSRztFSDJsQk47RUVyVUc7Ozs7SUN0Ukc7RUhpbUJOO0VFcFVDOzs7O0lDN1JLO0VIdW1CTjtFRW5VRDs7SUFDQztFRnNVQTtFRW5VQTs7OztJQ3hTTTtFSGluQk47RUVwVUM7Ozs7SUM3U0s7RUh1bkJOO0VFclVDOzs7O0lDbFRLO0VINm5CTjtFSTNuQlU7Ozs7SUFDSTtJQUNBO0VKZ29CZDtFSTFuQmM7Ozs7SUFDSTtFSituQmxCO0VFNVVHOzs7O0lDOVRHO0VIZ3BCTjtFRTVVRzs7OztJQ3BVRztFSHNwQk47RUUzVUM7Ozs7SUMzVUs7RUg0cEJOO0VFdFREOztJQ3RXTztFSGdxQk47RUVyVEE7O0lDM1dNO0VIb3FCTjtFRW1USzs7SUN2OUJDO0VId3FCTjtBQUNGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvbWV0cm9uaWMvc2Fzcy90aGVtZXMvbGF5b3V0L2FzaWRlL2Rhcmsuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvbWV0cm9uaWMvc2Fzcy92ZW5kb3JzL3BsdWdpbnMvbWl4aW5zL19wZXJmZWN0LXNjcm9sbGJhci5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9tZXRyb25pYy9zYXNzL2NvbXBvbmVudHMvbWl4aW5zL19tZW51LXZlcnRpY2FsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL21ldHJvbmljL3Nhc3MvYmFzZS9taXhpbnMvX2F0dHIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvbWV0cm9uaWMvc2Fzcy9jb21wb25lbnRzL21peGlucy9fc3ZnLWljb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vXHJcbi8vIEFzaWRlIGRhcmsgdGhlbWVcclxuLy9cclxuXHJcblxyXG4vLyBJbml0aWFsaXphdGlvbiBvZiBnbG9iYWwgdmFyaWFibGVzLCBtaXhpbnMgYW5kIGZ1bmN0aW9uc1xyXG5AaW1wb3J0IFwiLi4vLi4vLi4vaW5pdFwiO1xyXG5cclxuLmFzaWRlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQoJGxheW91dC10aGVtZXMsIGRhcmspO1xyXG5cclxuXHQvLyBBc2lkZSBNZW51XHJcblx0LmFzaWRlLW1lbnUge1xyXG5cdFx0Ly8gU2Nyb2xsYmFyXHJcblx0XHRAaW5jbHVkZSBwZXJmZWN0LXNjcm9sbGJhci10aGVtZSgjNjM3MDk5KTtcclxuXHR9XHJcbn1cclxuXHJcbi8vIEJ1aWxkIGFzaWRlIG1lbnUgdGhlbWVcclxuQGluY2x1ZGUgbWVudS12ZXItYnVpbGQtdGhlbWUoJGFzaWRlLW1lbnUtY29uZmlnLCBkYXJrKTtcclxuIiwiLy9cclxuLy8gU2Nyb2xsIE1peGluc1xyXG4vL1xyXG5cclxuLy8gVGhlbWVcclxuQG1peGluIHBlcmZlY3Qtc2Nyb2xsYmFyLXRoZW1lKCRjb2xvcikge1xyXG4gICAgJi5wcyB7XHJcbiAgICAgICAgPiAucHNfX3JhaWwteCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgPiAucHNfX3RodW1iLXgge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gLnBzX190aHVtYi14IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IC5wc19fcmFpbC15IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICAgICAgICAgICAgICA+IC5wc19fdGh1bWIteSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgPiAucHNfX3RodW1iLXkge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBwZXJmZWN0LXNjcm9sbGJhci12ZXItc2l6ZSgkc2l6ZSkge1xyXG4gICAgJi5wcyB7XHJcbiAgICAgICAgPiAucHNfX3JhaWwteSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAkc2l6ZTtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6ICRzaXplO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICA+IC5wc19fdGh1bWIteSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogJHNpemU7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQpO1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogJHNpemU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBwZXJmZWN0LXNjcm9sbGJhci1ob3Itc2l6ZSgkc2l6ZSkge1xyXG4gICAgJi5wcyB7XHJcbiAgICAgICAgPiAucHNfX3JhaWwteCB7XHJcbiAgICAgICAgICAgIGhlaWdodDogJHNpemU7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogJHNpemU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gLnBzX190aHVtYi14IHtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogJHNpemU7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQpO1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAkc2l6ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIHBlcmZlY3Qtc2Nyb2xsYmFyLXZlci1vZmZzZXQoJG9mZnNldCkge1xyXG4gICAgJi5wcyB7XHJcbiAgICAgICAgPiAucHNfX3JhaWwteSB7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAkb2Zmc2V0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvL1xyXG4vLyBWZXJ0aWNhbCBNZW51IEdlbmVyYXRvciBIZWxwZXJzXHJcbi8vXHJcblxyXG5cclxuXHJcbi8vIEl0ZW1cclxuQG1peGluIG1lbnUtdmVyLWl0ZW0tYmFzZSgkaXRlbSkge1xyXG5cdC8vIGl0ZW1cclxuXHRAaW5jbHVkZSBhdHRyKG1hcmdpbiwgZ2V0KCRpdGVtLCBzZWxmLCBtYXJnaW4pKTtcclxuXHRAaW5jbHVkZSBhdHRyKHBhZGRpbmcsIGdldCgkaXRlbSwgc2VsZiwgcGFkZGluZykpO1xyXG5cclxuXHQvLyBpdGVtIGxpbmsgYW5kIGhlYWRpbmdcclxuXHQ+IC5tZW51LWhlYWRpbmcsXHJcblx0PiAubWVudS1saW5rIHtcclxuXHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoZ2V0KCRpdGVtLCBsaW5rLCBzZWxmLCBib3JkZXItcmFkaXVzKSk7XHJcblx0XHQvLyBsaW5rIGhlaWdodFxyXG5cdFx0bWluLWhlaWdodDogZ2V0KCRpdGVtLCBsaW5rLCBzZWxmLCBoZWlnaHQpO1xyXG5cclxuXHRcdC8vIGxpbmsgbWFyZ2luXHJcblx0XHRAaW5jbHVkZSBhdHRyKG1hcmdpbiwgZ2V0KCRpdGVtLCBsaW5rLCBzZWxmLCBtYXJnaW4pKTtcclxuXHJcblx0XHQvLyBtZW51IGl0ZW0gbGluaydzIHRleHQgcGFydFxyXG5cdFx0Lm1lbnUtdGV4dCB7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiBnZXQoJGl0ZW0sIGxpbmssIHRleHQsIGZvbnQtd2VpZ2h0KTtcclxuXHRcdFx0Zm9udC1zaXplOiBnZXQoJGl0ZW0sIGxpbmssIHRleHQsIGZvbnQtc2l6ZSk7XHJcblx0XHRcdHRleHQtdHJhbnNmb3JtOiBnZXQoJGl0ZW0sIGxpbmssIHRleHQsIGZvbnQtdHJhbnNmb3JtKTtcclxuXHRcdH1cclxuXHJcblx0XHQvLyBtZW51IGl0ZW0gbGluaydzIGljb25cclxuXHRcdC5tZW51LWljb24ge1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBnZXQoJGl0ZW0sIGxpbmssIGljb24sIGFsaWduKTtcclxuXHRcdFx0ZmxleDogMCAwIGdldCgkaXRlbSwgbGluaywgaWNvbiwgd2lkdGgpO1xyXG5cdFx0XHRmb250LXNpemU6IGdldCgkaXRlbSwgbGluaywgaWNvbiwgZm9udC1zaXplKTtcclxuXHJcblx0XHRcdC8vIGR1by10b25lIHN2ZyBpY29uXHJcblx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0QGluY2x1ZGUgYXR0cihoZWlnaHQsIGdldCgkaXRlbSwgbGluaywgaWNvbiwgc3ZnLXdpZHRoKSk7XHJcblx0XHRcdFx0QGluY2x1ZGUgYXR0cih3aWR0aCwgZ2V0KCRpdGVtLCBsaW5rLCBpY29uLCBzdmctd2lkdGgpKTtcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDogLTJweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC8vIG1lbnUgaXRlbSBsaW5rJ3MgYnVsbGV0XHJcblx0XHQubWVudS1idWxsZXQge1xyXG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0XHRmbGV4OiAwIDAgZ2V0KCRpdGVtLCBsaW5rLCBidWxsZXQsIHNlbGYsIHdpZHRoKTtcclxuXHJcblx0XHRcdD4gc3BhbiB7XHJcblx0XHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCYubWVudS1idWxsZXQtZG90IHtcclxuXHRcdFx0XHQ+IHNwYW4ge1xyXG5cdFx0XHRcdFx0d2lkdGg6IGdldCgkaXRlbSwgbGluaywgYnVsbGV0LCBkb3QsIHNpemUpO1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiBnZXQoJGl0ZW0sIGxpbmssIGJ1bGxldCwgZG90LCBzaXplKTtcclxuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmLm1lbnUtYnVsbGV0LWxpbmUge1xyXG5cdFx0XHRcdD4gc3BhbiB7XHJcblx0XHRcdFx0XHR3aWR0aDogZ2V0KCRpdGVtLCBsaW5rLCBidWxsZXQsIGxpbmUsIHdpZHRoKTtcclxuXHRcdFx0XHRcdGhlaWdodDogZ2V0KCRpdGVtLCBsaW5rLCBidWxsZXQsIGxpbmUsIGhlaWdodCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Ly8gbWVudSBpdGVtIGxpbmsncyBpY29uIHBhcnRcclxuXHRcdC5tZW51LWxhYmVsIHtcclxuXHRcdFx0cGFkZGluZzogZ2V0KCRpdGVtLCBsaW5rLCBsYWJlbCwgcGFkZGluZyk7XHJcblx0XHRcdHRleHQtYWxpZ246IGdldCgkaXRlbSwgbGluaywgbGFiZWwsIGFsaWduKTtcclxuXHRcdH1cclxuXHJcblx0XHQvLyBtZW51IGl0ZW0gbGluaydzIGFycm93IHBhcnRcclxuXHRcdC5tZW51LWFycm93IHtcclxuXHRcdFx0dGV4dC1hbGlnbjogZ2V0KCRpdGVtLCBsaW5rLCBhcnJvdywgYWxpZ24pO1xyXG5cdFx0XHRmbGV4OiAwIDAgZ2V0KCRpdGVtLCBsaW5rLCBhcnJvdywgd2lkdGgpO1xyXG5cdFx0XHRmb250LXNpemU6IGdldCgkaXRlbSwgbGluaywgYXJyb3csIGZvbnQtc2l6ZSk7XHJcblxyXG5cdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0dHJhbnNpdGlvbjogZ2V0KCRpdGVtLCBsaW5rLCBhcnJvdywgdHJhbnNpdGlvbik7XHJcblx0XHRcdFx0QGluY2x1ZGUga2koZ2V0KCRraS10eXBlcywgYXJyb3dOZXh0KSk7XHJcblxyXG5cdFx0XHRcdFtkaXJlY3Rpb249XCJydGxcIl0gJiB7XHJcblx0XHRcdFx0XHRjb250ZW50OiBcIiN7Z2V0KCRraS10eXBlcywgYXJyb3dCYWNrKX1cIiAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC8vIG1lbnUgcm9vdCBsZXZlbCBcImhlcmVcIiBhcnJvd1xyXG5cdFx0Lm1lbnUtaXRlbS1oZXJlIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC8vIGl0ZW0gbGluayBvcGVuIHN0YXRlXHJcblx0Ji5tZW51LWl0ZW0tb3BlbiB7XHJcblx0XHQ+IC5tZW51LWhlYWRpbmcsXHJcblx0XHQ+IC5tZW51LWxpbmsge1xyXG5cdFx0XHQvLyBtZW51IGl0ZW0gbGluaydzIGFycm93IHBhcnRcclxuXHRcdFx0Lm1lbnUtYXJyb3cge1xyXG5cdFx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRcdHRyYW5zaXRpb246IGdldCgkaXRlbSwgbGluaywgYXJyb3csIHRyYW5zaXRpb24pO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuQG1peGluIG1lbnUtdmVyLWl0ZW0tdGhlbWUoJGl0ZW0pIHtcclxuXHQvLyBpdGVtXHJcblx0QGluY2x1ZGUgYXR0cihiYWNrZ3JvdW5kLWNvbG9yLCBnZXQoJGl0ZW0sIHNlbGYsIGJnLWNvbG9yLCBkZWZhdWx0KSk7XHJcblxyXG5cdC8vIGl0ZW0gbGluayBhbmQgaGVhZGluZ1xyXG5cdD4gLm1lbnUtaGVhZGluZyxcclxuXHQ+IC5tZW51LWxpbmsge1xyXG5cdFx0Ly8gbWVudSBpdGVtIGxpbmsncyB0ZXh0IHBhcnRcclxuXHRcdC5tZW51LXRleHQge1xyXG5cdFx0XHRAaW5jbHVkZSBhdHRyKGNvbG9yLCBnZXQoJGl0ZW0sIGxpbmssIHRleHQsIGZvbnQtY29sb3IsIGRlZmF1bHQpKTtcclxuXHRcdFx0QGlmIGhhcygkaXRlbSwgbGluaywgdGV4dCwgZm9udC13ZWlnaHQpIHtcclxuXHRcdFx0XHRmb250LXdlaWdodDogZ2V0KCRpdGVtLCBsaW5rLCB0ZXh0LCBmb250LXdlaWdodCk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQvLyBtZW51IGl0ZW0gbGluaydzIGljb25cclxuXHRcdC5tZW51LWljb24ge1xyXG5cdFx0XHRAaW5jbHVkZSBhdHRyKGNvbG9yLCBnZXQoJGl0ZW0sIGxpbmssIGljb24sIGZvbnQtY29sb3IsIGRlZmF1bHQpKTtcclxuXHJcblx0XHRcdC8vIER1ZS10b25lIGljb25cclxuXHRcdFx0Ji5zdmctaWNvbiB7XHJcblx0XHRcdFx0QGluY2x1ZGUgc3ZnLWljb24tY29sb3IoZ2V0KCRpdGVtLCBsaW5rLCBpY29uLCBmb250LWNvbG9yLCBkZWZhdWx0KSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQvLyBtZW51IGl0ZW0gbGluaydzIGJ1bGxldFxyXG5cdFx0Lm1lbnUtYnVsbGV0IHtcclxuXHRcdFx0Ji5tZW51LWJ1bGxldC1kb3Qge1xyXG5cdFx0XHRcdD4gc3BhbiB7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBhdHRyKGJhY2tncm91bmQtY29sb3IsIGdldCgkaXRlbSwgbGluaywgYnVsbGV0LCBkb3QsIGJnLWNvbG9yLCBkZWZhdWx0KSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmLm1lbnUtYnVsbGV0LWxpbmUge1xyXG5cdFx0XHRcdD4gc3BhbiB7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBhdHRyKGJhY2tncm91bmQtY29sb3IsIGdldCgkaXRlbSwgbGluaywgYnVsbGV0LCBsaW5lLCBiZy1jb2xvciwgZGVmYXVsdCkpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC8vIG1lbnUgaXRlbSBsaW5rJ3MgYXJyb3cgcGFydFxyXG5cdFx0Lm1lbnUtYXJyb3cge1xyXG5cdFx0XHRAaW5jbHVkZSBhdHRyKGNvbG9yLCBnZXQoJGl0ZW0sIGxpbmssIGFycm93LCBmb250LWNvbG9yLCBkZWZhdWx0KSk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvLyBpdGVtIGxpbmsgb3BlbiBzdGF0ZVxyXG5cdCYubWVudS1pdGVtLW9wZW4ge1xyXG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzO1xyXG5cdFx0QGluY2x1ZGUgYXR0cihiYWNrZ3JvdW5kLWNvbG9yLCBnZXQoJGl0ZW0sIHNlbGYsIGJnLWNvbG9yLCBvcGVuKSk7XHJcblxyXG5cdFx0PiAubWVudS1oZWFkaW5nLFxyXG5cdFx0PiAubWVudS1saW5rIHtcclxuXHRcdFx0QGluY2x1ZGUgYXR0cihiYWNrZ3JvdW5kLWNvbG9yLCBnZXQoJGl0ZW0sIGxpbmssIHNlbGYsIGJnLWNvbG9yLCBvcGVuKSk7XHJcblxyXG5cdFx0XHQvLyBtZW51IGl0ZW0gbGluaydzIHRleHQgcGFydFxyXG5cdFx0XHQubWVudS10ZXh0IHtcclxuXHRcdFx0XHRAaW5jbHVkZSBhdHRyKGNvbG9yLCBnZXQoJGl0ZW0sIGxpbmssIHRleHQsIGZvbnQtY29sb3IsIG9wZW4pKTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gbWVudSBpdGVtIGxpbmsncyBpY29uIHBhcnRcclxuXHRcdFx0Lm1lbnUtaWNvbiB7XHJcblx0XHRcdFx0QGluY2x1ZGUgYXR0cihjb2xvciwgZ2V0KCRpdGVtLCBsaW5rLCBpY29uLCBmb250LWNvbG9yLCBvcGVuKSk7XHJcblxyXG5cdFx0XHRcdC8vIER1ZS10b25lIGljb25cclxuXHRcdFx0XHQmLnN2Zy1pY29uIHtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIHN2Zy1pY29uLWNvbG9yKGdldCgkaXRlbSwgbGluaywgaWNvbiwgZm9udC1jb2xvciwgb3BlbikpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gbWVudSBpdGVtIGxpbmsncyBidWxsZXRcclxuXHRcdFx0Lm1lbnUtYnVsbGV0IHtcclxuXHRcdFx0XHQmLm1lbnUtYnVsbGV0LWRvdCB7XHJcblx0XHRcdFx0XHQ+IHNwYW4ge1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBhdHRyKGJhY2tncm91bmQtY29sb3IsIGdldCgkaXRlbSwgbGluaywgYnVsbGV0LCBkb3QsIGJnLWNvbG9yLCBvcGVuKSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmLm1lbnUtYnVsbGV0LWxpbmUge1xyXG5cdFx0XHRcdFx0PiBzcGFuIHtcclxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYXR0cihiYWNrZ3JvdW5kLWNvbG9yLCBnZXQoJGl0ZW0sIGxpbmssIGJ1bGxldCwgbGluZSwgYmctY29sb3IsIG9wZW4pKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC8vIG1lbnUgaXRlbSBsaW5rJ3MgYXJyb3cgcGFydFxyXG5cdFx0XHQubWVudS1hcnJvdyB7XHJcblx0XHRcdFx0QGluY2x1ZGUgYXR0cihjb2xvciwgZ2V0KCRpdGVtLCBsaW5rLCBhcnJvdywgZm9udC1jb2xvciwgb3BlbikpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvLyBpdGVtIGxpbmsgb3BlbiBzdGF0ZVxyXG5cdCYubWVudS1pdGVtLWhlcmUge1xyXG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzO1xyXG5cdFx0QGluY2x1ZGUgYXR0cihiYWNrZ3JvdW5kLWNvbG9yLCBnZXQoJGl0ZW0sIHNlbGYsIGJnLWNvbG9yLCBoZXJlKSk7XHJcblxyXG5cdFx0PiAubWVudS1oZWFkaW5nLFxyXG5cdFx0PiAubWVudS1saW5rIHtcclxuXHRcdFx0QGluY2x1ZGUgYXR0cihiYWNrZ3JvdW5kLWNvbG9yLCBnZXQoJGl0ZW0sIGxpbmssIHNlbGYsIGJnLWNvbG9yLCBoZXJlKSk7XHJcblxyXG5cdFx0XHQvLyBtZW51IGl0ZW0gbGluaydzIHRleHQgcGFydFxyXG5cdFx0XHQubWVudS10ZXh0IHtcclxuXHRcdFx0XHRAaW5jbHVkZSBhdHRyKGNvbG9yLCBnZXQoJGl0ZW0sIGxpbmssIHRleHQsIGZvbnQtY29sb3IsIGhlcmUpKTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gbWVudSBpdGVtIGxpbmsncyBpY29uIHBhcnRcclxuXHRcdFx0Lm1lbnUtaWNvbiB7XHJcblx0XHRcdFx0QGluY2x1ZGUgYXR0cihjb2xvciwgZ2V0KCRpdGVtLCBsaW5rLCBpY29uLCBmb250LWNvbG9yLCBoZXJlKSk7XHJcblxyXG5cdFx0XHRcdC8vIER1ZS10b25lIGljb25cclxuXHRcdFx0XHQmLnN2Zy1pY29uIHtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIHN2Zy1pY29uLWNvbG9yKGdldCgkaXRlbSwgbGluaywgaWNvbiwgZm9udC1jb2xvciwgaGVyZSkpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gbWVudSBpdGVtIGxpbmsncyBidWxsZXRcclxuXHRcdFx0Lm1lbnUtYnVsbGV0IHtcclxuXHRcdFx0XHQmLm1lbnUtYnVsbGV0LWRvdCB7XHJcblx0XHRcdFx0XHQ+IHNwYW4ge1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBhdHRyKGJhY2tncm91bmQtY29sb3IsIGdldCgkaXRlbSwgbGluaywgYnVsbGV0LCBkb3QsIGJnLWNvbG9yLCBoZXJlKSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmLm1lbnUtYnVsbGV0LWxpbmUge1xyXG5cdFx0XHRcdFx0PiBzcGFuIHtcclxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYXR0cihiYWNrZ3JvdW5kLWNvbG9yLCBnZXQoJGl0ZW0sIGxpbmssIGJ1bGxldCwgbGluZSwgYmctY29sb3IsIGhlcmUpKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC8vIG1lbnUgaXRlbSBsaW5rJ3MgYXJyb3cgcGFydFxyXG5cdFx0XHQubWVudS1hcnJvdyB7XHJcblx0XHRcdFx0QGluY2x1ZGUgYXR0cihjb2xvciwgZ2V0KCRpdGVtLCBsaW5rLCBhcnJvdywgZm9udC1jb2xvciwgaGVyZSkpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvLyBpdGVtIGxpbmsgYWN0aXZlIHN0YXRlXHJcblx0Ji5tZW51LWl0ZW0tYWN0aXZlIHtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcztcclxuXHRcdEBpbmNsdWRlIGF0dHIoYmFja2dyb3VuZC1jb2xvciwgZ2V0KCRpdGVtLCBzZWxmLCBiZy1jb2xvciwgYWN0aXZlKSk7XHJcblxyXG5cdFx0PiAubWVudS1oZWFkaW5nLFxyXG5cdFx0PiAubWVudS1saW5rIHtcclxuXHRcdFx0QGluY2x1ZGUgYXR0cihiYWNrZ3JvdW5kLWNvbG9yLCBnZXQoJGl0ZW0sIGxpbmssIHNlbGYsIGJnLWNvbG9yLCBhY3RpdmUpKTtcclxuXHJcblx0XHRcdC8vIG1lbnUgaXRlbSBsaW5rJ3MgdGV4dCBwYXJ0XHJcblx0XHRcdC5tZW51LXRleHQge1xyXG5cdFx0XHRcdEBpbmNsdWRlIGF0dHIoY29sb3IsIGdldCgkaXRlbSwgbGluaywgdGV4dCwgZm9udC1jb2xvciwgYWN0aXZlKSk7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC8vIG1lbnUgaXRlbSBsaW5rJ3MgaWNvbiBwYXJ0XHJcblx0XHRcdC5tZW51LWljb24ge1xyXG5cdFx0XHRcdEBpbmNsdWRlIGF0dHIoY29sb3IsIGdldCgkaXRlbSwgbGluaywgaWNvbiwgZm9udC1jb2xvciwgYWN0aXZlKSk7XHJcblxyXG5cdFx0XHRcdC8vIER1ZS10b25lIGljb25cclxuXHRcdFx0XHQmLnN2Zy1pY29uIHtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIHN2Zy1pY29uLWNvbG9yKGdldCgkaXRlbSwgbGluaywgaWNvbiwgZm9udC1jb2xvciwgYWN0aXZlKSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQvLyBtZW51IGl0ZW0gbGluaydzIGJ1bGxldFxyXG5cdFx0XHQubWVudS1idWxsZXQge1xyXG5cdFx0XHRcdCYubWVudS1idWxsZXQtZG90IHtcclxuXHRcdFx0XHRcdD4gc3BhbiB7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGF0dHIoYmFja2dyb3VuZC1jb2xvciwgZ2V0KCRpdGVtLCBsaW5rLCBidWxsZXQsIGRvdCwgYmctY29sb3IsIGFjdGl2ZSkpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Ji5tZW51LWJ1bGxldC1saW5lIHtcclxuXHRcdFx0XHRcdD4gc3BhbiB7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGF0dHIoYmFja2dyb3VuZC1jb2xvciwgZ2V0KCRpdGVtLCBsaW5rLCBidWxsZXQsIGxpbmUsIGJnLWNvbG9yLCBhY3RpdmUpKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC8vIG1lbnUgaXRlbSBsaW5rJ3MgYXJyb3cgcGFydFxyXG5cdFx0XHQubWVudS1hcnJvdyB7XHJcblx0XHRcdFx0QGluY2x1ZGUgYXR0cihjb2xvciwgZ2V0KCRpdGVtLCBsaW5rLCBhcnJvdywgZm9udC1jb2xvciwgYWN0aXZlKSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC8vIGl0ZW0gbGluayBob3ZlciBzdGF0ZVxyXG5cdCY6bm90KC5tZW51LWl0ZW0tcGFyZW50KTpub3QoLm1lbnUtaXRlbS1vcGVuKTpub3QoLm1lbnUtaXRlbS1oZXJlKTpub3QoLm1lbnUtaXRlbS1hY3RpdmUpOmhvdmVyIHtcclxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcztcclxuXHRcdEBpbmNsdWRlIGF0dHIoYmFja2dyb3VuZC1jb2xvciwgZ2V0KCRpdGVtLCBzZWxmLCBiZy1jb2xvciwgaG92ZXIpKTtcclxuXHJcblx0XHQ+IC5tZW51LWhlYWRpbmcsXHJcblx0XHQ+IC5tZW51LWxpbmsge1xyXG5cdFx0XHRAaW5jbHVkZSBhdHRyKGJhY2tncm91bmQtY29sb3IsIGdldCgkaXRlbSwgbGluaywgc2VsZiwgYmctY29sb3IsIGhvdmVyKSk7XHJcblxyXG5cdFx0XHQvLyBtZW51IGl0ZW0gbGluaydzIHRleHQgcGFydFxyXG5cdFx0XHQubWVudS10ZXh0IHtcclxuXHRcdFx0XHRAaW5jbHVkZSBhdHRyKGNvbG9yLCBnZXQoJGl0ZW0sIGxpbmssIHRleHQsIGZvbnQtY29sb3IsIGhvdmVyKSk7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC8vIG1lbnUgaXRlbSBsaW5rJ3MgaWNvbiBwYXJ0XHJcblx0XHRcdC5tZW51LWljb24ge1xyXG5cdFx0XHRcdEBpbmNsdWRlIGF0dHIoY29sb3IsIGdldCgkaXRlbSwgbGluaywgaWNvbiwgZm9udC1jb2xvciwgaG92ZXIpKTtcclxuXHJcblx0XHRcdFx0Ly8gRHVlLXRvbmUgaWNvblxyXG5cdFx0XHRcdCYuc3ZnLWljb24ge1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgc3ZnLWljb24tY29sb3IoZ2V0KCRpdGVtLCBsaW5rLCBpY29uLCBmb250LWNvbG9yLCBob3ZlcikpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gbWVudSBpdGVtIGxpbmsncyBidWxsZXRcclxuXHRcdFx0Lm1lbnUtYnVsbGV0IHtcclxuXHRcdFx0XHQmLm1lbnUtYnVsbGV0LWRvdCB7XHJcblx0XHRcdFx0XHQ+IHNwYW4ge1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBhdHRyKGJhY2tncm91bmQtY29sb3IsIGdldCgkaXRlbSwgbGluaywgYnVsbGV0LCBkb3QsIGJnLWNvbG9yLCBob3ZlcikpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Ji5tZW51LWJ1bGxldC1saW5lIHtcclxuXHRcdFx0XHRcdD4gc3BhbiB7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGF0dHIoYmFja2dyb3VuZC1jb2xvciwgZ2V0KCRpdGVtLCBsaW5rLCBidWxsZXQsIGxpbmUsIGJnLWNvbG9yLCBob3ZlcikpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gbWVudSBpdGVtIGxpbmsncyBhcnJvdyBwYXJ0XHJcblx0XHRcdC5tZW51LWFycm93IHtcclxuXHRcdFx0XHRAaW5jbHVkZSBhdHRyKGNvbG9yLCBnZXQoJGl0ZW0sIGxpbmssIGFycm93LCBmb250LWNvbG9yLCBob3ZlcikpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4vLyBTZWN0aW9uXHJcbkBtaXhpbiBtZW51LXZlci1zZWN0aW9uLWJhc2UoJHNlY3Rpb24pIHtcclxuXHRtYXJnaW46IGdldCgkc2VjdGlvbiwgc2VsZiwgbWFyZ2luKTtcclxuXHRoZWlnaHQ6IGdldCgkc2VjdGlvbiwgc2VsZiwgaGVpZ2h0KTtcclxuXHJcblx0Lm1lbnUtdGV4dCB7XHJcblx0XHRmb250LXNpemU6IGdldCgkc2VjdGlvbiwgdGV4dCwgZm9udC1zaXplKTtcclxuXHRcdGZvbnQtd2VpZ2h0OiBnZXQoJHNlY3Rpb24sIHRleHQsIGZvbnQtd2VpZ2h0KTtcclxuXHRcdHRleHQtdHJhbnNmb3JtOiBnZXQoJHNlY3Rpb24sIHRleHQsIGZvbnQtdHJhbnNmb3JtKTtcclxuXHRcdGxldHRlci1zcGFjaW5nOiBnZXQoJHNlY3Rpb24sIHRleHQsIGxldHRlci1zcGFjaW5nKTtcclxuXHR9XHJcblxyXG5cdEBpZiBoYXMoJHNlY3Rpb24sIGljb24pIHtcclxuXHRcdC5tZW51LWljb24ge1xyXG5cdFx0XHRwYWRkaW5nOiBnZXQoJHNlY3Rpb24sIGljb24sIHBhZGRpbmcpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuQG1peGluIG1lbnUtdmVyLXNlY3Rpb24tdGhlbWUoJHNlY3Rpb24pIHtcclxuXHQubWVudS10ZXh0IHtcclxuXHRcdEBpbmNsdWRlIGF0dHIoY29sb3IsIGdldCgkc2VjdGlvbiwgdGV4dCwgZm9udC1jb2xvcikpO1xyXG5cdH1cclxuXHJcblx0QGlmIGhhcygkc2VjdGlvbiwgaWNvbikge1xyXG5cdFx0Lm1lbnUtaWNvbiB7XHJcblx0XHRcdEBpbmNsdWRlIGF0dHIoY29sb3IsIGdldCgkc2VjdGlvbiwgaWNvbiwgZm9udC1jb2xvcikpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLy8gU2VwYXJhdG9yXHJcbkBtaXhpbiBtZW51LXZlci1zZXBhcmF0b3ItYmFzZSgkc2VwYXJhdG9yKSB7XHJcblx0bWFyZ2luOiBnZXQoJHNlcGFyYXRvciwgbWFyZ2luKTtcclxuXHJcblx0Lm1lbnUtc2VwYXJhdG9yLW1hcmdpbmxlc3Mge1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIG1lbnUtdmVyLXNlcGFyYXRvci10aGVtZSgkc2VwYXJhdG9yKSB7XHJcblx0QGluY2x1ZGUgYXR0cihib3JkZXItYm90dG9tLCBnZXQoJHNlcGFyYXRvciwgYm9yZGVyKSk7XHJcbn1cclxuXHJcbi8vIE1pbmltaXplIFBhcmVudCBJdGVtXHJcbkBtaXhpbiBtZW51LXZlci1taW5pbWl6ZS1wYXJlbnQtaXRlbS1iYXNlKCRpdGVtKSB7XHJcblx0Ly8gaXRlbVxyXG5cdG1hcmdpbjogZ2V0KCRpdGVtLCBzZWxmLCBtYXJnaW4pO1xyXG5cclxuXHQvLyBpdGVtIGxpbmsgYW5kIGhlYWRpbmdcclxuXHQ+IC5tZW51LWxpbmsge1xyXG5cdFx0aGVpZ2h0OiBnZXQoJGl0ZW0sIGxpbmssIHNlbGYsIGhlaWdodCk7XHJcblx0XHRwYWRkaW5nOiBnZXQoJGl0ZW0sIGxpbmssIHNlbGYsIHBhZGRpbmcpO1xyXG5cclxuXHRcdC8vIG1lbnUgaXRlbSBsaW5rJ3MgdGV4dCBwYXJ0XHJcblx0XHQubWVudS10ZXh0IHtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IGdldCgkaXRlbSwgbGluaywgdGV4dCwgZm9udC13ZWlnaHQpO1xyXG5cdFx0XHRmb250LXNpemU6IGdldCgkaXRlbSwgbGluaywgdGV4dCwgZm9udC1zaXplKTtcclxuXHRcdFx0dGV4dC10cmFuc2Zvcm06IGdldCgkaXRlbSwgbGluaywgdGV4dCwgZm9udC10cmFuc2Zvcm0pO1xyXG5cdFx0XHRjdXJzb3I6IHRleHQgIWltcG9ydGFudDtcclxuXHRcdH1cclxuXHJcblx0XHQvLyBtZW51IGl0ZW0gbGluaydzIGljb24gcGFydFxyXG5cdFx0Lm1lbnUtbGFiZWwge1xyXG5cdFx0XHRwYWRkaW5nOiBnZXQoJGl0ZW0sIGxpbmssIGxhYmVsLCBwYWRkaW5nKTtcclxuXHRcdFx0dGV4dC1hbGlnbjogZ2V0KCRpdGVtLCBsaW5rLCBsYWJlbCwgYWxpZ24pO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuQG1peGluIG1lbnUtdmVyLW1pbmltaXplLXBhcmVudC1pdGVtLXRoZW1lKCRpdGVtKSB7XHJcblx0Ly8gaXRlbVxyXG5cdEBpbmNsdWRlIGF0dHIoYmFja2dyb3VuZC1jb2xvciwgZ2V0KCRpdGVtLCBzZWxmLCBiZy1jb2xvciwgZGVmYXVsdCkpO1xyXG5cclxuXHQvLyBpdGVtIGxpbmsgYW5kIGhlYWRpbmdcclxuXHQ+IC5tZW51LWxpbmsge1xyXG5cdFx0Ly8gbWVudSBpdGVtIGxpbmsncyB0ZXh0IHBhcnRcclxuXHRcdD4gLm1lbnUtdGV4dCB7XHJcblx0XHRcdEBpbmNsdWRlIGF0dHIoY29sb3IsIGdldCgkaXRlbSwgbGluaywgdGV4dCwgZm9udC1jb2xvciwgZGVmYXVsdCkpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLy8gQmFzZVxyXG5AbWl4aW4gbWVudS12ZXItYmFzZSgkYmFzZS1jb25maWcsICRsYXlvdXQpIHtcclxuXHQuI3tnZXQoJGJhc2UtY29uZmlnLCBjbGFzcyl9IHtcclxuXHRcdC8vIG1lbnUgbmF2XHJcblx0XHQubWVudS1uYXYge1xyXG5cdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0XHRcdHBhZGRpbmc6IGdldCgkbGF5b3V0LCBkZWZhdWx0LCBzZWxmLCBwYWRkaW5nKTtcclxuXHJcblx0XHRcdC8vIEJhc2UgbWFya3VwXHJcblx0XHRcdC5tZW51LXNjcm9sbCB7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0XHRcdGZsZXgtZ3JvdzogMTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Lm1lbnUtc3VibmF2IHtcclxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRcdFx0ZmxleC1ncm93OiAxO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gZ2VuZXJhbCBzdWJtZW51XHJcblx0XHRcdC5tZW51LWlubmVyLFxyXG5cdFx0XHQubWVudS1zdWJtZW51IHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdGZsb2F0OiBub25lO1xyXG5cdFx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0XHRwYWRkaW5nOiAwO1xyXG5cclxuXHRcdFx0XHRAaWYgZ2V0KCRiYXNlLWNvbmZpZywgbW9kZSkgPT0gXCJ0YWJsZXQtYW5kLW1vYmlsZVwiIG9yIGdldCgkYmFzZS1jb25maWcsIG1vZGUpID09IFwibW9iaWxlXCIge1xyXG5cdFx0XHRcdFx0d2lkdGg6IGF1dG8gIWltcG9ydGFudDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdC8vIENvbnRlbnRcclxuXHRcdFx0XHQubWVudS1jb250ZW50IHtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdFx0XHRtYXJnaW46IDA7XHJcblxyXG5cdFx0XHRcdFx0PiAubWVudS1pdGVtIHtcclxuXHRcdFx0XHRcdFx0cGFkZGluZzogMDtcclxuXHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcdFx0XHRsaXN0LXN0eWxlOiBub25lO1xyXG5cclxuXHRcdFx0XHRcdFx0Ji5tZW51LWhlYWRpbmdsZXNzIHtcclxuXHRcdFx0XHRcdFx0XHQ+IC5tZW51LWlubmVyIHtcclxuXHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblxyXG5cdFx0XHRcdFx0XHRcdFx0PiBsaSA+IC5tZW51LWxpbmsge1xyXG5cdCAgIFx0XHRcdFx0XHRcdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQvLyBnZW5lcmFsIGl0ZW1cclxuXHRcdFx0Lm1lbnUtaXRlbSB7XHJcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0XHRcdGZsZXgtZ3JvdzogMTtcclxuXHRcdFx0XHRmbG9hdDogbm9uZTtcclxuXHRcdFx0XHRwYWRkaW5nOiAwO1xyXG5cclxuXHRcdFx0XHQvLyBpdGVtIGxpbmsgYW5kIGhlYWRpbmdcclxuXHRcdFx0XHQ+IC5tZW51LWhlYWRpbmcsXHJcblx0XHRcdFx0PiAubWVudS1saW5rIHtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRmbGV4LWdyb3c6IDE7XHJcblx0XHRcdFx0XHRhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuXHRcdFx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0XHRvdXRsaW5lOiBub25lO1xyXG5cclxuXHRcdFx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHQubWVudS10ZXh0IHtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0XHRcdFx0ZmxleC1ncm93OiAxO1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdC5tZW51LWxhYmVsIHtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0XHRcdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHQvLyBtZW51IGl0ZW0gbGluaydzIGljb24gcGFydFxyXG5cdFx0XHRcdFx0Lm1lbnUtaWNvbiB7XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAwO1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdC8vIG1lbnUgaXRlbSBsaW5rJ3MgaWNvbiBwYXJ0XHJcblx0XHRcdFx0XHQubWVudS1idWxsZXQge1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogMDtcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHQvLyBtZW51IGl0ZW0gbGluaydzIGFycm93IHBhcnRcclxuXHRcdFx0XHRcdC5tZW51LWFycm93IHtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDA7XHJcblxyXG5cdFx0XHRcdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0XHRcdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Ly8gaXRlbSBsaW5rIG9wZW4gc3RhdGVcclxuXHRcdFx0XHQmLm1lbnUtaXRlbS1vcGVuIHtcclxuXHRcdFx0XHRcdD4gLm1lbnUtaGVhZGluZyxcclxuXHRcdFx0XHRcdD4gLm1lbnUtbGluayB7XHJcblx0XHRcdFx0XHRcdC8vIG1lbnUgaXRlbSBsaW5rJ3MgYXJyb3cgcGFydFxyXG5cdFx0XHRcdFx0XHQ+IC5tZW51LWFycm93IHtcclxuXHRcdFx0XHRcdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZVooOTBkZWcpI3snLypydGw6aWdub3JlKi8nfTtcclxuXHJcblx0XHRcdFx0XHRcdFx0XHRbZGlyZWN0aW9uPVwicnRsXCJdICYge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZVooLTkwZGVnKSN7Jy8qcnRsOmlnbm9yZSovJ307XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0PiAubWVudS1zdWJtZW51LFxyXG5cdFx0XHRcdFx0PiAubWVudS1pbm5lciB7XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRcdGZsZXgtZ3JvdzogMTtcclxuXHRcdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdC8vIHN1Ym1lbnUgaXRlbXNcclxuXHRcdFx0XHQubWVudS1zdWJtZW51IHtcclxuXHRcdFx0XHRcdC8vIHN1Ym1lbnUgaXRlbVxyXG5cdFx0XHRcdFx0Lm1lbnUtaXRlbSB7XHJcblx0XHRcdFx0XHRcdC8vIGl0ZW0gbGluayBhbmQgaGVhZGluZ1xyXG5cdFx0XHRcdFx0XHQ+IC5tZW51LWhlYWRpbmcsXHJcblx0XHRcdFx0XHRcdD4gLm1lbnUtbGluayB7XHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogZ2V0KCRsYXlvdXQsIGRlZmF1bHQsIGl0ZW0sIHN1Ym1lbnUsIGl0ZW0sIGxpbmssIHBhZGRpbmcpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0Ly8gcGFyZW50IGl0ZW0gdXNlZCBmb3IgbWluaW1pemVkIG1lbnUncyBkcm9wZG93biBzdWJtZW51c1xyXG5cdFx0XHRcdFx0Lm1lbnUtaXRlbS1wYXJlbnQge1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gZ2VuZXJhbCBzZWN0aW9uXHJcblx0XHRcdC5tZW51LXNlY3Rpb24ge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0cGFkZGluZzogZ2V0KCRsYXlvdXQsIGRlZmF1bHQsIHNlY3Rpb24sIHNlbGYsIHBhZGRpbmcpO1xyXG5cclxuXHRcdFx0XHQmLm1lbnUtc2VjdGlvbi1maXJzdCB7XHJcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQubWVudS10ZXh0IHtcclxuXHRcdFx0XHRcdGRpc3BsYXk6ZmxleDtcclxuXHRcdFx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Lm1lbnUtaWNvbiB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gZ2VuZXJhbCBzZXBhcmF0b3JcclxuXHRcdFx0Lm1lbnUtc2VwYXJhdG9yIHtcclxuXHRcdFx0XHRoZWlnaHQ6IDA7XHJcblx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcblx0XHRcdFx0Ji5tZW51LXNlcGFyYXRvci1tYXJnaW5sZXNzIHtcclxuXHRcdFx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC8vIEN1c3RvbSBtYXJrdXBcclxuXHRcdFx0Ly8gbWVudSBpdGVtXHJcblx0XHRcdD4gLm1lbnUtaXRlbSB7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdEBpbmNsdWRlIG1lbnUtdmVyLWl0ZW0tYmFzZShnZXQoJGxheW91dCwgZGVmYXVsdCwgaXRlbSkpO1xyXG5cclxuXHRcdFx0XHQubWVudS1zdWJtZW51IHtcclxuXHRcdFx0XHRcdC5tZW51LXN1Ym5hdiB7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGF0dHIobWFyZ2luLCBnZXQoJGxheW91dCwgZGVmYXVsdCwgaXRlbSwgc3VibWVudSwgc2VsZiwgbWFyZ2luKSk7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGF0dHIocGFkZGluZywgZ2V0KCRsYXlvdXQsIGRlZmF1bHQsIGl0ZW0sIHN1Ym1lbnUsIHNlbGYsIHBhZGRpbmcpKTtcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHQvLyBtZW51IGl0ZW1cclxuXHRcdFx0XHRcdC5tZW51LWl0ZW0ge1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBtZW51LXZlci1pdGVtLWJhc2UoZ2V0KCRsYXlvdXQsIGRlZmF1bHQsIGl0ZW0sIHN1Ym1lbnUsIGl0ZW0pKTtcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHQvLyBtZW51IHNlY3Rpb25cclxuXHRcdFx0XHRcdC5tZW51LXNlY3Rpb24ge1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBtZW51LXZlci1zZWN0aW9uLWJhc2UoZ2V0KCRsYXlvdXQsIGRlZmF1bHQsIGl0ZW0sIHN1Ym1lbnUsIHNlY3Rpb24pKTtcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHQvLyBtZW51IGl0ZW0gc2VwYXJhdG9yXHJcblx0XHRcdFx0XHQubWVudS1zZXBhcmF0b3Ige1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBtZW51LXZlci1zZXBhcmF0b3ItYmFzZShnZXQoJGxheW91dCwgZGVmYXVsdCwgaXRlbSwgc3VibWVudSwgc2VwYXJhdG9yKSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQvLyBtZW51IHNlY3Rpb25cclxuXHRcdFx0PiAubWVudS1zZWN0aW9uIHtcclxuXHRcdFx0XHRAaW5jbHVkZSBtZW51LXZlci1zZWN0aW9uLWJhc2UoZ2V0KCRsYXlvdXQsIGRlZmF1bHQsIHNlY3Rpb24pKTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gbWVudSBpdGVtIHNlcGFyYXRvclxyXG5cdFx0XHQ+IC5tZW51LXNlcGFyYXRvciB7XHJcblx0XHRcdFx0QGluY2x1ZGUgbWVudS12ZXItc2VwYXJhdG9yLWJhc2UoZ2V0KCRsYXlvdXQsIGRlZmF1bHQsIHNlcGFyYXRvcikpO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQvLyBzdWJtZW51IGxpbmsgcGFkZGluZ3MgYW5kIGluZGVudGlvbnNcclxuXHRcdFx0Ly8gaXRlbVxyXG5cdFx0XHQkaXRlbS1saW5rLXBhZGRpbmc6IGdldCgkbGF5b3V0LCBkZWZhdWx0LCBpdGVtLCBsaW5rLCBzZWxmLCBwYWRkaW5nKTtcclxuXHRcdFx0JGl0ZW0tc2VjdGlvbi1wYWRkaW5nOiBnZXQoJGxheW91dCwgZGVmYXVsdCwgc2VjdGlvbiwgc2VsZiwgcGFkZGluZyk7XHJcblxyXG5cdFx0XHQvLyBpdGVtIHN1Ym1lbnVcclxuXHRcdFx0JGl0ZW0tc3VibWVudS1wYWRkaW5nLWxlZnQ6IGdldCgkbGF5b3V0LCBkZWZhdWx0LCBpdGVtLCBzdWJtZW51LCBpdGVtLCBsaW5rLCBzZWxmLCBwYWRkaW5nLXgpO1xyXG5cclxuXHRcdFx0JGl0ZW0tc3VibWVudS1pbmRlbnQ6IGdldCgkbGF5b3V0LCBkZWZhdWx0LCBpdGVtLCBzdWJtZW51LCBzZWxmLCBpbmRlbnQpO1xyXG5cdFx0XHQkaXRlbS1zdWJtZW51LWxpbmstcGFkZGluZzogZ2V0KCRsYXlvdXQsIGRlZmF1bHQsIGl0ZW0sIHN1Ym1lbnUsIGl0ZW0sIGxpbmssIHNlbGYsIHBhZGRpbmcpO1xyXG5cclxuXHRcdFx0JGl0ZW0tc3VibWVudS1zZWN0aW9uLWluZGVudDogZ2V0KCRsYXlvdXQsIGRlZmF1bHQsIGl0ZW0sIHN1Ym1lbnUsIHNlY3Rpb24sIHNlbGYsIGluZGVudCk7XHJcblx0XHRcdCRpdGVtLXN1Ym1lbnUtc2VjdGlvbi1wYWRkaW5nOiBnZXQoJGxheW91dCwgZGVmYXVsdCwgaXRlbSwgc3VibWVudSwgc2VjdGlvbiwgcGFkZGluZyk7XHJcblxyXG5cdFx0XHQ+IC5tZW51LWl0ZW0ge1xyXG5cdFx0XHRcdD4gLm1lbnUtbGluayB7XHJcblx0XHRcdFx0XHRwYWRkaW5nOiAkaXRlbS1saW5rLXBhZGRpbmc7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQ+IC5tZW51LXN1Ym1lbnUge1xyXG5cdFx0XHRcdFx0Lm1lbnUtc3VibmF2IHtcclxuXHRcdFx0XHRcdFx0Ly8gaXRlbSBsaW5rIHBhZGRpbmdzXHJcblx0XHRcdFx0XHRcdC5tZW51LWNvbnRlbnQge1xyXG5cdFx0XHRcdFx0XHRcdC5tZW51LWhlYWRpbmcge1xyXG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogJGl0ZW0tc3VibWVudS1saW5rLXBhZGRpbmc7XHJcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6ICRpdGVtLXN1Ym1lbnUtcGFkZGluZy1sZWZ0ICsgKDEgKiAkaXRlbS1zdWJtZW51LXNlY3Rpb24taW5kZW50KTtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHRcdC5tZW51LWlubmVyIHtcclxuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW46IDA7XHJcblxyXG5cdFx0XHRcdFx0XHRcdFx0Lm1lbnUtbGluayB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6ICRpdGVtLXN1Ym1lbnUtbGluay1wYWRkaW5nO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6ICRpdGVtLXN1Ym1lbnUtcGFkZGluZy1sZWZ0ICsgKDIgKiAkaXRlbS1zdWJtZW51LXNlY3Rpb24taW5kZW50KTtcclxuXHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdD4gLm1lbnUtaXRlbSB7XHJcblx0XHRcdFx0XHRcdFx0PiAubWVudS1saW5rIHtcclxuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6ICRpdGVtLXN1Ym1lbnUtbGluay1wYWRkaW5nO1xyXG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAkaXRlbS1zdWJtZW51LXBhZGRpbmctbGVmdCArICgxICogJGl0ZW0tc3VibWVudS1pbmRlbnQpO1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdFx0PiAubWVudS1zdWJtZW51IHtcclxuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDA7XHJcblxyXG5cdFx0XHRcdFx0XHRcdFx0Lm1lbnUtc3VibmF2IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogMDtcclxuXHJcblx0XHRcdFx0XHRcdFx0XHRcdD4gLm1lbnUtaXRlbSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PiAubWVudS1saW5rIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6ICRpdGVtLXN1Ym1lbnUtbGluay1wYWRkaW5nO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAkaXRlbS1zdWJtZW51LXBhZGRpbmctbGVmdCArICgyICogJGl0ZW0tc3VibWVudS1pbmRlbnQpO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PiAubWVudS1zdWJtZW51IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDA7XHJcblxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0Lm1lbnUtc3VibmF2IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0PiAubWVudS1pdGVtIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ+IC5tZW51LWxpbmsge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogJGl0ZW0tc3VibWVudS1saW5rLXBhZGRpbmc7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6ICRpdGVtLXN1Ym1lbnUtcGFkZGluZy1sZWZ0ICsgKDMgKiAkaXRlbS1zdWJtZW51LWluZGVudCk7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHQvLyBzZWN0aW9uIHBhZGRpbmdzXHJcblx0XHRcdFx0XHRcdD4gLm1lbnUtc2VjdGlvbiB7XHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogJGl0ZW0tc3VibWVudS1zZWN0aW9uLXBhZGRpbmc7XHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiRpdGVtLXN1Ym1lbnUtcGFkZGluZy1sZWZ0ICsgKDEgKiAkaXRlbS1zdWJtZW51LXNlY3Rpb24taW5kZW50KTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0PiAubWVudS1pdGVtIHtcclxuXHRcdFx0XHRcdFx0XHQ+IC5tZW51LXN1Ym1lbnUge1xyXG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogMDtcclxuXHRcdFx0XHRcdFx0XHRcdC5tZW51LXN1Ym5hdiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdD4gLm1lbnUtc2VjdGlvbiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogJGl0ZW0tc3VibWVudS1zZWN0aW9uLXBhZGRpbmc7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAkaXRlbS1zdWJtZW51LXBhZGRpbmctbGVmdCArICgyICogJGl0ZW0tc3VibWVudS1zZWN0aW9uLWluZGVudCk7XHJcblx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdFx0XHRcdD4gLm1lbnUtaXRlbSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PiAubWVudS1zdWJtZW51IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQubWVudS1zdWJuYXYge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ+IC5tZW51LXNlY3Rpb24ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6ICRpdGVtLXN1Ym1lbnUtc2VjdGlvbi1wYWRkaW5nO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDokaXRlbS1zdWJtZW51LXBhZGRpbmctbGVmdCArICgzICogJGl0ZW0tc3VibWVudS1zZWN0aW9uLWluZGVudCk7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiBtZW51LXZlci10aGVtZSgkYmFzZS1jb25maWcsICRsYXlvdXQpIHtcclxuXHQuI3tnZXQoJGJhc2UtY29uZmlnLCBjbGFzcyl9IHtcclxuXHRcdEBpbmNsdWRlIGF0dHIoYmFja2dyb3VuZC1jb2xvciwgZ2V0KCRsYXlvdXQsIGRlZmF1bHQsIHNlbGYsIGJnLWNvbG9yKSk7XHJcblxyXG5cdFx0Lm1lbnUtbmF2IHtcclxuXHRcdFx0Ly8gbWVudSBpdGVtXHJcblx0XHRcdD4gLm1lbnUtaXRlbSB7XHJcblx0XHRcdFx0QGluY2x1ZGUgbWVudS12ZXItaXRlbS10aGVtZShnZXQoJGxheW91dCwgZGVmYXVsdCwgaXRlbSkpO1xyXG5cclxuXHRcdFx0XHQ+IC5tZW51LWFycm93IHtcclxuXHRcdFx0XHRcdGNvbG9yOiBnZXQoJGxheW91dCwgZGVmYXVsdCwgc2VsZiwgYmctY29sb3IpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gbWVudSBzZWN0aW9uXHJcblx0XHRcdD4gLm1lbnUtc2VjdGlvbiB7XHJcblx0XHRcdFx0QGluY2x1ZGUgbWVudS12ZXItc2VjdGlvbi10aGVtZShnZXQoJGxheW91dCwgZGVmYXVsdCwgc2VjdGlvbikpO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQvLyBtZW51IGl0ZW0gc2VwYXJhdG9yXHJcblx0XHRcdD4gLm1lbnUtc2VwYXJhdG9yIHtcclxuXHRcdFx0XHRAaW5jbHVkZSBtZW51LXZlci1zZXBhcmF0b3ItdGhlbWUoZ2V0KCRsYXlvdXQsIGRlZmF1bHQsIHNlcGFyYXRvcikpO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQvLyBtZW51IGl0ZW1cclxuXHRcdFx0PiAubWVudS1pdGVtIHtcclxuXHRcdFx0XHQubWVudS1zdWJtZW51IHtcclxuXHRcdFx0XHRcdC5tZW51LXN1Ym5hdiB7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGF0dHIoYmFja2dyb3VuZC1jb2xvciwgZ2V0KCRsYXlvdXQsIGRlZmF1bHQsIGl0ZW0sIHN1Ym1lbnUsIHNlbGYsIGJnLWNvbG9yLCBkZWZhdWx0KSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQvLyBtZW51IGl0ZW1cclxuXHRcdFx0XHRcdC5tZW51LWl0ZW0ge1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBtZW51LXZlci1pdGVtLXRoZW1lKGdldCgkbGF5b3V0LCBkZWZhdWx0LCBpdGVtLCBzdWJtZW51LCBpdGVtKSk7XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0Ly8gbWVudSBzZWN0aW9uXHJcblx0XHRcdFx0XHQubWVudS1zZWN0aW9uIHtcclxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgbWVudS12ZXItc2VjdGlvbi10aGVtZShnZXQoJGxheW91dCwgZGVmYXVsdCwgaXRlbSwgc3VibWVudSwgc2VjdGlvbikpO1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdC8vIG1lbnUgaXRlbSBzZXBhcmF0b3JcclxuXHRcdFx0XHRcdC5tZW51LXNlcGFyYXRvciB7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIG1lbnUtdmVyLXNlcGFyYXRvci10aGVtZShnZXQoJGxheW91dCwgZGVmYXVsdCwgaXRlbSwgc3VibWVudSwgc2VwYXJhdG9yKSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4vLyBEcm9wZG93blxyXG5AbWl4aW4gbWVudS12ZXItZHJvcGRvd24tYmFzZSgkYmFzZS1jb25maWcsICRsYXlvdXQpIHtcclxuXHQvLyBiYXNlIGRyb3Bkb3duIHN1Ym1lbnVcclxuXHQuI3tnZXQoJGJhc2UtY29uZmlnLCBwYXJlbnQtY2xhc3MpfS1taW5pbWl6ZTpub3QoLiN7Z2V0KCRiYXNlLWNvbmZpZywgcGFyZW50LWNsYXNzKX0tbWluaW1pemUtaG92ZXIpIC4je2dldCgkYmFzZS1jb25maWcsIGNsYXNzKX0sXHJcblx0LiN7Z2V0KCRiYXNlLWNvbmZpZywgY2xhc3MpfS4je2dldCgkYmFzZS1jb25maWcsIGNsYXNzKX0tZHJvcGRvd24ge1xyXG5cdFx0Lm1lbnUtbmF2IHtcclxuXHRcdFx0Lm1lbnUtaXRlbTpub3QoW2RhdGEtbWVudS1zdWJtZW51LW1vZGU9YWNjb3JkaW9uXSkge1xyXG5cdFx0XHRcdD4gLm1lbnUtbGluayB7XHJcblx0XHRcdFx0XHQ+IC5tZW51LWFycm93IHtcclxuXHRcdFx0XHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGZpeC1hbmltYXRpb24tbGFncygpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQ+IC5tZW51LXN1Ym1lbnUge1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgZml4LWFuaW1hdGlvbi1sYWdzKCk7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmLm1lbnUtaXRlbS1ob3ZlciB7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdFx0XHRcdFx0PiAubWVudS1zdWJtZW51IHtcclxuXHRcdFx0XHRcdFx0dG9wOiBnZXQoJGxheW91dCwgZHJvcGRvd24sIGl0ZW0sIHN1Ym1lbnUsIHNlbGYsIG9mZnNldCwgaW5uZXIsIGRlZmF1bHQpO1xyXG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdFx0XHRcdHotaW5kZXg6IGdldCgkbGF5b3V0LCBkcm9wZG93biwgaXRlbSwgc2VsZiwgemluZGV4KTtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdFx0XHR3aWR0aDogZ2V0KCRsYXlvdXQsIGRyb3Bkb3duLCBpdGVtLCBzdWJtZW51LCBzZWxmLCB3aWR0aCk7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiBnZXQoJGxheW91dCwgZHJvcGRvd24sIGl0ZW0sIHN1Ym1lbnUsIHNlbGYsIHBhcmVudC13aWR0aCk7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoZ2V0KCRsYXlvdXQsIGRyb3Bkb3duLCBpdGVtLCBzdWJtZW51LCBzZWxmLCBib3JkZXItcmFkaXVzKSk7XHJcblxyXG5cdFx0XHRcdFx0XHQmLm1lbnUtc3VibWVudS11cCB7XHJcblx0XHRcdFx0XHRcdFx0Ym90dG9tOiAwO1xyXG5cdFx0XHRcdFx0XHRcdHRvcDogYXV0bztcclxuXHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdCBcdGFuaW1hdGlvbjoje2dldCgkYmFzZS1jb25maWcsIGNsYXNzKX0tc3VibWVudS1mYWRlLWluIC4zcyBlYXNlIDEsICN7Z2V0KCRiYXNlLWNvbmZpZywgY2xhc3MpfS1zdWJtZW51LW1vdmUtdXAgLjNzIGVhc2Utb3V0IDE7XHJcblxyXG5cdFx0XHRcdFx0IFx0Ji5tZW51LXN1Ym1lbnUtdXAge1xyXG5cdFx0XHRcdFx0IFx0XHR0b3A6IGF1dG87XHJcblx0XHRcdFx0XHQgXHRcdGJvdHRvbTogZ2V0KCRsYXlvdXQsIGRyb3Bkb3duLCBpdGVtLCBzdWJtZW51LCBzZWxmLCBvZmZzZXQsIGlubmVyLCB1cCk7XHJcblx0XHRcdFx0XHQgXHRcdGFuaW1hdGlvbjogI3tnZXQoJGJhc2UtY29uZmlnLCBjbGFzcyl9LXN1Ym1lbnUtZmFkZS1pbiAuM3MgZWFzZSAxLCAje2dldCgkYmFzZS1jb25maWcsIGNsYXNzKX0tc3VibWVudS1tb3ZlLWRvd24gLjNzIGVhc2Utb3V0IDE7XHJcblxyXG5cdCAgICAgICAgICAgICAgICAgICAgXHRAaW5jbHVkZSBmb3ItaWUxMSB7XHJcblx0ICAgICAgICAgICAgICAgICAgICAgICAgXHRhbmltYXRpb246IG5vbmU7XHJcblx0ICAgICAgICAgICAgICAgICAgICBcdH1cclxuXHRcdFx0XHRcdCBcdH1cclxuXHJcblx0XHRcdFx0XHRcdC5tZW51LXN1Ym5hdiB7XHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogZ2V0KCRsYXlvdXQsIGRyb3Bkb3duLCBpdGVtLCBzdWJtZW51LCBzZWxmLCBwYWRkaW5nKTtcclxuXHJcblx0XHRcdFx0XHRcdFx0PiAubWVudS1pdGVtIHtcclxuXHRcdFx0XHRcdFx0XHRcdC5tZW51LWxpbmsge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IGdldCgkbGF5b3V0LCBkcm9wZG93biwgaXRlbSwgc3VibWVudSwgaXRlbSwgbGluaywgc2VsZiwgcGFkZGluZyk7XHJcblxyXG5cdFx0XHRcdFx0XHRcdFx0XHQubGluay10aXRsZSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0XHRcdFx0Lm1lbnUtdGV4dCB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZml4LWFuaW1hdGlvbi1sYWdzKCk7XHJcblx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdFx0XHRcdC5tZW51LWljb24ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdFx0XHRcdC5tZW51LWJ1bGxldCB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0XHRcdFx0Lm1lbnUtbGFiZWwge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdFx0XHRcdC5tZW51LWFycm93IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHRcdFx0Lm1lbnUtc3VibWVudSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdC5tZW51LXN1Ym5hdiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogZ2V0KCRsYXlvdXQsIGRyb3Bkb3duLCBpdGVtLCBzdWJtZW51LCBzZWxmLCBwYWRkaW5nKTtcclxuXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PiAubWVudS1pdGVtIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdD4gLm1lbnUtbGluayB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IGdldCgkbGF5b3V0LCBkcm9wZG93biwgaXRlbSwgc3VibWVudSwgaXRlbSwgbGluaywgc2VsZiwgcGFkZGluZyk7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0Lm1lbnUtc3VibWVudSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdC5tZW51LXN1Ym5hdiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogZ2V0KCRsYXlvdXQsIGRyb3Bkb3duLCBpdGVtLCBzdWJtZW51LCBzZWxmLCBwYWRkaW5nKTtcclxuXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0PiAubWVudS1pdGVtIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdD4gLm1lbnUtbGluayB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IGdldCgkbGF5b3V0LCBkcm9wZG93biwgaXRlbSwgc3VibWVudSwgaXRlbSwgbGluaywgc2VsZiwgcGFkZGluZyk7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ+IC5tZW51LXNlY3Rpb24ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogZ2V0KCRsYXlvdXQsIGRyb3Bkb3duLCBpdGVtLCBzdWJtZW51LCBzZWN0aW9uLCBzZWxmLCBwYWRkaW5nKTtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBtZW51LXZlci1pdGVtLWJhc2UoZ2V0KCRsYXlvdXQsIGRyb3Bkb3duLCBpdGVtLCBzdWJtZW51LCBpdGVtKSk7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0XHQ+IC5tZW51LXNlY3Rpb24ge1xyXG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgbWVudS12ZXItc2VjdGlvbi1iYXNlKCBnZXQoJGxheW91dCwgZHJvcGRvd24sIGl0ZW0sIHN1Ym1lbnUsIHNlY3Rpb24pICk7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdFx0XHQ+IC5tZW51LXNlcGFyYXRvciB7XHJcblx0XHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBtZW51LXZlci1zZXBhcmF0b3ItYmFzZSggZ2V0KCRsYXlvdXQsIGRyb3Bkb3duLCBpdGVtLCBzdWJtZW51LCBzZXBhcmF0b3IpICk7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQ+IC5tZW51LWl0ZW06bm90KFtkYXRhLW1lbnUtc3VibWVudS1tb2RlPWFjY29yZGlvbl0pIHtcclxuXHRcdFx0XHQmLm1lbnUtaXRlbS1ob3ZlciB7XHJcblx0XHRcdFx0XHQ+IC5tZW51LXN1Ym1lbnUge1xyXG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogZ2V0KCRsYXlvdXQsIGRyb3Bkb3duLCBpdGVtLCBzdWJtZW51LCBzZWxmLCBwYXJlbnQtd2lkdGgpO1xyXG5cdFx0XHRcdFx0XHR0b3A6IGdldCgkbGF5b3V0LCBkcm9wZG93biwgaXRlbSwgc3VibWVudSwgc2VsZiwgb2Zmc2V0LCByb290LCBkZWZhdWx0KTtcclxuXHJcblx0XHRcdFx0XHRcdCYubWVudS1zdWJtZW51LXVwIHtcclxuXHRcdFx0XHRcdFx0XHRib3R0b206IGdldCgkbGF5b3V0LCBkcm9wZG93biwgaXRlbSwgc3VibWVudSwgc2VsZiwgb2Zmc2V0LCByb290LCB1cCk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiBtZW51LXZlci1kcm9wZG93bi10aGVtZSgkYmFzZS1jb25maWcsICRsYXlvdXQpIHtcclxuXHQuI3tnZXQoJGJhc2UtY29uZmlnLCBwYXJlbnQtY2xhc3MpfS1taW5pbWl6ZTpub3QoLiN7Z2V0KCRiYXNlLWNvbmZpZywgcGFyZW50LWNsYXNzKX0tbWluaW1pemUtaG92ZXIpIC4je2dldCgkYmFzZS1jb25maWcsIGNsYXNzKX0sXHJcblx0LiN7Z2V0KCRiYXNlLWNvbmZpZywgY2xhc3MpfS4je2dldCgkYmFzZS1jb25maWcsIGNsYXNzKX0tZHJvcGRvd24ge1xyXG5cdFx0Lm1lbnUtbmF2IHtcclxuXHRcdFx0Lm1lbnUtaXRlbTpub3QoW2RhdGEtbWVudS1zdWJtZW51LW1vZGU9YWNjb3JkaW9uXSkge1xyXG5cdFx0XHRcdCYubWVudS1pdGVtLWhvdmVyIHtcclxuXHRcdFx0XHRcdD4gLm1lbnUtc3VibWVudSB7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldCgkbGF5b3V0LCBkcm9wZG93biwgaXRlbSwgc3VibWVudSwgc2VsZiwgYmctY29sb3IpO1xyXG5cdFx0XHRcdFx0XHRib3gtc2hhZG93OiBnZXQoJGxheW91dCwgZHJvcGRvd24sIGl0ZW0sIHN1Ym1lbnUsIHNlbGYsIGJveC1zaGFkb3cpO1xyXG5cclxuXHRcdFx0XHRcdFx0Lm1lbnUtc3VibmF2IHtcclxuXHRcdFx0XHRcdFx0XHQubWVudS1pdGVtIHtcclxuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIG1lbnUtdmVyLWl0ZW0tdGhlbWUoIGdldCgkbGF5b3V0LCBkcm9wZG93biwgaXRlbSwgc3VibWVudSwgaXRlbSkgKTtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0XHRcdC5tZW51LXNlY3Rpb24ge1xyXG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgbWVudS12ZXItc2VjdGlvbi10aGVtZSggZ2V0KCRsYXlvdXQsIGRyb3Bkb3duLCBpdGVtLCBzdWJtZW51LCBzZWN0aW9uKSApO1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRcdFx0Lm1lbnUtc2VwYXJhdG9yIHtcclxuXHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIG1lbnUtdmVyLXNlcGFyYXRvci10aGVtZSggZ2V0KCRsYXlvdXQsIGRyb3Bkb3duLCBpdGVtLCBzdWJtZW51LCBzZXBhcmF0b3IpICk7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4vLyBNaW5pbWl6ZVxyXG5AbWl4aW4gbWVudS12ZXItbWluaW1pemUtYmFzZSgkYmFzZS1jb25maWcsICRsYXlvdXQpIHtcclxuXHQuI3tnZXQoJGJhc2UtY29uZmlnLCBjbGFzcyl9IHtcclxuXHRcdC5tZW51LW5hdiB7XHJcblx0XHRcdHBhZGRpbmc6IGdldCgkbGF5b3V0LCBtaW5pbWl6ZSwgc2VsZiwgcGFkZGluZyk7XHJcblxyXG5cdFx0XHQ+IC5tZW51LWl0ZW0ge1xyXG5cdFx0XHRcdD4gLm1lbnUtbGluayB7XHJcblx0XHRcdFx0XHQubWVudS1pY29uIHtcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0Lm1lbnUtYnVsbGV0IHtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHQubWVudS10ZXh0IHtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHQubWVudS1sYWJlbCB7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHRcdFx0cmlnaHQ6IGdldCgkbGF5b3V0LCBtaW5pbWl6ZSwgaXRlbSwgbGluaywgbGFiZWwsIHJpZ2h0KTtcclxuXHJcblx0XHRcdFx0XHRcdC5sYWJlbCB7XHJcblx0XHRcdFx0XHRcdFx0dGV4dC1pbmRlbnQ6IC05OTk5cHg7XHJcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdFx0XHRcdFx0bWluLXdpZHRoOiBnZXQoJGxheW91dCwgbWluaW1pemUsIGl0ZW0sIGxpbmssIGxhYmVsLCBzaXplKTtcclxuXHRcdFx0XHRcdFx0XHR3aWR0aDogZ2V0KCRsYXlvdXQsIG1pbmltaXplLCBpdGVtLCBsaW5rLCBsYWJlbCwgc2l6ZSk7XHJcblx0XHRcdFx0XHRcdFx0bWluLWhlaWdodDogZ2V0KCRsYXlvdXQsIG1pbmltaXplLCBpdGVtLCBsaW5rLCBsYWJlbCwgc2l6ZSk7XHJcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiBnZXQoJGxheW91dCwgbWluaW1pemUsIGl0ZW0sIGxpbmssIGxhYmVsLCBzaXplKTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdC5tZW51LWFycm93IHtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdD4gLm1lbnUtc3VibWVudSB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmLm1lbnUtaXRlbS1oZXJlIHtcclxuXHRcdFx0XHRcdD4gLm1lbnUtYXJyb3cge1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmLm1lbnUtaXRlbS1ob3ZlciB7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0XHR6LWluZGV4OiBnZXQoJGxheW91dCwgbWluaW1pemUsIGl0ZW0sIHNlbGYsIHppbmRleCk7XHJcblx0XHRcdFx0XHR3aWR0aDogZ2V0KCRsYXlvdXQsIG1pbmltaXplLCBpdGVtLCBzZWxmLCB3aWR0aCk7XHJcblxyXG5cdFx0XHRcdFx0Ji5tZW51LWl0ZW0tb3BlbiB7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdD4gLm1lbnUtbGluayB7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiBnZXQoJGxheW91dCwgbWluaW1pemUsIHNlbGYsIHdpZHRoKTtcclxuXHJcblx0XHRcdFx0XHRcdC5saW5rLXRpdGxlIHtcclxuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0PiAubWVudS1zdWJtZW51IHtcclxuXHRcdFx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRcdFx0XHRib3R0b206IGF1dG87XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IGdldCgkbGF5b3V0LCBtaW5pbWl6ZSwgaXRlbSwgc3VibWVudSwgc2VsZiwgbWFyZ2luLWxlZnQpICFpbXBvcnRhbnQ7XHJcblxyXG5cdFx0XHRcdFx0XHRAaWYgaGFzKCRsYXlvdXQsIG1pbmltaXplLCBpdGVtLCBzdWJtZW51KSB7XHJcblx0XHRcdFx0XHRcdFx0Lm1lbnUtc3VibmF2IHtcclxuXHRcdFx0XHRcdFx0XHRcdD4gLm1lbnUtaXRlbS5tZW51LWl0ZW0tcGFyZW50IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgbWVudS12ZXItbWluaW1pemUtcGFyZW50LWl0ZW0tYmFzZSggZ2V0KCRsYXlvdXQsIG1pbmltaXplLCBpdGVtLCBzdWJtZW51LCBwYXJlbnQtaXRlbSkgKTtcclxuXHJcblx0XHRcdFx0XHRcdFx0XHRcdCYgKyAubWVudS1pdGVtIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiBnZXQoJGxheW91dCwgbWluaW1pemUsIGl0ZW0sIHN1Ym1lbnUsIHBhcmVudC1pdGVtLCBsaW5rLCBzZWxmLCBtYXJnaW4tYm90dG9tKTtcclxuXHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdD4gLm1lbnUtYXJyb3cge1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0PiAubWVudS1zZWN0aW9uIHtcclxuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcblx0XHRcdFx0Lm1lbnUtdGV4dCB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Lm1lbnUtaWNvbiB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRcdFx0cGFkZGluZzogZ2V0KCRsYXlvdXQsIG1pbmltaXplLCBzZWN0aW9uLCBpY29uLCBwYWRkaW5nKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiBtZW51LXZlci1taW5pbWl6ZS10aGVtZSgkYmFzZS1jb25maWcsICRsYXlvdXQpIHtcclxuXHQuI3tnZXQoJGJhc2UtY29uZmlnLCBjbGFzcyl9IHtcclxuXHRcdC8vIGJhc2UgdmVydGljYWwgbWVudVxyXG5cdFx0Lm1lbnUtbmF2IHtcclxuXHRcdFx0PiAubWVudS1pdGVtIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHJcblx0XHRcdFx0PiAubWVudS1saW5rIHtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldCgkbGF5b3V0LCBtaW5pbWl6ZSwgaXRlbSwgbGluaywgc2VsZiwgYmctY29sb3IsIGRlZmF1bHQpO1xyXG5cclxuXHRcdFx0XHRcdD4gLm1lbnUtaWNvbiB7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiBnZXQoJGxheW91dCwgbWluaW1pemUsIGl0ZW0sIGxpbmssIGljb24sIGZvbnQtY29sb3IsIGRlZmF1bHQpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Ji5tZW51LWl0ZW0taG92ZXIsXHJcblx0XHRcdFx0Ji5tZW51LWl0ZW0tb3BlbiB7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cclxuXHRcdFx0XHRcdD4gLm1lbnUtbGluayB7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldCgkbGF5b3V0LCBtaW5pbWl6ZSwgaXRlbSwgbGluaywgc2VsZiwgYmctY29sb3IsIG9wZW4pO1xyXG5cclxuXHRcdFx0XHRcdFx0PiAubWVudS1pY29uIHtcclxuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBhdHRyKGNvbG9yLCBnZXQoJGxheW91dCwgbWluaW1pemUsIGl0ZW0sIGxpbmssIGljb24sIGZvbnQtY29sb3IsIG9wZW4pKTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Ji5tZW51LWl0ZW0taGVyZSxcclxuXHRcdFx0XHQmLm1lbnUtaXRlbS1hY3RpdmUge1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHJcblx0XHRcdFx0XHQ+IC5tZW51LWxpbmsge1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQoJGxheW91dCwgbWluaW1pemUsIGl0ZW0sIGxpbmssIHNlbGYsIGJnLWNvbG9yLCBhY3RpdmUpO1xyXG5cclxuXHRcdFx0XHRcdFx0PiAubWVudS1pY29uIHtcclxuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBhdHRyKGNvbG9yLCBnZXQoJGxheW91dCwgbWluaW1pemUsIGl0ZW0sIGxpbmssIGljb24sIGZvbnQtY29sb3IsIGFjdGl2ZSkpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cclxuXHRcdFx0XHRcdD4gLm1lbnUtbGluayB7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldCgkbGF5b3V0LCBtaW5pbWl6ZSwgaXRlbSwgbGluaywgc2VsZiwgYmctY29sb3IsIGhvdmVyKTtcclxuXHJcblx0XHRcdFx0XHRcdD4gLm1lbnUtaWNvbiB7XHJcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYXR0cihjb2xvciwgZ2V0KCRsYXlvdXQsIG1pbmltaXplLCBpdGVtLCBsaW5rLCBpY29uLCBmb250LWNvbG9yLCBob3ZlciksICFpbXBvcnRhbnQpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRAaWYgaGFzKCRsYXlvdXQsIG1pbmltaXplLCBpdGVtLCBzdWJtZW51KSB7XHJcblx0XHRcdFx0XHQmLm1lbnUtaXRlbS1ob3ZlciA+IC5tZW51LXN1Ym1lbnUge1xyXG5cdFx0XHRcdFx0XHQubWVudS1zdWJuYXYgPiAubWVudS1pdGVtLm1lbnUtaXRlbS1wYXJlbnQge1xyXG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgbWVudS12ZXItbWluaW1pemUtcGFyZW50LWl0ZW0tdGhlbWUoIGdldCgkbGF5b3V0LCBtaW5pbWl6ZSwgaXRlbSwgc3VibWVudSwgcGFyZW50LWl0ZW0pICk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdD4gLm1lbnUtc2VjdGlvbiB7XHJcblx0XHRcdFx0Lm1lbnUtaWNvbiB7XHJcblx0XHRcdFx0XHRjb2xvcjogZ2V0KCRsYXlvdXQsIG1pbmltaXplLCBzZWN0aW9uLCBpY29uLCBmb250LWNvbG9yKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi8vIEJ1aWxkXHJcbi8vIEN1c3RvbSB0aGVtZVxyXG5AbWl4aW4gbWVudS12ZXItYnVpbGQtdGhlbWUoJGNvbmZpZywgJHRoZW1lKSB7XHJcblx0JHRoZW1lLWNvbmZpZzogKCk7XHJcblxyXG5cdEBpZiAoJHRoZW1lID09IGRlZmF1bHQpIHtcclxuXHRcdCR0aGVtZS1jb25maWc6IGdldCgkY29uZmlnLCBidWlsZCwgdGhlbWUpO1xyXG5cdH0gQGVsc2Uge1xyXG5cdFx0JHRoZW1lLWNvbmZpZzogZ2V0KCRjb25maWcsIGJ1aWxkLCB0aGVtZXMsICR0aGVtZSk7XHJcblx0fVxyXG5cclxuXHRAaWYgKGdldCgkY29uZmlnLCBiYXNlLCBtb2RlKSA9PSBnZW5lcmFsKSB7XHJcblx0XHRAaW5jbHVkZSBtZW51LXZlci10aGVtZSgoY2xhc3M6IGdldCgkY29uZmlnLCBiYXNlLCBjbGFzcykpLCAkdGhlbWUtY29uZmlnKTtcclxuXHR9IEBlbHNlIGlmIChnZXQoJGNvbmZpZywgYmFzZSwgbW9kZSkgPT0gdGFibGV0LWFuZC1tb2JpbGUpIHtcclxuXHRcdC8vIFRhYmxldCAmIE1vYmlsZSBNb2Rlc1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcblx0XHRcdEBpbmNsdWRlIG1lbnUtdmVyLXRoZW1lKChjbGFzczogZ2V0KCRjb25maWcsIGJhc2UsIGNsYXNzKSksICR0aGVtZS1jb25maWcpO1xyXG5cdFx0fVxyXG5cdH0gQGVsc2UgaWYgKGdldCgkY29uZmlnLCBiYXNlLCBtb2RlKSA9PSBtb2JpbGUpIHtcclxuXHRcdC8vIE1vYmlsZSBtb2RlXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuXHRcdFx0QGluY2x1ZGUgbWVudS12ZXItdGhlbWUoKGNsYXNzOiBnZXQoJGNvbmZpZywgYmFzZSwgY2xhc3MpKSwgJHRoZW1lLWNvbmZpZyk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRAaWYgKGhhcygkdGhlbWUtY29uZmlnLCBtaW5pbWl6ZSkpIHtcclxuXHRcdC8vIERlc2t0b3AgTW9kZVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG5cdFx0XHQuI3tnZXQoJGNvbmZpZywgYmFzZSwgcGFyZW50LWNsYXNzKX0tbWluaW1pemU6bm90KC4je2dldCgkY29uZmlnLCBiYXNlLCBwYXJlbnQtY2xhc3MpfS1taW5pbWl6ZS1ob3Zlcikge1xyXG5cdFx0XHRcdEBpbmNsdWRlIG1lbnUtdmVyLW1pbmltaXplLXRoZW1lKChjbGFzczogZ2V0KCRjb25maWcsIGJhc2UsIGNsYXNzKSwgcGFyZW50LWNsYXNzOiBnZXQoJGNvbmZpZywgYmFzZSwgcGFyZW50LWNsYXNzKSksICR0aGVtZS1jb25maWcpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRAaWYgKGhhcygkdGhlbWUtY29uZmlnLCBkcm9wZG93bikpIHtcclxuXHRcdC8vIERlc2t0b3AgTW9kZVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG5cdFx0XHRAaW5jbHVkZSBtZW51LXZlci1kcm9wZG93bi10aGVtZSgoY2xhc3M6IGdldCgkY29uZmlnLCBiYXNlLCBjbGFzcyksIHBhcmVudC1jbGFzczogZ2V0KCRjb25maWcsIGJhc2UsIHBhcmVudC1jbGFzcykpLCAkdGhlbWUtY29uZmlnKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi8vIEJ1aWxkIExheW91dFxyXG5AbWl4aW4gbWVudS12ZXItYnVpbGQtbGF5b3V0KCAkY29uZmlnICkge1xyXG5cdC8vIEJhc2UgbWVudVxyXG5cdEBpZiAoZ2V0KCRjb25maWcsIGJhc2UsIG1vZGUpID09IGdlbmVyYWwpIHtcclxuXHRcdEBpbmNsdWRlIG1lbnUtdmVyLWJhc2UoIGdldCgkY29uZmlnLCBiYXNlKSwgZ2V0KCRjb25maWcsIGJ1aWxkLCBsYXlvdXQpICk7XHJcblx0fSBAZWxzZSBpZiAoZ2V0KCRjb25maWcsIGJhc2UsIG1vZGUpID09IHRhYmxldC1hbmQtbW9iaWxlKSB7XHJcblx0XHQvLyBUYWJsZXQgJiBNb2JpbGUgTW9kZXNcclxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG5cdFx0XHRAaW5jbHVkZSBtZW51LXZlci1iYXNlKCBnZXQoJGNvbmZpZywgYmFzZSksIGdldCgkY29uZmlnLCBidWlsZCwgbGF5b3V0KSApO1xyXG5cdFx0fVxyXG5cdH0gQGVsc2UgaWYgKGdldCgkY29uZmlnLCBiYXNlLCBtb2RlKSA9PSBtb2JpbGUpIHtcclxuXHRcdC8vIE1vYmlsZSBtb2RlXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuXHRcdFx0QGluY2x1ZGUgbWVudS12ZXItYmFzZSggZ2V0KCRjb25maWcsIGJhc2UpLCBnZXQoJGNvbmZpZywgYnVpbGQsIGxheW91dCkgKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC8vIEJhc2UgZHJvcGRvd24gbWVudSBzdWJtZW51IG1vZGVcclxuXHRAaWYgKGhhcygkY29uZmlnLCBidWlsZCwgbGF5b3V0LCBkcm9wZG93bikpIHtcclxuXHRcdC8vIERlc2t0b3AgTW9kZVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG5cdFx0XHRAaW5jbHVkZSBtZW51LXZlci1kcm9wZG93bi1iYXNlKCBnZXQoJGNvbmZpZywgYmFzZSksIGdldCgkY29uZmlnLCBidWlsZCwgbGF5b3V0KSApO1xyXG5cdFx0fVxyXG5cclxuXHRcdC8vIERyb3Bkb3duIFN1Ym1lbnUgQW5pbWF0aW9uc1xyXG5cdFx0QGtleWZyYW1lcyAje2dldCgkY29uZmlnLCBiYXNlLCBjbGFzcyl9LXN1Ym1lbnUtZmFkZS1vdXQge1xyXG5cdFx0ICAgIGZyb20gICB7IG9wYWNpdHk6IDE7IH1cclxuXHRcdCAgICB0byB7IG9wYWNpdHk6IDA7IH1cclxuXHRcdH1cclxuXHJcblx0XHRAa2V5ZnJhbWVzICN7Z2V0KCRjb25maWcsIGJhc2UsIGNsYXNzKX0tc3VibWVudS1mYWRlLWluIHtcclxuXHRcdCAgICBmcm9tICAgeyBvcGFjaXR5OiAwOyB9XHJcblx0XHQgICAgdG8geyBvcGFjaXR5OiAxOyB9XHJcblx0XHR9XHJcblxyXG5cdFx0QGtleWZyYW1lcyAje2dldCgkY29uZmlnLCBiYXNlLCBjbGFzcyl9LXN1Ym1lbnUtbW92ZS11cCB7XHJcblx0XHQgICAgZnJvbSAgIHsgbWFyZ2luLXRvcDogZ2V0KCRjb25maWcsIGJ1aWxkLCBsYXlvdXQsIGRyb3Bkb3duLCBpdGVtLCBzdWJtZW51LCBzZWxmLCBhbmltYXRpb24sIG9mZnNldCk7IH1cclxuXHRcdCAgICB0byB7IG1hcmdpbi10b3A6IDA7IH1cclxuXHRcdH1cclxuXHJcblx0XHRAa2V5ZnJhbWVzICN7Z2V0KCRjb25maWcsIGJhc2UsIGNsYXNzKX0tc3VibWVudS1tb3ZlLWRvd24ge1xyXG5cdFx0ICAgIGZyb20gICB7IG1hcmdpbi1ib3R0b206IGdldCgkY29uZmlnLCBidWlsZCwgbGF5b3V0LCBkcm9wZG93biwgaXRlbSwgc3VibWVudSwgc2VsZiwgYW5pbWF0aW9uLCBvZmZzZXQpOyB9XHJcblx0XHQgICAgdG8geyBtYXJnaW4tYm90dG9tOiAwOyB9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvLyBCYXNlIG1pbmltaXplIG1lbnUgbW9kZVxyXG5cdEBpZiAoaGFzKCRjb25maWcsIGJ1aWxkLCBsYXlvdXQsIG1pbmltaXplKSkge1xyXG5cdFx0Ly8gRGVza3RvcCBNb2RlXHJcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcblx0XHRcdC4je2dldCgkY29uZmlnLCBiYXNlLCBwYXJlbnQtY2xhc3MpfS1taW5pbWl6ZTpub3QoLiN7Z2V0KCRjb25maWcsIGJhc2UsIHBhcmVudC1jbGFzcyl9LW1pbmltaXplLWhvdmVyKSB7XHJcblx0XHRcdFx0QGluY2x1ZGUgbWVudS12ZXItbWluaW1pemUtYmFzZSggZ2V0KCRjb25maWcsIGJhc2UpLCBnZXQoJGNvbmZpZywgYnVpbGQsIGxheW91dCkgKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvL1xyXG4vLyBBdHRyXHJcbi8vXHJcblxyXG5AbWl4aW4gYXR0cigkYXR0ciwgJHZhbHVlLCAkaW1wb3J0YW50OiAnJykge1xyXG4gICAgQGlmICAkdmFsdWUgIT0gbnVsbCAge1xyXG4gICAgICAgICN7JGF0dHJ9OiAjeyR2YWx1ZX0gI3skaW1wb3J0YW50fTtcclxuICAgIH1cclxufVxyXG4iLCIvL1xyXG4vLyBTVkcgSWNvblxyXG4vL1xyXG5cclxuXHJcbkBtaXhpbiBzdmctaWNvbi1jb2xvcigkY29sb3IsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XHJcbiAgICBzdmcge1xyXG4gICAgICAgIGcge1xyXG4gICAgICAgICAgICBbZmlsbF0ge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogZmlsbCAwLjNzIGVhc2U7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiAkY29sb3IgdmFsdWVpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGcge1xyXG4gICAgICAgICAgICAgICAgW2ZpbGxdIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBmaWxsIDAuM3MgZWFzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIHN2Zy1pY29uLXRyYW5zaXRpb24oKSB7XHJcbiAgICBzdmcge1xyXG4gICAgICAgIGcge1xyXG4gICAgICAgICAgICBbZmlsbF0ge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogZmlsbCAwLjNzIGVhc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBzdmctaWNvbi1zaXplKCRzaXplLCAkaW1wb3J0YW50OiBmYWxzZSkge1xyXG4gICAgc3ZnIHtcclxuICAgICAgICBoZWlnaHQ6ICRzaXplIHZhbHVlaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XHJcbiAgICAgICAgd2lkdGg6ICRzaXplIHZhbHVlaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBzdmctbG9nby1jb2xvcigkY29sb3IsICRpbXBvcnRhbnQ6IGZhbHNlKXtcclxuICAgIHN2Z3tcclxuICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICBmaWxsOiAkY29sb3IgdmFsdWVpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=*/