/*! 
 *   AdminLTE v1.2
 *   Author: AlmsaeedStudio.com
 *   License: Open source - MIT
 *           Please visit http://opensource.org/licenses/MIT for more information
!*/
/*
    Core: General style
----------------------------
*/
html,
body {
  overflow-x: hidden!important;
  font-family: 'Open Sans', sans-serif;
  -webkit-font-smoothing: antialiased;
  min-height: 100%;
  background: #fff;
}
a {
  color: #666666;
}
a:hover,
a:active,
a:focus {
  outline: none;
  text-decoration: none;
  color: #40C27D;
}
/* Layouts */
.wrapper {
  min-height: 100%;
}
.wrapper:before,
.wrapper:after {
  display: table;
  content: " ";
}
.wrapper:after {
  clear: both;
}
/* Header */
body > .header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1030;
}
/* Define 2 column template */
.right-side,
.left-side {
  min-height: 100%;
  display: block;
}
/*right side - contins main content*/
.right-side {
  background-color: #fafafa;
  margin-left: 220px;
}
/*left side - contains sidebar*/
.left-side {
  position: fixed;
  height: 100%;
  width: 220px;
  top: 0;
}
@media screen and (min-width: 992px) {
  /*Right side strech mode*/
  .right-side.strech {
    margin-left: 0;
  }
  .right-side.strech > .content-header {
    margin-top: 0px;
  }
  /* Left side collapse */
  .left-side.collapse-left {
    left: -220px;
  }
}
/*Give content full width on xs screens*/
@media screen and (max-width: 992px) {
  .right-side {
    margin-left: 0;
  }
}
/*
    By default the layout is not fixed but if you add the class .fixed to the body element
    the sidebar and the navbar will automatically become poisitioned fixed
*/
body.fixed > .header,
body.fixed .left-side,
body.fixed .navbar {
  position: fixed;
}
body.fixed > .header {
  top: 0;
  right: 0;
  left: 0;
}
body.fixed .navbar {
  left: 0;
  right: 0;
}
body.fixed .wrapper {
  margin-top: 50px;
}
/* Content */
.content {
  padding: 20px 0;
  background: #fff;
  overflow-x: hidden;
  overflow-y: auto;
  width: 100%;
  box-sizing: border-box;
}
.content .row {
  box-sizing: border-box;
}
/* Utility */
/* H1 - H6 font */
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: 'Source Sans Pro', sans-serif;
}
/* Page Header */
.page-header {
  margin: 10px 0 20px 0;
  font-size: 22px;
}
.page-header > small {
  color: #666;
  display: block;
  margin-top: 5px;
}
/* All images should be responsive */
img {
  max-width: 100% !important;
}
.sort-highlight {
  background: #f4f4f4;
  border: 1px dashed #ddd;
  margin-bottom: 10px;
}
/* 10px padding and margins */
.pad {
  padding: 15px;
}
.margin {
  margin: 15px;
}
/* Display inline */
.inline {
  display: inline;
  width: auto;
}
/* Background colors */
.bg-red,
.bg-yellow,
.bg-aqua,
.bg-blue,
.bg-light-blue,
.bg-green,
.bg-navy,
.bg-teal,
.bg-olive,
.bg-lime,
.bg-orange,
.bg-fuchsia,
.bg-purple,
.bg-maroon,
.bg-black {
  color: #f9f9f9 !important;
}
.bg-white {
  background-color: #ffffff !important;
}
.bg-gray {
  background-color: #eaeaec !important;
}
.bg-black {
  background-color: #12131a !important;
}
.bg-red {
  background-color: #e33244 !important;
}
.bg-yellow {
  background-color: #fcc633 !important;
}
.bg-aqua {
  background-color: #20c8aa !important;
}
.bg-blue {
  background-color: #0073b7 !important;
}
.bg-light-blue {
  background-color: #177bbb !important;
}
.bg-green {
  background-color: #1aae88 !important;
}
.bg-navy {
  background-color: #001f3f !important;
}
.bg-teal {
  background-color: #39cccc !important;
}
.bg-olive {
  background-color: #3d9970 !important;
}
.bg-lime {
  background-color: #01ff70 !important;
}
.bg-orange {
  background-color: #ff851b !important;
}
.bg-fuchsia {
  background-color: #f012be !important;
}
.bg-purple {
  background-color: #932ab6 !important;
}
.bg-maroon {
  background-color: #85144b !important;
}
/* Text colors */
.text-red {
  color: #e33244 !important;
}
.text-yellow {
  color: #fcc633 !important;
}
.text-aqua {
  color: #20c8aa !important;
}
.text-blue {
  color: #0073b7 !important;
}
.text-black {
  color: rgba(0, 0, 0, 0.8) !important;
}
.text-light-blue {
  color: #177bbb !important;
}
.text-green {
  color: #1aae88 !important;
}
.text-navy {
  color: #001f3f !important;
}
.text-teal {
  color: #39cccc !important;
}
.text-olive {
  color: #3d9970 !important;
}
.text-lime {
  color: #01ff70 !important;
}
.text-orange {
  color: #ff851b !important;
}
.text-fuchsia {
  color: #f012be !important;
}
.text-purple {
  color: #932ab6 !important;
}
.text-maroon {
  color: #85144b !important;
}
/*Hide elements by display none only*/
.hide {
  display: none !important;
}
/* Remove borders */
.no-border {
  border: 0px !important;
}
/* Remove padding */
.no-padding {
  padding: 0px !important;
}
/* Remove margins */
.no-margin {
  margin: 0px !important;
}
/* Remove box shadow */
.no-shadow {
  box-shadow: none!important;
}
/* Don't display when printing */
@media print {
  .no-print {
    display: none;
  }
  .left-side,
  .header,
  .content-header {
    display: none;
  }
  .right-side {
    margin: 0;
  }
}
/* Remove border radius */
.flat {
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  border-radius: 0 !important;
}
/* Change the color of the striped tables */
.table-striped > tbody > tr:nth-child(odd) > td,
.table-striped > tbody > tr:nth-child(odd) > th {
  background-color: none;
}
.table.no-border,
.table.no-border td,
.table.no-border th {
  border: 0;
}
/* .text-center in tables */
table.text-center,
table.text-center td,
table.text-center th {
  text-align: center;
}
.table.align th {
  text-align: left;
}
.table.align td {
  text-align: right;
}
.text-bold,
.text-bold.table td,
.text-bold.table th {
  font-weight: 700;
}
.border-radius-none {
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  border-radius: 0 !important;
}
/* _fix for sparkline tooltip */
.jqstooltip {
  padding: 5px!important;
  width: auto!important;
  height: auto!important;
}
/*
Gradient Background colors
*/
.bg-teal-gradient {
  background: #39cccc !important;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #39cccc), color-stop(1, #7adddd)) !important;
  background: -ms-linear-gradient(bottom, #39cccc, #7adddd) !important;
  background: -moz-linear-gradient(center bottom, #39cccc 0%, #7adddd 100%) !important;
  background: -o-linear-gradient(#7adddd, #39cccc) !important;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#7adddd', endColorstr='#39cccc', GradientType=0) !important;
  color: #fff;
}
.bg-light-blue-gradient {
  background: #177bbb !important;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #177bbb), color-stop(1, #2a9ce5)) !important;
  background: -ms-linear-gradient(bottom, #177bbb, #2a9ce5) !important;
  background: -moz-linear-gradient(center bottom, #177bbb 0%, #2a9ce5 100%) !important;
  background: -o-linear-gradient(#2a9ce5, #177bbb) !important;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2a9ce5', endColorstr='#177bbb', GradientType=0) !important;
  color: #fff;
}
.bg-blue-gradient {
  background: #0073b7 !important;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #0073b7), color-stop(1, #0089db)) !important;
  background: -ms-linear-gradient(bottom, #0073b7, #0089db) !important;
  background: -moz-linear-gradient(center bottom, #0073b7 0%, #0089db 100%) !important;
  background: -o-linear-gradient(#0089db, #0073b7) !important;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0089db', endColorstr='#0073b7', GradientType=0) !important;
  color: #fff;
}
.bg-aqua-gradient {
  background: #20c8aa !important;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #20c8aa), color-stop(1, #2edebe)) !important;
  background: -ms-linear-gradient(bottom, #20c8aa, #2edebe) !important;
  background: -moz-linear-gradient(center bottom, #20c8aa 0%, #2edebe 100%) !important;
  background: -o-linear-gradient(#2edebe, #20c8aa) !important;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2edebe', endColorstr='#20c8aa', GradientType=0) !important;
  color: #fff;
}
.bg-yellow-gradient {
  background: #fcc633 !important;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #fcc633), color-stop(1, #fddc83)) !important;
  background: -ms-linear-gradient(bottom, #fcc633, #fddc83) !important;
  background: -moz-linear-gradient(center bottom, #fcc633 0%, #fddc83 100%) !important;
  background: -o-linear-gradient(#fddc83, #fcc633) !important;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fddc83', endColorstr='#fcc633', GradientType=0) !important;
  color: #fff;
}
.bg-purple-gradient {
  background: #932ab6 !important;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #932ab6), color-stop(1, #b959d9)) !important;
  background: -ms-linear-gradient(bottom, #932ab6, #b959d9) !important;
  background: -moz-linear-gradient(center bottom, #932ab6 0%, #b959d9 100%) !important;
  background: -o-linear-gradient(#b959d9, #932ab6) !important;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#b959d9', endColorstr='#932ab6', GradientType=0) !important;
  color: #fff;
}
.bg-green-gradient {
  background: #1aae88 !important;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #1aae88), color-stop(1, #1fcda0)) !important;
  background: -ms-linear-gradient(bottom, #1aae88, #1fcda0) !important;
  background: -moz-linear-gradient(center bottom, #1aae88 0%, #1fcda0 100%) !important;
  background: -o-linear-gradient(#1fcda0, #1aae88) !important;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#1fcda0', endColorstr='#1aae88', GradientType=0) !important;
  color: #fff;
}
.bg-red-gradient {
  background: #e33244 !important;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #e33244), color-stop(1, #e95f6d)) !important;
  background: -ms-linear-gradient(bottom, #e33244, #e95f6d) !important;
  background: -moz-linear-gradient(center bottom, #e33244 0%, #e95f6d 100%) !important;
  background: -o-linear-gradient(#e95f6d, #e33244) !important;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e95f6d', endColorstr='#e33244', GradientType=0) !important;
  color: #fff;
}
.bg-black-gradient {
  background: #12131a !important;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #12131a), color-stop(1, #272938)) !important;
  background: -ms-linear-gradient(bottom, #12131a, #272938) !important;
  background: -moz-linear-gradient(center bottom, #12131a 0%, #272938 100%) !important;
  background: -o-linear-gradient(#272938, #12131a) !important;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#272938', endColorstr='#12131a', GradientType=0) !important;
  color: #fff;
}
.bg-maroon-gradient {
  background: #85144b !important;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #85144b), color-stop(1, #b11b64)) !important;
  background: -ms-linear-gradient(bottom, #85144b, #b11b64) !important;
  background: -moz-linear-gradient(center bottom, #85144b 0%, #b11b64 100%) !important;
  background: -o-linear-gradient(#b11b64, #85144b) !important;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#b11b64', endColorstr='#85144b', GradientType=0) !important;
  color: #fff;
}
.connectedSortable {
  min-height: 100px;
}
/* Border colors */
.bd-bottom-red,
.bd-bottom-yellow,
.bd-bottom-aqua,
.bd-bottom-blue,
.bd-bottom-light-blue,
.bd-bottom-green,
.bd-bottom-navy,
.bd-bottom-teal,
.bd-bottom-olive,
.bd-bottom-lime,
.bd-bottom-orange,
.bd-bottom-fuchsia,
.bd-bottom-purple,
.bd-bottom-maroon,
.bd-bottom-black {
  border-bottom: 2px #ccc solid ;
}
.bd-bottom-white {
  border-color: #ffffff !important;
}
.bd-bottom-gray {
  border-color: #eaeaec !important;
}
.bd-bottom-black {
  border-color: #12131a !important;
}
.bd-bottom-red {
  border-color: #e33244 !important;
}
.bd-bottom-yellow {
  border-color: #fcc633 !important;
}
.bd-bottom-aqua {
  border-color: #20c8aa !important;
}
.bd-bottom-blue {
  border-color: #0073b7 !important;
}
.bd-bottom-light-blue {
  border-color: #177bbb !important;
}
.bd-bottom-green {
  border-color: #1aae88 !important;
}
.bd-bottom-navy {
  border-color: #001f3f !important;
}
.bd-bottom-teal {
  border-color: #39cccc !important;
}
.bd-bottom-olive {
  border-color: #3d9970 !important;
}
.bd-bottom-lime {
  border-color: #01ff70 !important;
}
.bd-bottom-orange {
  border-color: #ff851b !important;
}
.bd-bottom-fuchsia {
  border-color: #f012be !important;
}
.bd-bottom-purple {
  border-color: #932ab6 !important;
}
.bd-bottom-maroon {
  border-color: #85144b !important;
}
/*---------------------------------------------------
    LESS Elements 0.9
  ---------------------------------------------------
    A set of useful LESS mixins
    More info at: http://lesselements.com
  ---------------------------------------------------*/
/*
    Components: navbar, logo and content header
-------------------------------------------------
*/
body > .header {
  position: fixed;
  top: 0;
  left: 0;
  max-height: 100px;
  z-index: 1030;
}
body > .header .navbar {
  height: 50px;
  margin-bottom: 0;
  margin-left: 220px;
}
body > .header .navbar .sidebar-toggle {
  float: left;
  padding: 9px 5px;
  margin-top: 8px;
  margin-right: 0;
  margin-bottom: 8px;
  margin-left: 5px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  border-radius: 0 !important;
}
body > .header .navbar .sidebar-toggle:hover .icon-bar {
  background: #f6f6f6;
}
body > .header .navbar .sidebar-toggle .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
body > .header .navbar .sidebar-toggle .icon-bar + .icon-bar {
  margin-top: 4px;
}
body > .header .navbar .nav > li.user > a {
  font-weight: bold;
}
body > .header .navbar .nav > li.user > a > .fa,
body > .header .navbar .nav > li.user > a > .glyphicon,
body > .header .navbar .nav > li.user > a > .ion {
  margin-right: 5px;
}
body > .header .navbar .nav > li > a > .label {
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  position: absolute;
  top: 7px;
  right: 2px;
  font-size: 10px;
  font-weight: normal;
  width: 15px;
  height: 15px;
  line-height: 1.0em;
  text-align: center;
  padding: 2px;
}
body > .header .navbar .nav > li > a:hover > .label {
  top: 3px;
}
body > .header .logo {
  float: left;
  font-size: 20px;
  line-height: 50px;
  padding: 0 10px;
  width: 220px;
  font-family: 'Kaushan Script', cursive;
  font-weight: 500;
  height: 50px;
  display: block;
}
body > .header .logo .icon {
  margin-right: 10px;
}
body > .header .navbar-form {
  max-width: 250px;
  float: left;
}
body > .header .navbar-form input {
  border-width: 0 ;
}
.right-side > .content-header {
  position: relative;
  padding: 15px 15px 10px 20px;
}
.right-side > .content-header > h1 {
  margin: 0;
  font-size: 24px;
  color: rgba(0, 0, 0, 0.8);
}
.right-side > .content-header > h1 > small {
  font-size: 15px;
  display: inline-block;
  padding-left: 10px;
  font-weight: 300;
}
.right-side > .content-header > .breadcrumb {
  float: right;
  background: transparent;
  margin-top: 0px;
  margin-bottom: 0;
  font-size: 12px;
  padding: 7px 5px;
  position: absolute;
  top: 15px;
  right: 10px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}
.right-side > .content-header > .breadcrumb > li > a {
  color: #444;
  text-decoration: none;
}
.right-side > .content-header > .breadcrumb > li > a > .fa,
.right-side > .content-header > .breadcrumb > li > a > .glyphicon,
.right-side > .content-header > .breadcrumb > li > a > .ion {
  margin-right: 5px;
}
.right-side > .content-header > .breadcrumb > li + li:before {
  content: '>\00a0';
}
@media screen and (max-width: 767px) {
  .right-side > .content-header > .breadcrumb {
    position: relative;
    margin-top: 5px;
    top: 0;
    right: 0;
    float: none;
    background: #efefef;
  }
}
@media (max-width: 767px) {
  .navbar .navbar-nav > li {
    float: left;
  }
  .navbar-nav {
    margin: 0;
    float: left;
  }
  .navbar-nav > li > a {
    padding-top: 15px;
    padding-bottom: 15px;
    line-height: 20px;
  }
  .navbar .navbar-right {
    float: right;
  }
}
@media screen and (max-width: 560px) {
  body > .header {
    position: relative;
  }
  body > .header .logo,
  body > .header .navbar {
    width: 100%;
    float: none;
    position: relative!important;
  }
  body > .header .navbar {
    margin: 0;
  }
  body.fixed > .header {
    position: fixed;
  }
  body.fixed > .wrapper,
  body.fixed .sidebar-offcanvas {
    margin-top: 100px!important;
  }
}
/*
    Component: Sidebar
--------------------------
*/
.sidebar {
  margin-bottom: 5px;
}
.sidebar .sidebar-form input:focus {
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  border-color: transparent!important;
}
.sidebar .sidebar-menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
.sidebar .sidebar-menu > li {
  margin: 0;
  padding: 0;
}
.sidebar .sidebar-menu > li > a {
  padding: 14px 5px 14px 15px;
  display: block;
  font-size: 13px;
}
.sidebar .sidebar-menu > li > a > .fa,
.sidebar .sidebar-menu > li > a > .glyphicon,
.sidebar .sidebar-menu > li > a > .ion {
  width: 20px;
  margin-right: 10px;
}
.sidebar .sidebar-menu .treeview-menu {
  display: none;
  list-style: none;
  padding: 0;
  margin: 0;
}
.sidebar .sidebar-menu .treeview-menu > li {
  margin: 0;
}
.sidebar .sidebar-menu .treeview-menu > li > a {
  padding: 5px 5px 5px 15px;
  display: block;
  font-size: 14px;
  margin: 0px 0px;
}
.sidebar .sidebar-menu .treeview-menu > li > a > .fa,
.sidebar .sidebar-menu .treeview-menu > li > a > .glyphicon,
.sidebar .sidebar-menu .treeview-menu > li > a > .ion {
  width: 20px;
}
.user-panel {
  padding: 10px;
  background: #323339;
}
.user-panel:before,
.user-panel:after {
  display: table;
  content: " ";
}
.user-panel:after {
  clear: both;
}
.user-panel > .image > img {
  width: 45px;
  height: 45px;
}
.user-panel > .info {
  font-weight: 600;
  font-size: 14px;
  padding-left: 10px;
  line-height: 45px;
}
.user-panel > .info > p {
  margin-bottom: 9px;
}
.user-panel > .info > a {
  text-decoration: none;
  padding-right: 5px;
  margin-top: 3px;
  font-size: 11px;
  font-weight: normal;
}
.user-panel > .info > a > .fa,
.user-panel > .info > a > .ion,
.user-panel > .info > a > .glyphicon {
  margin-right: 3px;
}
/*
 * Off Canvas
 * --------------------------------------------------
 *  Gives us the push menu effect
 */
@media screen and (max-width: 992px) {
  .relative {
    position: relative;
  }
  .row-offcanvas-right .sidebar-offcanvas {
    right: -220px;
  }
  .row-offcanvas-left .sidebar-offcanvas {
    left: -220px;
  }
  .row-offcanvas-right.active {
    right: 220px;
  }
  .row-offcanvas-left.active {
    left: 220px;
  }
  .sidebar-offcanvas {
    left: 0;
  }
  body.fixed .sidebar-offcanvas {
    margin-top: 50px;
    left: -220px;
  }
  body.fixed .row-offcanvas-left.active .navbar {
    left: 220px !important;
    right: 0;
  }
  body.fixed .row-offcanvas-left.active .sidebar-offcanvas {
    left: 0px;
  }
}
/* 
    Dropdown menus
----------------------------
*/
/*Dropdowns in general*/
.dropdown-menu {
  -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
  z-index: 2300;
}
.dropdown-menu > li > a > .glyphicon,
.dropdown-menu > li > a > .fa,
.dropdown-menu > li > a > .ion {
  margin-right: 10px;
}
.dropdown-menu > li > a:hover {
  background-color: #177bbb;
  color: #f9f9f9;
}
/*Drodown in navbars*/
.skin-blue .navbar .dropdown-menu > li > a {
  color: #444444;
}
/*
    Navbar custom dropdown menu
------------------------------------
*/
.navbar-nav > .notifications-menu > .dropdown-menu,
.navbar-nav > .messages-menu > .dropdown-menu,
.navbar-nav > .tasks-menu > .dropdown-menu {
  width: 280px;
  padding: 0 0 0 0!important;
  margin: 0!important;
  top: 100%;
  border: 1px solid #dfdfdf;
  -webkit-border-radius: 4px !important;
  -moz-border-radius: 4px !important;
  border-radius: 4px !important;
}
.navbar-nav > .notifications-menu > .dropdown-menu > li.header,
.navbar-nav > .messages-menu > .dropdown-menu > li.header,
.navbar-nav > .tasks-menu > .dropdown-menu > li.header {
  -webkit-border-top-left-radius: 4px;
  -webkit-border-top-right-radius: 4px;
  -webkit-border-bottom-right-radius: 0;
  -webkit-border-bottom-left-radius: 0;
  -moz-border-radius-topleft: 4px;
  -moz-border-radius-topright: 4px;
  -moz-border-radius-bottomright: 0;
  -moz-border-radius-bottomleft: 0;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  background-color: #ffffff;
  padding: 7px 10px;
  border-bottom: 1px solid #f4f4f4;
  color: #444444;
  font-size: 14px;
}
.navbar-nav > .notifications-menu > .dropdown-menu > li.header:after,
.navbar-nav > .messages-menu > .dropdown-menu > li.header:after,
.navbar-nav > .tasks-menu > .dropdown-menu > li.header:after {
  bottom: 100%;
  left: 92%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(255, 255, 255, 0);
  border-bottom-color: #ffffff;
  border-width: 7px;
  margin-left: -7px;
}
.navbar-nav > .notifications-menu > .dropdown-menu > li.footer > a,
.navbar-nav > .messages-menu > .dropdown-menu > li.footer > a,
.navbar-nav > .tasks-menu > .dropdown-menu > li.footer > a {
  -webkit-border-top-left-radius: 0px;
  -webkit-border-top-right-radius: 0px;
  -webkit-border-bottom-right-radius: 4px;
  -webkit-border-bottom-left-radius: 4px;
  -moz-border-radius-topleft: 0px;
  -moz-border-radius-topright: 0px;
  -moz-border-radius-bottomright: 4px;
  -moz-border-radius-bottomleft: 4px;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
  font-size: 12px;
  background-color: #f4f4f4;
  padding: 7px 10px;
  border-bottom: 1px solid #eeeeee;
  color: #444444;
  text-align: center;
}
.navbar-nav > .notifications-menu > .dropdown-menu > li.footer > a:hover,
.navbar-nav > .messages-menu > .dropdown-menu > li.footer > a:hover,
.navbar-nav > .tasks-menu > .dropdown-menu > li.footer > a:hover {
  background: #f4f4f4;
  text-decoration: none;
  font-weight: normal;
}
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu,
.navbar-nav > .messages-menu > .dropdown-menu > li .menu,
.navbar-nav > .tasks-menu > .dropdown-menu > li .menu {
  margin: 0;
  padding: 0;
  list-style: none;
  overflow-x: hidden;
}
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a,
.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a,
.navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a {
  display: block;
  white-space: nowrap;
  /* Prevent text from breaking */
  border-bottom: 1px solid #f4f4f4;
}
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a:hover,
.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a:hover,
.navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a:hover {
  background: #f6f6f6;
  text-decoration: none;
}
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a {
  font-size: 12px;
  color: #444444;
}
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .glyphicon,
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .fa,
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .ion {
  font-size: 20px;
  width: 50px;
  text-align: center;
  padding: 15px 0px;
  margin-right: 5px;
  /* Default background and font colors */
  background: #20c8aa;
  color: #f9f9f9;
  /* Fallback for browsers that doesn't support rgba */
  color: rgba(255, 255, 255, 0.7);
}
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .glyphicon.danger,
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .fa.danger,
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .ion.danger {
  background: #e33244;
}
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .glyphicon.warning,
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .fa.warning,
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .ion.warning {
  background: #fcc633;
}
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .glyphicon.success,
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .fa.success,
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .ion.success {
  background: #1aae88;
}
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .glyphicon.info,
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .fa.info,
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .ion.info {
  background: #20c8aa;
}
.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a {
  margin: 0px;
  line-height: 20px;
  padding: 10px 5px 10px 5px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a > div > img {
  margin: auto 10px auto auto;
  width: 40px;
  height: 40px;
  border: 1px solid #dddddd;
}
.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a > h4 {
  padding: 0;
  margin: 0 0 0 45px;
  color: #444444;
  font-size: 15px;
}
.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a > h4 > small {
  color: #999999;
  font-size: 10px;
  float: right;
}
.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a > p {
  margin: 0 0 0 45px;
  font-size: 12px;
  color: #888888;
}
.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a:before,
.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a:after {
  display: table;
  content: " ";
}
.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a:after {
  clear: both;
}
.navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a {
  padding: 10px;
}
.navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a > h3 {
  font-size: 14px;
  padding: 0;
  margin: 0 0 10px 0;
  color: #666666;
}
.navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a > .progress {
  padding: 0;
  margin: 0;
}
.navbar-nav > .user-menu > .dropdown-menu {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  padding: 1px 0 0 0;
  border-top-width: 0;
  width: 280px;
}
.navbar-nav > .user-menu > .dropdown-menu:after {
  bottom: 100%;
  right: 10px;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(255, 255, 255, 0);
  border-bottom-color: #ffffff;
  border-width: 10px;
  margin-left: -10px;
}
.navbar-nav > .user-menu > .dropdown-menu > li.user-header {
  height: 175px;
  padding: 10px;
  background: #177bbb;
  text-align: center;
}
.navbar-nav > .user-menu > .dropdown-menu > li.user-header > img {
  z-index: 5;
  height: 90px;
  width: 90px;
  border: 8px solid;
  border-color: transparent;
  border-color: rgba(255, 255, 255, 0.2);
}
.navbar-nav > .user-menu > .dropdown-menu > li.user-header > p {
  z-index: 5;
  color: #f9f9f9;
  color: rgba(255, 255, 255, 0.8);
  font-size: 17px;
  text-shadow: 2px 2px 3px #333333;
  margin-top: 10px;
}
.navbar-nav > .user-menu > .dropdown-menu > li.user-header > p > small {
  display: block;
  font-size: 12px;
}
.navbar-nav > .user-menu > .dropdown-menu > li.user-body {
  padding: 15px;
  border-bottom: 1px solid #f4f4f4;
  border-top: 1px solid #dddddd;
}
.navbar-nav > .user-menu > .dropdown-menu > li.user-body:before,
.navbar-nav > .user-menu > .dropdown-menu > li.user-body:after {
  display: table;
  content: " ";
}
.navbar-nav > .user-menu > .dropdown-menu > li.user-body:after {
  clear: both;
}
.navbar-nav > .user-menu > .dropdown-menu > li.user-body > div > a {
  color: #0073b7;
}
.navbar-nav > .user-menu > .dropdown-menu > li.user-footer {
  background-color: #fafafa;
  padding: 10px;
}
.navbar-nav > .user-menu > .dropdown-menu > li.user-footer:before,
.navbar-nav > .user-menu > .dropdown-menu > li.user-footer:after {
  display: table;
  content: " ";
}
.navbar-nav > .user-menu > .dropdown-menu > li.user-footer:after {
  clear: both;
}
.navbar-nav > .user-menu > .dropdown-menu > li.user-footer .btn-default {
  color: #666666;
}
/* Add fade animation to dropdown menus */
.open > .dropdown-menu {
  animation-name: fadeAnimation;
  animation-duration: .7s;
  animation-iteration-count: 1;
  animation-timing-function: ease;
  animation-fill-mode: forwards;
  -webkit-animation-name: fadeAnimation;
  -webkit-animation-duration: .7s;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-timing-function: ease;
  -webkit-animation-fill-mode: forwards;
  -moz-animation-name: fadeAnimation;
  -moz-animation-duration: .7s;
  -moz-animation-iteration-count: 1;
  -moz-animation-timing-function: ease;
  -moz-animation-fill-mode: forwards;
}
@keyframes fadeAnimation {
  from {
    opacity: 0;
    top: 120%;
  }
  to {
    opacity: 1;
    top: 100%;
  }
}
@-webkit-keyframes fadeAnimation {
  from {
    opacity: 0;
    top: 120%;
  }
  to {
    opacity: 1;
    top: 100%;
  }
}
/* Fix dropdown menu for small screens to display correctly on small screens */
@media screen and (max-width: 767px) {
  .navbar-nav > .notifications-menu > .dropdown-menu,
  .navbar-nav > .user-menu > .dropdown-menu,
  .navbar-nav > .tasks-menu > .dropdown-menu,
  .navbar-nav > .messages-menu > .dropdown-menu {
    position: absolute;
    top: 100%;
    right: 0;
    left: auto;
    border-right: 1px solid #dddddd;
    border-bottom: 1px solid #dddddd;
    border-left: 1px solid #dddddd;
    background: #ffffff;
  }
}
/* Fix menu positions on xs screens to appear correctly and fully */
@media screen and (max-width: 480px) {
  .navbar-nav > .notifications-menu > .dropdown-menu > li.header,
  .navbar-nav > .tasks-menu > .dropdown-menu > li.header,
  .navbar-nav > .messages-menu > .dropdown-menu > li.header {
    /* Remove arrow from the top */
  }
  .navbar-nav > .notifications-menu > .dropdown-menu > li.header:after,
  .navbar-nav > .tasks-menu > .dropdown-menu > li.header:after,
  .navbar-nav > .messages-menu > .dropdown-menu > li.header:after {
    border-width: 0px!important;
  }
  .navbar-nav > .tasks-menu > .dropdown-menu {
    position: absolute;
    right: -120px;
    left: auto;
  }
  .navbar-nav > .notifications-menu > .dropdown-menu {
    position: absolute;
    right: -170px;
    left: auto;
  }
  .navbar-nav > .messages-menu > .dropdown-menu {
    position: absolute;
    right: -210px;
    left: auto;
  }
}
/* 
   All form elements including input, select, textarea etc.
-----------------------------------------------------------------
*/
.form-control {
  -webkit-border-radius: 3px !important;
  -moz-border-radius: 3px !important;
  border-radius: 3px !important;
  box-shadow: none;
}
.form-control:focus {
  border-color: #999 !important;
  box-shadow: none;
}
.form-group.has-success label {
  color: #1aae88;
}
.form-group.has-success .form-control {
  border-color: #1aae88 !important;
  box-shadow: none;
  border-radius: 3px;
}
.form-group.has-warning label {
  color: #fcc633;
}
.form-group.has-warning .form-control {
  border-color: #fcc633 !important;
  box-shadow: none;
}
.form-group.has-error label {
  color: #e33244;
}
.form-group.has-error .form-control {
  border-color: #e33244 !important;
  box-shadow: none;
}
/* Input group */
.input-group .input-group-addon {
  border-radius: 0;
  background-color: #f4f4f4;
}
/* button groups */
.btn-group-vertical .btn.btn-flat:first-of-type,
.btn-group-vertical .btn.btn-flat:last-of-type {
  border-radius: 0;
}
/* Checkbox and radio inputs */
.checkbox,
.radio {
  padding-left: 0;
}
/* 
    Compenent: Progress bars
--------------------------------
*/
/* size variation */
.progress.sm {
  height: 10px;
}
.progress.xs {
  height: 7px;
}
/* Vertical bars */
.progress.vertical {
  position: relative;
  width: 30px;
  height: 200px;
  display: inline-block;
  margin-right: 10px;
}
.progress.vertical > .progress-bar {
  width: 100%!important;
  position: absolute;
  bottom: 0;
}
.progress.vertical.sm {
  width: 20px;
}
.progress.vertical.xs {
  width: 10px;
}
/* Remove margins from progress bars when put in a table */
.table tr > td .progress {
  margin: 0;
}
.progress-bar-light-blue,
.progress-bar-primary {
  background-color: #177bbb;
}
.progress-striped .progress-bar-light-blue,
.progress-striped .progress-bar-primary {
  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-green,
.progress-bar-success {
  background-color: #1aae88;
}
.progress-striped .progress-bar-green,
.progress-striped .progress-bar-success {
  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-aqua,
.progress-bar-info {
  background-color: #20c8aa;
}
.progress-striped .progress-bar-aqua,
.progress-striped .progress-bar-info {
  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-yellow,
.progress-bar-warning {
  background-color: #fcc633;
}
.progress-striped .progress-bar-yellow,
.progress-striped .progress-bar-warning {
  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-red,
.progress-bar-danger {
  background-color: #e33244;
}
.progress-striped .progress-bar-red,
.progress-striped .progress-bar-danger {
  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
/*
    Component: Small boxes
*/
.small-box {
  position: relative;
  display: block;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  margin-bottom: 15px;
}
.small-box > .inner {
  padding: 10px 0 0 80px;
}
.small-box > .small-box-footer {
  position: relative;
  text-align: center;
  padding: 3px 0;
  color: #fff;
  color: rgba(255, 255, 255, 0.8);
  display: block;
  z-index: 10;
  background: rgba(0, 0, 0, 0.1);
  text-decoration: none;
}
.small-box > .small-box-footer:hover {
  color: #fff;
  background: rgba(0, 0, 0, 0.15);
}
.small-box h3 {
  font-size: 38px;
  font-weight: lighter;
  white-space: nowrap;
  padding: 0;
  margin: 0;
  margin-left: -2px;
}
.small-box p {
  font-size: 13px;
  color: #999999;
}
.small-box p > small {
  display: block;
  font-size: 13px;
  margin-top: 5px;
}
.small-box h3,
.small-box p {
  z-index: 5px;
}
.small-box .icon {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 0;
  font-size: 40px;
  width: 60px;
  height: 60px;
  text-align: center;
  line-height: 60px;
  color: #fff;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  border-radius: 30px;
}
.small-box:hover {
  text-decoration: none;
  color: #000;
  cursor: pointer;
}
@media screen and (max-width: 480px) {
  .small-box {
    text-align: center;
  }
  .small-box .icon {
    display: none;
  }
  .small-box p {
    font-size: 12px;
  }
}
/*
    component: Boxes
-------------------------
*/
.box {
  position: relative;
  background: #ffffff;
  margin-bottom: 20px;
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 1px;
  width: 100%;
  border: 1px solid #eaeef1;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
.box.height-control .box-body {
  max-height: 300px;
  overflow: auto;
}
.box .box-header {
  position: relative;
  -webkit-border-top-left-radius: 1px;
  -webkit-border-top-right-radius: 1px;
  -webkit-border-bottom-right-radius: 0;
  -webkit-border-bottom-left-radius: 0;
  -moz-border-radius-topleft: 1px;
  -moz-border-radius-topright: 1px;
  -moz-border-radius-bottomright: 0;
  -moz-border-radius-bottomleft: 0;
  border-top-left-radius: 1px;
  border-top-right-radius: 1px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  border-bottom: 0px solid #f4f4f4;
  color: #444;
}
.box .box-header:before,
.box .box-header:after {
  display: table;
  content: " ";
}
.box .box-header:after {
  clear: both;
}
.box .box-header > .fa,
.box .box-header > .glyphicon,
.box .box-header .box-title {
  display: inline-block;
  padding: 10px 10px 10px 10px;
  margin: 0;
  font-size: 16px;
  font-weight: 400;
  float: left;
  cursor: default;
}
.box .box-header h3.box-title {
  padding-left: 0;
}
.box .box-header a {
  color: #444;
}
.box .box-header > .box-tools {
  padding: 5px 10px 5px 5px;
}
.box .box-body {
  padding: 10px;
  -webkit-border-top-left-radius: 0;
  -webkit-border-top-right-radius: 0;
  -webkit-border-bottom-right-radius: 1px;
  -webkit-border-bottom-left-radius: 1px;
  -moz-border-radius-topleft: 0;
  -moz-border-radius-topright: 0;
  -moz-border-radius-bottomright: 1px;
  -moz-border-radius-bottomleft: 1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 1px;
  border-bottom-left-radius: 1px;
}
.box .box-body > table,
.box .box-body > .table {
  margin-bottom: 0;
}
.box .box-body.chart-responsive {
  width: 100%;
  overflow: hidden;
}
.box .box-body > .chart {
  position: relative;
  overflow: hidden;
  width: 100%;
}
.box .box-body > .chart svg,
.box .box-body > .chart canvas {
  width: 100%!important;
}
.box .box-body .fc {
  margin-top: 5px;
}
.box .box-body .fc-header-title h2 {
  font-size: 15px;
  line-height: 1.6em;
  color: #666;
  margin-left: 10px;
}
.box .box-body .fc-header-right {
  padding-right: 10px;
}
.box .box-body .fc-header-left {
  padding-left: 10px;
}
.box .box-body .fc-widget-header {
  background: #fafafa;
  box-shadow: inset 0px -3px 1px rgba(0, 0, 0, 0.02);
}
.box .box-body .fc-grid {
  width: 100%;
  border: 0;
}
.box .box-body .fc-widget-header:first-of-type,
.box .box-body .fc-widget-content:first-of-type {
  border-left: 0;
  border-right: 0;
}
.box .box-body .fc-widget-header:last-of-type,
.box .box-body .fc-widget-content:last-of-type {
  border-right: 0;
}
.box .box-body .table {
  margin-bottom: 0;
}
.box .box-body .full-width-chart {
  margin: -19px;
}
.box .box-body.no-padding .full-width-chart {
  margin: -9px;
}
.box .box-footer {
  border-top: 1px solid #f4f4f4;
  -webkit-border-top-left-radius: 0;
  -webkit-border-top-right-radius: 0;
  -webkit-border-bottom-right-radius: 1px;
  -webkit-border-bottom-left-radius: 1px;
  -moz-border-radius-topleft: 0;
  -moz-border-radius-topright: 0;
  -moz-border-radius-bottomright: 1px;
  -moz-border-radius-bottomleft: 1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 1px;
  border-bottom-left-radius: 1px;
  padding: 10px;
  background-color: #ffffff;
}
.box.box-solid {
  border-top: 0px;
}
.box.box-solid > .box-header {
  padding-bottom: 0px!important;
}
.box.box-solid > .box-header .btn.btn-default {
  background: transparent;
}
.box.box-solid.box-primary > .box-header {
  color: #fff;
  background: #177bbb;
  background-color: #177bbb;
}
.box.box-solid.box-primary > .box-header a {
  color: #444;
}
.box.box-solid.box-info > .box-header {
  color: #fff;
  background: #20c8aa;
  background-color: #20c8aa;
}
.box.box-solid.box-info > .box-header a {
  color: #444;
}
.box.box-solid.box-danger > .box-header {
  color: #fff;
  background: #e33244;
  background-color: #e33244;
}
.box.box-solid.box-danger > .box-header a {
  color: #444;
}
.box.box-solid.box-warning > .box-header {
  color: #fff;
  background: #fcc633;
  background-color: #fcc633;
}
.box.box-solid.box-warning > .box-header a {
  color: #444;
}
.box.box-solid.box-success > .box-header {
  color: #fff;
  background: #1aae88;
  background-color: #1aae88;
}
.box.box-solid.box-success > .box-header a {
  color: #444;
}
.box.box-solid > .box-header > .box-tools .btn {
  border: 0;
  box-shadow: none;
}
.box.box-solid.collapsed-box .box-header {
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 1px;
}
.box.box-solid[class*='bg'] > .box-header {
  color: #fff;
}
.box .box-group > .box {
  margin-bottom: 5px;
}
.box .knob-label {
  text-align: center;
  color: #333;
  font-weight: 100;
  font-size: 12px;
  margin-bottom: 0.3em;
}
.box .todo-list {
  margin: 0;
  padding: 0px 0px;
  list-style: none;
}
.box .todo-list > li {
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  padding: 10px;
  background: none;
  margin-bottom: 2px;
  border-bottom: 1px #eee dashed;
  color: #444;
}
.box .todo-list > li:last-of-type {
  margin-bottom: 0;
}
.box .todo-list > li.danger {
  border-left-color: #e33244;
}
.box .todo-list > li.warning {
  border-left-color: #fcc633;
}
.box .todo-list > li.info {
  border-left-color: #20c8aa;
}
.box .todo-list > li.success {
  border-left-color: #1aae88;
}
.box .todo-list > li.primary {
  border-left-color: #177bbb;
}
.box .todo-list > li > input[type='checkbox'] {
  margin: 0 10px 0 5px;
}
.box .todo-list > li .text {
  display: inline-block;
  margin-left: 5px;
  font-weight: 600;
}
.box .todo-list > li .text a {
  color: #333;
}
.box .todo-list > li .text a:hover {
  text-decoration: underline;
}
.box .todo-list > li .label {
  margin-left: 10px;
  font-size: 9px;
}
.box .todo-list > li .tools {
  display: none;
  float: right;
  color: #e33244;
}
.box .todo-list > li .tools > .fa,
.box .todo-list > li .tools > .glyphicon,
.box .todo-list > li .tools > .ion {
  margin-right: 5px;
  cursor: pointer;
}
.box .todo-list > li:hover .tools {
  display: inline-block;
}
.box .todo-list > li.done {
  color: #999;
}
.box .todo-list > li.done .text {
  text-decoration: line-through;
  font-weight: 500;
}
.box .todo-list > li.done .label {
  background: #eaeaec !important;
}
.box .todo-list .handle {
  display: inline-block;
  cursor: move;
  margin: 0 5px;
}
.box .chat {
  padding: 5px 20px 5px 10px;
}
.box .chat .item {
  border-bottom: 1px #eee dashed;
  margin-bottom: 10px;
}
.box .chat .item:last-child {
  border-bottom-width: 0;
}
.box .chat .item:before,
.box .chat .item:after {
  display: table;
  content: " ";
}
.box .chat .item:after {
  clear: both;
}
.box .chat .item > img {
  width: 40px;
  height: 40px;
  border: 2px solid transparent;
}
.box .chat .item > img.online {
  border: 2px solid #1aae88;
}
.box .chat .item > img.offline {
  border: 2px solid #e33244;
}
.box .chat .item > .message {
  margin-left: 55px;
  margin-top: -40px;
}
.box .chat .item > .message > .name {
  display: block;
  color: #333;
}
.box .chat .item > .message > .name i {
  margin-right: 5px;
}
.box .chat .item > .message > .name:hover {
  color: #333;
  text-decoration: underline;
}
.box .chat .item > .attachment {
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 1px;
  background: #f0f0f0;
  margin-left: 65px;
  margin-right: 15px;
  padding: 10px;
}
.box .chat .item > .attachment > h4 {
  margin: 0 0 5px 0;
  font-weight: 600;
  font-size: 14px;
}
.box .chat .item > .attachment > p,
.box .chat .item > .attachment > .filename {
  font-weight: 600;
  font-size: 13px;
  font-style: italic;
  margin: 0;
}
.box .chat .item > .attachment:before,
.box .chat .item > .attachment:after {
  display: table;
  content: " ";
}
.box .chat .item > .attachment:after {
  clear: both;
}
.box > .overlay,
.box > .loading-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.box > .overlay {
  z-index: 1010;
  background: rgba(255, 255, 255, 0.7);
}
.box > .overlay.dark {
  background: rgba(0, 0, 0, 0.5);
}
.box > .loading-img {
  z-index: 1020;
  background: transparent url('../img/ajax-loader1.gif') 50% 50% no-repeat;
}
/*
Component: timeline
--------------------
*/
.timeline {
  position: relative;
  margin: 0 0 30px 0;
  padding: 0;
  list-style: none;
}
.timeline:before {
  content: '';
  position: absolute;
  top: 0px;
  bottom: 0;
  width: 5px;
  background: #ddd;
  left: 30px;
  border: 1px solid #eee;
  margin: 0;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}
.timeline > li {
  position: relative;
  margin-right: 10px;
  margin-bottom: 15px;
}
.timeline > li:before,
.timeline > li:after {
  display: table;
  content: " ";
}
.timeline > li:after {
  clear: both;
}
.timeline > li > .timeline-item {
  margin-top: 10px;
  border: 0px solid #dfdfdf;
  background: #fff;
  color: #555;
  margin-left: 60px;
  margin-right: 15px;
  padding: 5px;
  position: relative;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.1);
}
.timeline > li > .timeline-item > .time {
  color: #999;
  float: right;
  margin: 2px 0 0 0;
}
.timeline > li > .timeline-item > .timeline-header {
  margin: 0;
  color: #555;
  border-bottom: 1px solid #f4f4f4;
  padding: 5px;
  font-size: 16px;
  line-height: 1.1;
}
.timeline > li > .timeline-item > .timeline-header > a {
  font-weight: 600;
}
.timeline > li > .timeline-item > .timeline-body,
.timeline > li > .timeline-item > .timeline-footer {
  padding: 10px;
}
.timeline > li.time-label > span {
  font-weight: 600;
  padding: 5px;
  display: inline-block;
  background-color: #fff;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
.timeline > li > .fa,
.timeline > li > .glyphicon,
.timeline > li > .ion {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
  width: 30px;
  height: 30px;
  font-size: 15px;
  line-height: 30px;
  position: absolute;
  color: #666;
  background: #eee;
  border-radius: 50%;
  text-align: center;
  left: 18px;
  top: 0;
}
/*
    Component: Buttons
-------------------------
*/
.btn {
  font-weight: 500;
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 1px;
  border: 1px solid transparent;
}
.btn.btn-default {
  background-color: #fafafa;
  color: #666;
  border-color: #ddd;
  border-bottom-color: #ddd;
}
.btn.btn-primary {
  border-radius: 3px;
  background-color: #40C27D;
  border-color: #38b071;
}
.btn.btn-success {
  border-radius: 3px;
  background-color: #40C27D;
  border-color: #38b071;
}
.btn.btn-info {
  border-radius: 3px;
  background-color: #40C27D;
  border-color: #38b071;
}
.btn.btn-info.list {
  border-radius: 3px;
  background-color: #F9FAFC;
  border-color: #e8ecf4;
  color: #666666;
}
.btn.btn-danger {
  border-radius: 3px;
  background-color: #E55664;
  border-color: #e24050;
}
.btn.btn-danger.list {
  border-radius: 3px;
  background-color: #F9FAFC;
  border-color: #e8ecf4;
  color: #666666;
}
.btn.btn-warning {
  background-color: #fcc633;
  border-color: #fcbf1a;
}
.btn.btn-flat {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  border-width: 1px;
}
.btn:active {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  -moz-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn:focus {
  outline: none;
}
.btn.btn-file {
  position: relative;
  width: 120px;
  height: 35px;
  overflow: hidden;
}
.btn.btn-file > input[type='file'] {
  display: block !important;
  width: 100% !important;
  height: 35px !important;
  opacity: 0 !important;
  position: absolute;
  top: -10px;
  cursor: pointer;
}
.btn.btn-app {
  position: relative;
  padding: 15px 5px;
  margin: 0 0 10px 10px;
  min-width: 80px;
  height: 60px;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  text-align: center;
  color: #666;
  border: 1px solid #ddd;
  background-color: #fafafa;
  font-size: 12px;
}
.btn.btn-app > .fa,
.btn.btn-app > .glyphicon,
.btn.btn-app > .ion {
  font-size: 20px;
  display: block;
}
.btn.btn-app:hover {
  background: #f4f4f4;
  color: #444;
  border-color: #aaa;
}
.btn.btn-app:active,
.btn.btn-app:focus {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  -moz-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn.btn-app > .badge {
  position: absolute;
  top: -3px;
  right: -10px;
  font-size: 10px;
  font-weight: 400;
}
.btn.btn-social-old {
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  opacity: 0.9;
  padding: 0;
}
.btn.btn-social-old > .fa {
  padding: 10px 0;
  width: 40px;
}
.btn.btn-social-old > .fa + span {
  border-left: 1px solid rgba(255, 255, 255, 0.3);
}
.btn.btn-social-old span {
  padding: 10px;
}
.btn.btn-social-old:hover {
  opacity: 1;
}
.btn.btn-circle {
  width: 30px;
  height: 30px;
  line-height: 30px;
  padding: 0;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}
/* 
    Component: callout
------------------------
*/
.callout {
  margin: 0 0 20px 0;
  padding: 15px 30px 15px 15px;
  border-left: 5px solid #eee;
}
.callout h4 {
  margin-top: 0;
}
.callout p:last-child {
  margin-bottom: 0;
}
.callout code,
.callout .highlight {
  background-color: #fff;
}
.callout.callout-danger {
  background-color: #fcf2f2;
  border-color: #dFb5b4;
}
.callout.callout-warning {
  background-color: #fefbed;
  border-color: #f1e7bc;
}
.callout.callout-info {
  background-color: #f0f7fd;
  border-color: #d0e3f0;
}
.callout.callout-danger h4 {
  color: #B94A48;
}
.callout.callout-warning h4 {
  color: #C09853;
}
.callout.callout-info h4 {
  color: #3A87AD;
}
/* 
    Component: alert
------------------------
*/
.alert {
  padding-left: 30px;
  margin-left: 15px;
  position: relative;
}
.alert > .fa,
.alert > .glyphicon {
  position: absolute;
  left: -15px;
  top: -15px;
  width: 35px;
  height: 35px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  line-height: 35px;
  text-align: center;
  background: inherit;
  border: inherit;
}
/*
    Component: Navs
*/
/* NAV PILLS */
.nav.nav-pills > li > a {
  border-top: 3px solid transparent;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  color: #444;
}
.nav.nav-pills > li > a > .fa,
.nav.nav-pills > li > a > .glyphicon,
.nav.nav-pills > li > a > .ion {
  margin-right: 5px;
}
.nav.nav-pills > li.active > a,
.nav.nav-pills > li.active > a:hover {
  background-color: #f6f6f6;
  border-top-color: #177bbb;
  color: #444;
}
.nav.nav-pills > li.active > a {
  font-weight: 600;
}
.nav.nav-pills > li > a:hover {
  background-color: #f6f6f6;
}
.nav.nav-pills.nav-stacked > li > a {
  border-top: 0;
  border-left: 3px solid transparent;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  color: #444;
}
.nav.nav-pills.nav-stacked > li.active > a,
.nav.nav-pills.nav-stacked > li.active > a:hover {
  background-color: #f6f6f6;
  border-left-color: #177bbb;
  color: #444;
}
.nav.nav-pills.nav-stacked > li.header {
  border-bottom: 1px solid #ddd;
  color: #777;
  margin-bottom: 10px;
  padding: 5px 10px;
  text-transform: uppercase;
}
/* NAV TABS */
.nav-tabs-custom {
  margin-bottom: 20px;
  background: #fff;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.1);
}
.nav-tabs-custom > .nav-tabs {
  margin: 0;
  border-bottom-color: #f4f4f4;
}
.nav-tabs-custom > .nav-tabs > li {
  border-top: 3px solid transparent;
  margin-bottom: -2px;
  margin-right: 5px;
}
.nav-tabs-custom > .nav-tabs > li > a {
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  border-radius: 0 !important;
}
.nav-tabs-custom > .nav-tabs > li > a,
.nav-tabs-custom > .nav-tabs > li > a:hover {
  background: transparent;
  margin: 0;
}
.nav-tabs-custom > .nav-tabs > li:not(.active) > a:hover,
.nav-tabs-custom > .nav-tabs > li:not(.active) > a:focus,
.nav-tabs-custom > .nav-tabs > li:not(.active) > a:active {
  border-color: transparent;
}
.nav-tabs-custom > .nav-tabs > li.active {
  border-top-color: #177bbb;
}
.nav-tabs-custom > .nav-tabs > li.active > a,
.nav-tabs-custom > .nav-tabs > li.active:hover > a {
  background-color: #fff;
}
.nav-tabs-custom > .nav-tabs > li.active > a {
  border-top: 0;
  border-left-color: #f4f4f4;
  border-right-color: #f4f4f4;
}
.nav-tabs-custom > .nav-tabs > li:first-of-type {
  margin-left: 0px;
}
.nav-tabs-custom > .nav-tabs > li:first-of-type.active > a {
  border-left-width: 0;
}
.nav-tabs-custom > .nav-tabs.pull-right {
  float: none!important;
}
.nav-tabs-custom > .nav-tabs.pull-right > li {
  float: right;
}
.nav-tabs-custom > .nav-tabs.pull-right > li:first-of-type {
  margin-right: 0px;
}
.nav-tabs-custom > .nav-tabs.pull-right > li:first-of-type.active > a {
  border-left-width: 1px;
  border-right-width: 0px;
}
.nav-tabs-custom > .nav-tabs > li.header {
  font-weight: 400;
  line-height: 35px;
  padding: 0 10px;
  font-size: 20px;
  color: #444;
  cursor: default;
}
.nav-tabs-custom > .nav-tabs > li.header > .fa,
.nav-tabs-custom > .nav-tabs > li.header > .glyphicon,
.nav-tabs-custom > .nav-tabs > li.header > .ion {
  margin-right: 10px;
}
.nav-tabs-custom > .tab-content {
  background: #fff;
  padding: 10px;
}
/* Nav tabs bottom */
.tabs-bottom.nav-3 li a {
  width: 3333.33333333% !important;
}
.tabs-bottom li a {
  border: 0;
}
/* PAGINATION */
.pagination {
  -webkit-box-shadow: 0 1px 1px rgba(90, 90, 90, 0.1);
  -moz-box-shadow: 0 1px 1px rgba(90, 90, 90, 0.1);
  box-shadow: 0 1px 1px rgba(90, 90, 90, 0.1);
}
.pagination > li > a {
  background: #fafafa;
  color: #666;
  border: 1px solid #ddd;
}
.pagination > li > a:hover {
  box-shadow: 0 1px 3px rgba(90, 90, 90, 0.2);
  background: #fff;
  z-index: 9999;
  cursor: pointer;
}
.pagination > li > a.active {
  background: #f1f1f1;
  color: #000;
  -webkit-box-shadow: inset 0 1px 1px rgba(90, 90, 90, 0.1);
  -moz-box-shadow: inset 0 1px 1px rgba(90, 90, 90, 0.1);
  box-shadow: inset 0 1px 1px rgba(90, 90, 90, 0.1);
}
.pagination > li > a.active:hover {
  background: #f3f3f3;
}
.pagination > li:first-of-type a,
.pagination > li:last-of-type a {
  -webkit-border-radius: 2;
  -moz-border-radius: 2;
  border-radius: 2;
}
.modal {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  display: block;
}
.modal .modal-content {
  margin: 25% auto 0 auto;
  box-shadow: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  background: #fff;
}
.modal .modal-content.small {
  width: 400px;
}
.modal .modal-content .modal-content-body {
  padding: 15px;
  border-bottom: 1px #eee solid;
}
.modal .modal-content .modal-content-foot {
  padding: 15px;
}
/*
    Component: Mailbox
*/
.mailbox .table-mailbox {
  border-left: 1px solid #ddd;
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
.mailbox .table-mailbox tr.unread > td {
  background-color: rgba(0, 0, 0, 0.05);
  color: #000;
  font-weight: 600;
}
.mailbox .table-mailbox tr > td > .fa.fa-star,
.mailbox .table-mailbox tr > td > .fa.fa-star-o,
.mailbox .table-mailbox tr > td > .glyphicon.glyphicon-star,
.mailbox .table-mailbox tr > td > .glyphicon.glyphicon-star-empty {
  color: #fcc633;
  cursor: pointer;
}
.mailbox .table-mailbox tr > td.small-col {
  width: 30px;
}
.mailbox .table-mailbox tr > td.name {
  width: 150px;
  font-weight: 600;
}
.mailbox .table-mailbox tr > td.time {
  text-align: right;
  width: 100px;
}
.mailbox .table-mailbox tr > td {
  white-space: nowrap;
}
.mailbox .table-mailbox tr > td > a {
  color: #444;
}
@media screen and (max-width: 767px) {
  .mailbox .nav-stacked > li:not(.header) {
    float: left;
    width: 50%;
  }
  .mailbox .nav-stacked > li:not(.header).header {
    border: 0!important;
  }
  .mailbox .search-form {
    margin-top: 10px;
  }
}
/*
    Page: locked screen
*/
/* ADD THIS CLASS TO THE <HTML> TAG */
.lockscreen {
  background: url(../img/blur-background09.jpg) repeat center center fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
/* Remove the background from the body element */
.lockscreen > body {
  background: transparent;
}
/* We will put the dynamically generated digital clock here */
.lockscreen .headline {
  color: #fff;
  text-shadow: 1px 3px 5px rgba(0, 0, 0, 0.5);
  font-weight: 300;
  -webkit-font-smoothing: antialiased !important;
  opacity: 0.8;
  margin: 10px 0 30px 0;
  font-size: 90px;
}
@media screen and (max-width: 480px) {
  .lockscreen .headline {
    font-size: 60px;
    margin-bottom: 40px;
  }
}
/* User name [optional] */
.lockscreen .lockscreen-name {
  text-align: center;
  font-weight: 600;
  font-size: 16px;
}
/* Will contain the image and the sign in form */
.lockscreen-item {
  padding: 0;
  background: #fff;
  position: relative;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  margin: 10px auto;
  width: 290px;
}
.lockscreen-item:before,
.lockscreen-item:after {
  display: table;
  content: " ";
}
.lockscreen-item:after {
  clear: both;
}
/* User image */
.lockscreen-item > .lockscreen-image {
  position: absolute;
  left: -10px;
  top: -30px;
  background: #fff;
  padding: 10px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  z-index: 10;
}
.lockscreen-item > .lockscreen-image > img {
  width: 70px;
  height: 70px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}
/* Contains the password input and the login button */
.lockscreen-item > .lockscreen-credentials {
  margin-left: 80px;
}
.lockscreen-item > .lockscreen-credentials input {
  border: 0 !important;
}
.lockscreen-item > .lockscreen-credentials .btn {
  background-color: #fff;
  border: 0;
}
/* Extra to give the user an option to navigate the website [optional]*/
.lockscreen-link {
  margin-top: 30px;
  text-align: center;
}
/* 
    Page: register and login
*/
.form-box {
  width: 360px;
  margin: 90px auto 0 auto;
}
.form-box .header {
  -webkit-border-top-left-radius: 4px;
  -webkit-border-top-right-radius: 4px;
  -webkit-border-bottom-right-radius: 0;
  -webkit-border-bottom-left-radius: 0;
  -moz-border-radius-topleft: 4px;
  -moz-border-radius-topright: 4px;
  -moz-border-radius-bottomright: 0;
  -moz-border-radius-bottomleft: 0;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  padding: 20px 10px;
  text-align: center;
  font-size: 26px;
  font-weight: 300;
  color: #333;
}
.form-box .body,
.form-box .footer {
  padding: 10px 20px;
  color: #444;
}
.form-box .body > .form-group,
.form-box .footer > .form-group {
  margin-top: 20px;
}
.form-box .body > .btn,
.form-box .footer > .btn {
  margin-bottom: 10px;
}
.form-box input {
  background: transparent;
}
.form-box .footer {
  -webkit-border-top-left-radius: 0;
  -webkit-border-top-right-radius: 0;
  -webkit-border-bottom-right-radius: 4px;
  -webkit-border-bottom-left-radius: 4px;
  -moz-border-radius-topleft: 0;
  -moz-border-radius-topright: 0;
  -moz-border-radius-bottomright: 4px;
  -moz-border-radius-bottomleft: 4px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}
@media (max-width: 767px) {
  .form-box {
    width: 90%;
  }
}
/* 
    Page: 404 and 500 error pages
------------------------------------
*/
.error-page {
  width: 600px;
  margin: 20px auto 0 auto;
}
@media screen and (max-width: 767px) {
  .error-page {
    width: 100%;
  }
}
.error-page > .headline {
  float: left;
  font-size: 100px;
  font-weight: 300;
}
@media screen and (max-width: 767px) {
  .error-page > .headline {
    float: none;
    text-align: center;
  }
}
.error-page > .error-content {
  margin-left: 190px;
  display: block;
}
@media screen and (max-width: 767px) {
  .error-page > .error-content {
    margin-left: 0;
  }
}
.error-page > .error-content > h3 {
  font-weight: 300;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  .error-page > .error-content > h3 {
    text-align: center;
  }
}
.error-page:before,
.error-page:after {
  display: table;
  content: " ";
}
.error-page:after {
  clear: both;
}
/* 
    Page: Invoice
*/
.invoice {
  position: relative;
  width: 90%;
  margin: 10px auto;
  background: #fff;
  border: 1px solid #f4f4f4;
}
.invoice-title {
  margin-top: 0;
}
/* Enhancement for printing */
@media print {
  .invoice {
    width: 100%;
    border: 0;
    margin: 0;
    padding: 0;
  }
  .invoice-col {
    float: left;
    width: 33.3333333%;
  }
  .table-responsive {
    overflow: auto;
  }
  .table-responsive > .table tr th,
  .table-responsive > .table tr td {
    white-space: normal!important;
  }
}
/*
    Skin Black
    --------
*/
/* skin-black navbar */
.skin-black .navbar {
  background-color: #ffffff;
  border-bottom: 1px solid #eee;
}
.skin-black .navbar .nav a {
  color: #333333;
}
.skin-black .navbar .nav > li > a:hover,
.skin-black .navbar .nav > li > a:active,
.skin-black .navbar .nav > li > a:focus,
.skin-black .navbar .nav .open > a,
.skin-black .navbar .nav .open > a:hover,
.skin-black .navbar .nav .open > a:focus {
  background: #ffffff;
  color: #999999;
}
.skin-black .navbar .navbar-right > .nav {
  margin-right: 10px;
}
.skin-black .navbar .sidebar-toggle .icon-bar {
  background: #333333;
}
.skin-black .navbar .sidebar-toggle:hover .icon-bar {
  background: #999999 !important;
}
/* skin-black logo */
.skin-black .logo {
  background-color: #323339;
  color: #000;
  height: 110px;
  padding-left: 30px;
  padding-top: 30px;
}
.skin-black .logo > a {
  color: #000;
}
.skin-black .logo:hover {
  background: #303136;
}
.skin-black .logo img {
  width: 80%;
}
/* skin-black content header */
.skin-black .right-side > .content-header {
  background: transparent;
  box-shadow: none;
}
/* Skin-red user panel */
.skin-black .user-panel > .image > img {
  border: 1px solid #fff;
}
.skin-black .user-panel > .info,
.skin-black .user-panel > .info > a {
  color: #eee;
}
/* skin-black sidebar */
.skin-black .sidebar > .sidebar-menu > li > a:hover {
  color: #fff;
}
.skin-black .sidebar > .sidebar-menu > li.active > a {
  color: #fff;
  background: #24252A;
}
.skin-black .sidebar > .sidebar-menu > li > .treeview-menu {
  margin: 0 1px;
  background: #444;
}
.skin-black .left-side {
  background: #323339;
}
.skin-black .sidebar a {
  color: #fff;
}
.skin-black .sidebar a:hover {
  color: #fff;
  text-decoration: none;
}
.skin-black .treeview-menu > li > a {
  color: #ccc;
}
.skin-black .treeview-menu > li.active > a,
.skin-black .treeview-menu > li > a:hover {
  color: #fff;
}
.skin-black .sidebar-form {
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  border: 0px solid #555;
  margin: 10px 10px;
}
.skin-black .sidebar-form input[type="text"],
.skin-black .sidebar-form .btn {
  box-shadow: none;
  background-color: rgba(255, 255, 255, 0.1);
  border: 0 solid rgba(255, 255, 255, 0.1);
  height: 35px;
  outline: none;
}
.skin-black .sidebar-form input[type="text"] {
  color: #666;
  -webkit-border-top-left-radius: 2px !important;
  -webkit-border-top-right-radius: 0 !important;
  -webkit-border-bottom-right-radius: 0 !important;
  -webkit-border-bottom-left-radius: 2px !important;
  -moz-border-radius-topleft: 2px !important;
  -moz-border-radius-topright: 0 !important;
  -moz-border-radius-bottomright: 0 !important;
  -moz-border-radius-bottomleft: 2px !important;
  border-top-left-radius: 2px !important;
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
  border-bottom-left-radius: 2px !important;
}
.skin-black .sidebar-form input[type="text"]:focus,
.skin-black .sidebar-form input[type="text"]:focus + .input-group-btn .btn {
  background-color: #444;
  border: 0;
}
.skin-black .sidebar-form input[type="text"]:focus + .input-group-btn .btn {
  border-left: 0;
}
.skin-black .sidebar-form .btn {
  color: #999;
  -webkit-border-top-left-radius: 0 !important;
  -webkit-border-top-right-radius: 2px !important;
  -webkit-border-bottom-right-radius: 2px !important;
  -webkit-border-bottom-left-radius: 0 !important;
  -moz-border-radius-topleft: 0 !important;
  -moz-border-radius-topright: 2px !important;
  -moz-border-radius-bottomright: 2px !important;
  -moz-border-radius-bottomleft: 0 !important;
  border-top-left-radius: 0 !important;
  border-top-right-radius: 2px !important;
  border-bottom-right-radius: 2px !important;
  border-bottom-left-radius: 0 !important;
  border-left: 0;
}
.skin-black .table > thead > tr > th {
  background: #f9fafc;
  border-bottom: 1px #eaeef1 solid;
}
.skin-black .box-transparent {
  background: #fff;
  border-width: 0;
  box-shadow: none;
}
.skin-black .box-transparent .box-header {
  color: #788288;
}
/*!
 * iCheck v1.0.1, http://git.io/arlzeA
 * =================================
 * Powerful jQuery and Zepto plugin for checkboxes and radio buttons customization
 *
 * (c) 2013 Damir Sultanov, http://fronteed.com
 * MIT Licensed
 */
/* iCheck plugin Minimal skin, black
----------------------------------- */
.icheckbox_minimal,
.iradio_minimal {
  display: inline-block;
  *display: inline;
  vertical-align: middle;
  margin: 0;
  padding: 0;
  width: 18px;
  height: 18px;
  background: rgba(255, 255, 255, 0.7) url(iCheck/minimal/minimal.png) no-repeat;
  border: none;
  cursor: pointer;
}
.icheckbox_minimal {
  background-position: 0 0;
}
.icheckbox_minimal.hover {
  background-position: -20px 0;
}
.icheckbox_minimal.checked {
  background-position: -40px 0;
}
.icheckbox_minimal.disabled {
  background-position: -60px 0;
  cursor: default;
}
.icheckbox_minimal.checked.disabled {
  background-position: -80px 0;
}
.iradio_minimal {
  background-position: -100px 0;
}
.iradio_minimal.hover {
  background-position: -120px 0;
}
.iradio_minimal.checked {
  background-position: -140px 0;
}
.iradio_minimal.disabled {
  background-position: -160px 0;
  cursor: default;
}
.iradio_minimal.checked.disabled {
  background-position: -180px 0;
}
/* Retina support */
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (-moz-min-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (min-device-pixel-ratio: 1.5) {
  .icheckbox_minimal,
  .iradio_minimal {
    background-image: url('iCheck/minimal/minimal@2x.png');
    -webkit-background-size: 200px 20px;
    background-size: 200px 20px;
  }
}
.pace .pace-progress {
  background: #00c0ef;
  position: fixed;
  z-index: 2000;
  top: 0;
  left: 0;
  height: 2px;
  -webkit-transition: width 1s;
  -moz-transition: width 1s;
  -o-transition: width 1s;
  transition: width 1s;
}
.pace-inactive {
  display: none;
}
/*
 * Social Buttons for Bootstrap
 *
 * Copyright 2013-2014 Panayiotis Lipiridis
 * Licensed under the MIT License
 *
 * https://github.com/lipis/bootstrap-social
 *
 * Note: this file has been altered to work correctly with AdminLTE
 */
.btn-social {
  position: relative;
  padding-left: 44px !important;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.btn-social :first-child {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 32px !important;
  line-height: 34px !important;
  font-size: 1.6em!important;
  text-align: center;
  border-right: 1px solid rgba(0, 0, 0, 0.2);
}
.btn-social.btn-lg {
  padding-left: 60px !important;
}
.btn-social.btn-lg :first-child {
  line-height: 45px;
  width: 45px;
  font-size: 1.8em;
}
.btn-social.btn-sm {
  padding-left: 38px !important;
}
.btn-social.btn-sm :first-child {
  line-height: 28px;
  width: 28px;
  font-size: 1.4em;
}
.btn-social.btn-xs {
  padding-left: 30px !important;
}
.btn-social.btn-xs :first-child {
  line-height: 20px;
  width: 20px;
  font-size: 1.2em;
}
.btn-social-icon {
  position: relative;
  padding-left: 44px !important;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  height: 34px;
  width: 34px;
  padding: 0;
}
.btn-social-icon :first-child {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 32px !important;
  line-height: 34px !important;
  font-size: 1.6em!important;
  text-align: center;
  border-right: 1px solid rgba(0, 0, 0, 0.2);
}
.btn-social-icon.btn-lg {
  padding-left: 60px !important;
}
.btn-social-icon.btn-lg :first-child {
  line-height: 45px;
  width: 45px;
  font-size: 1.8em;
}
.btn-social-icon.btn-sm {
  padding-left: 38px !important;
}
.btn-social-icon.btn-sm :first-child {
  line-height: 28px;
  width: 28px;
  font-size: 1.4em;
}
.btn-social-icon.btn-xs {
  padding-left: 30px !important;
}
.btn-social-icon.btn-xs :first-child {
  line-height: 20px;
  width: 20px;
  font-size: 1.2em;
}
.btn-social-icon :first-child {
  border: none;
  text-align: center;
  width: 100%!important;
}
.btn-social-icon.btn-lg {
  height: 45px;
  width: 45px;
  padding-left: 0;
  padding-right: 0;
}
.btn-social-icon.btn-sm {
  height: 30px;
  width: 30px;
  padding-left: 0;
  padding-right: 0;
}
.btn-social-icon.btn-xs {
  height: 22px;
  width: 22px;
  padding-left: 0;
  padding-right: 0;
}
.btn-bitbucket {
  color: #ffffff;
  background-color: #205081;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-bitbucket:hover,
.btn-bitbucket:focus,
.btn-bitbucket:active,
.btn-bitbucket.active,
.open .dropdown-toggle.btn-bitbucket {
  color: #ffffff;
  background-color: #183c60;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-bitbucket:active,
.btn-bitbucket.active,
.open .dropdown-toggle.btn-bitbucket {
  background-image: none;
}
.btn-bitbucket.disabled,
.btn-bitbucket[disabled],
fieldset[disabled] .btn-bitbucket,
.btn-bitbucket.disabled:hover,
.btn-bitbucket[disabled]:hover,
fieldset[disabled] .btn-bitbucket:hover,
.btn-bitbucket.disabled:focus,
.btn-bitbucket[disabled]:focus,
fieldset[disabled] .btn-bitbucket:focus,
.btn-bitbucket.disabled:active,
.btn-bitbucket[disabled]:active,
fieldset[disabled] .btn-bitbucket:active,
.btn-bitbucket.disabled.active,
.btn-bitbucket[disabled].active,
fieldset[disabled] .btn-bitbucket.active {
  background-color: #205081;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-bitbucket .badge {
  color: #205081;
  background-color: #ffffff;
}
.btn-dropbox {
  color: #ffffff;
  background-color: #1087dd;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-dropbox:hover,
.btn-dropbox:focus,
.btn-dropbox:active,
.btn-dropbox.active,
.open .dropdown-toggle.btn-dropbox {
  color: #ffffff;
  background-color: #0d70b7;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-dropbox:active,
.btn-dropbox.active,
.open .dropdown-toggle.btn-dropbox {
  background-image: none;
}
.btn-dropbox.disabled,
.btn-dropbox[disabled],
fieldset[disabled] .btn-dropbox,
.btn-dropbox.disabled:hover,
.btn-dropbox[disabled]:hover,
fieldset[disabled] .btn-dropbox:hover,
.btn-dropbox.disabled:focus,
.btn-dropbox[disabled]:focus,
fieldset[disabled] .btn-dropbox:focus,
.btn-dropbox.disabled:active,
.btn-dropbox[disabled]:active,
fieldset[disabled] .btn-dropbox:active,
.btn-dropbox.disabled.active,
.btn-dropbox[disabled].active,
fieldset[disabled] .btn-dropbox.active {
  background-color: #1087dd;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-dropbox .badge {
  color: #1087dd;
  background-color: #ffffff;
}
.btn-facebook {
  color: #ffffff;
  background-color: #3b5998;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-facebook:hover,
.btn-facebook:focus,
.btn-facebook:active,
.btn-facebook.active,
.open .dropdown-toggle.btn-facebook {
  color: #ffffff;
  background-color: #30487b;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-facebook:active,
.btn-facebook.active,
.open .dropdown-toggle.btn-facebook {
  background-image: none;
}
.btn-facebook.disabled,
.btn-facebook[disabled],
fieldset[disabled] .btn-facebook,
.btn-facebook.disabled:hover,
.btn-facebook[disabled]:hover,
fieldset[disabled] .btn-facebook:hover,
.btn-facebook.disabled:focus,
.btn-facebook[disabled]:focus,
fieldset[disabled] .btn-facebook:focus,
.btn-facebook.disabled:active,
.btn-facebook[disabled]:active,
fieldset[disabled] .btn-facebook:active,
.btn-facebook.disabled.active,
.btn-facebook[disabled].active,
fieldset[disabled] .btn-facebook.active {
  background-color: #3b5998;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-facebook .badge {
  color: #3b5998;
  background-color: #ffffff;
}
.btn-flickr {
  color: #ffffff;
  background-color: #ff0084;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-flickr:hover,
.btn-flickr:focus,
.btn-flickr:active,
.btn-flickr.active,
.open .dropdown-toggle.btn-flickr {
  color: #ffffff;
  background-color: #d6006f;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-flickr:active,
.btn-flickr.active,
.open .dropdown-toggle.btn-flickr {
  background-image: none;
}
.btn-flickr.disabled,
.btn-flickr[disabled],
fieldset[disabled] .btn-flickr,
.btn-flickr.disabled:hover,
.btn-flickr[disabled]:hover,
fieldset[disabled] .btn-flickr:hover,
.btn-flickr.disabled:focus,
.btn-flickr[disabled]:focus,
fieldset[disabled] .btn-flickr:focus,
.btn-flickr.disabled:active,
.btn-flickr[disabled]:active,
fieldset[disabled] .btn-flickr:active,
.btn-flickr.disabled.active,
.btn-flickr[disabled].active,
fieldset[disabled] .btn-flickr.active {
  background-color: #ff0084;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-flickr .badge {
  color: #ff0084;
  background-color: #ffffff;
}
.btn-foursquare {
  color: #ffffff;
  background-color: #0072b1;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-foursquare:hover,
.btn-foursquare:focus,
.btn-foursquare:active,
.btn-foursquare.active,
.open .dropdown-toggle.btn-foursquare {
  color: #ffffff;
  background-color: #005888;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-foursquare:active,
.btn-foursquare.active,
.open .dropdown-toggle.btn-foursquare {
  background-image: none;
}
.btn-foursquare.disabled,
.btn-foursquare[disabled],
fieldset[disabled] .btn-foursquare,
.btn-foursquare.disabled:hover,
.btn-foursquare[disabled]:hover,
fieldset[disabled] .btn-foursquare:hover,
.btn-foursquare.disabled:focus,
.btn-foursquare[disabled]:focus,
fieldset[disabled] .btn-foursquare:focus,
.btn-foursquare.disabled:active,
.btn-foursquare[disabled]:active,
fieldset[disabled] .btn-foursquare:active,
.btn-foursquare.disabled.active,
.btn-foursquare[disabled].active,
fieldset[disabled] .btn-foursquare.active {
  background-color: #0072b1;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-foursquare .badge {
  color: #0072b1;
  background-color: #ffffff;
}
.btn-github {
  color: #ffffff;
  background-color: #444444;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-github:hover,
.btn-github:focus,
.btn-github:active,
.btn-github.active,
.open .dropdown-toggle.btn-github {
  color: #ffffff;
  background-color: #303030;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-github:active,
.btn-github.active,
.open .dropdown-toggle.btn-github {
  background-image: none;
}
.btn-github.disabled,
.btn-github[disabled],
fieldset[disabled] .btn-github,
.btn-github.disabled:hover,
.btn-github[disabled]:hover,
fieldset[disabled] .btn-github:hover,
.btn-github.disabled:focus,
.btn-github[disabled]:focus,
fieldset[disabled] .btn-github:focus,
.btn-github.disabled:active,
.btn-github[disabled]:active,
fieldset[disabled] .btn-github:active,
.btn-github.disabled.active,
.btn-github[disabled].active,
fieldset[disabled] .btn-github.active {
  background-color: #444444;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-github .badge {
  color: #444444;
  background-color: #ffffff;
}
.btn-google-plus {
  color: #ffffff;
  background-color: #dd4b39;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-google-plus:hover,
.btn-google-plus:focus,
.btn-google-plus:active,
.btn-google-plus.active,
.open .dropdown-toggle.btn-google-plus {
  color: #ffffff;
  background-color: #ca3523;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-google-plus:active,
.btn-google-plus.active,
.open .dropdown-toggle.btn-google-plus {
  background-image: none;
}
.btn-google-plus.disabled,
.btn-google-plus[disabled],
fieldset[disabled] .btn-google-plus,
.btn-google-plus.disabled:hover,
.btn-google-plus[disabled]:hover,
fieldset[disabled] .btn-google-plus:hover,
.btn-google-plus.disabled:focus,
.btn-google-plus[disabled]:focus,
fieldset[disabled] .btn-google-plus:focus,
.btn-google-plus.disabled:active,
.btn-google-plus[disabled]:active,
fieldset[disabled] .btn-google-plus:active,
.btn-google-plus.disabled.active,
.btn-google-plus[disabled].active,
fieldset[disabled] .btn-google-plus.active {
  background-color: #dd4b39;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-google-plus .badge {
  color: #dd4b39;
  background-color: #ffffff;
}
.btn-instagram {
  color: #ffffff;
  background-color: #3f729b;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-instagram:hover,
.btn-instagram:focus,
.btn-instagram:active,
.btn-instagram.active,
.open .dropdown-toggle.btn-instagram {
  color: #ffffff;
  background-color: #335d7e;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-instagram:active,
.btn-instagram.active,
.open .dropdown-toggle.btn-instagram {
  background-image: none;
}
.btn-instagram.disabled,
.btn-instagram[disabled],
fieldset[disabled] .btn-instagram,
.btn-instagram.disabled:hover,
.btn-instagram[disabled]:hover,
fieldset[disabled] .btn-instagram:hover,
.btn-instagram.disabled:focus,
.btn-instagram[disabled]:focus,
fieldset[disabled] .btn-instagram:focus,
.btn-instagram.disabled:active,
.btn-instagram[disabled]:active,
fieldset[disabled] .btn-instagram:active,
.btn-instagram.disabled.active,
.btn-instagram[disabled].active,
fieldset[disabled] .btn-instagram.active {
  background-color: #3f729b;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-instagram .badge {
  color: #3f729b;
  background-color: #ffffff;
}
.btn-linkedin {
  color: #ffffff;
  background-color: #007bb6;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-linkedin:hover,
.btn-linkedin:focus,
.btn-linkedin:active,
.btn-linkedin.active,
.open .dropdown-toggle.btn-linkedin {
  color: #ffffff;
  background-color: #005f8d;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-linkedin:active,
.btn-linkedin.active,
.open .dropdown-toggle.btn-linkedin {
  background-image: none;
}
.btn-linkedin.disabled,
.btn-linkedin[disabled],
fieldset[disabled] .btn-linkedin,
.btn-linkedin.disabled:hover,
.btn-linkedin[disabled]:hover,
fieldset[disabled] .btn-linkedin:hover,
.btn-linkedin.disabled:focus,
.btn-linkedin[disabled]:focus,
fieldset[disabled] .btn-linkedin:focus,
.btn-linkedin.disabled:active,
.btn-linkedin[disabled]:active,
fieldset[disabled] .btn-linkedin:active,
.btn-linkedin.disabled.active,
.btn-linkedin[disabled].active,
fieldset[disabled] .btn-linkedin.active {
  background-color: #007bb6;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-linkedin .badge {
  color: #007bb6;
  background-color: #ffffff;
}
.btn-tumblr {
  color: #ffffff;
  background-color: #2c4762;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-tumblr:hover,
.btn-tumblr:focus,
.btn-tumblr:active,
.btn-tumblr.active,
.open .dropdown-toggle.btn-tumblr {
  color: #ffffff;
  background-color: #1f3346;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-tumblr:active,
.btn-tumblr.active,
.open .dropdown-toggle.btn-tumblr {
  background-image: none;
}
.btn-tumblr.disabled,
.btn-tumblr[disabled],
fieldset[disabled] .btn-tumblr,
.btn-tumblr.disabled:hover,
.btn-tumblr[disabled]:hover,
fieldset[disabled] .btn-tumblr:hover,
.btn-tumblr.disabled:focus,
.btn-tumblr[disabled]:focus,
fieldset[disabled] .btn-tumblr:focus,
.btn-tumblr.disabled:active,
.btn-tumblr[disabled]:active,
fieldset[disabled] .btn-tumblr:active,
.btn-tumblr.disabled.active,
.btn-tumblr[disabled].active,
fieldset[disabled] .btn-tumblr.active {
  background-color: #2c4762;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-tumblr .badge {
  color: #2c4762;
  background-color: #ffffff;
}
.btn-twitter {
  color: #ffffff;
  background-color: #55acee;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-twitter:hover,
.btn-twitter:focus,
.btn-twitter:active,
.btn-twitter.active,
.open .dropdown-toggle.btn-twitter {
  color: #ffffff;
  background-color: #309aea;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-twitter:active,
.btn-twitter.active,
.open .dropdown-toggle.btn-twitter {
  background-image: none;
}
.btn-twitter.disabled,
.btn-twitter[disabled],
fieldset[disabled] .btn-twitter,
.btn-twitter.disabled:hover,
.btn-twitter[disabled]:hover,
fieldset[disabled] .btn-twitter:hover,
.btn-twitter.disabled:focus,
.btn-twitter[disabled]:focus,
fieldset[disabled] .btn-twitter:focus,
.btn-twitter.disabled:active,
.btn-twitter[disabled]:active,
fieldset[disabled] .btn-twitter:active,
.btn-twitter.disabled.active,
.btn-twitter[disabled].active,
fieldset[disabled] .btn-twitter.active {
  background-color: #55acee;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-twitter .badge {
  color: #55acee;
  background-color: #ffffff;
}
.btn-vk {
  color: #ffffff;
  background-color: #587ea3;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-vk:hover,
.btn-vk:focus,
.btn-vk:active,
.btn-vk.active,
.open .dropdown-toggle.btn-vk {
  color: #ffffff;
  background-color: #4a6a89;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-vk:active,
.btn-vk.active,
.open .dropdown-toggle.btn-vk {
  background-image: none;
}
.btn-vk.disabled,
.btn-vk[disabled],
fieldset[disabled] .btn-vk,
.btn-vk.disabled:hover,
.btn-vk[disabled]:hover,
fieldset[disabled] .btn-vk:hover,
.btn-vk.disabled:focus,
.btn-vk[disabled]:focus,
fieldset[disabled] .btn-vk:focus,
.btn-vk.disabled:active,
.btn-vk[disabled]:active,
fieldset[disabled] .btn-vk:active,
.btn-vk.disabled.active,
.btn-vk[disabled].active,
fieldset[disabled] .btn-vk.active {
  background-color: #587ea3;
  border-color: rgba(0, 0, 0, 0.2);
}
.btn-vk .badge {
  color: #587ea3;
  background-color: #ffffff;
}
[text-angular] [text-angular-toolbar] {
  margin-bottom: 10px;
}
.welcome {
  position: relative;
  margin-bottom: 0px;
}
.welcome .title {
  margin-left: 10px;
  font-size: 30px;
  line-height: 30px;
}
.welcome .time {
  font-size: 16px;
}
.welcome .item {
  text-align: center;
  color: #666;
  vertical-align: bottom;
}
.table.crud .operation {
  text-align: right;
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL2xlc3MvY29yZS5sZXNzIiwiLi4vbGVzcy9taXhpbnMubGVzcyIsIi4uL2xlc3MvaGVhZGVyLmxlc3MiLCIuLi9sZXNzL3NpZGViYXIubGVzcyIsIi4uL2xlc3MvZHJvcGRvd24ubGVzcyIsIi4uL2xlc3MvZm9ybXMubGVzcyIsIi4uL2xlc3MvcHJvZ3Jlc3MtYmFycy5sZXNzIiwiLi4vbGVzcy9zbWFsbC1ib3gubGVzcyIsIi4uL2xlc3MvYm94ZXMubGVzcyIsIi4uL2xlc3MvdGltZWxpbmUubGVzcyIsIi4uL2xlc3MvYnV0dG9ucy5sZXNzIiwiLi4vbGVzcy9jYWxsb3V0Lmxlc3MiLCIuLi9sZXNzL2FsZXJ0cy5sZXNzIiwiLi4vbGVzcy9uYXZzLmxlc3MiLCIuLi9sZXNzL21vZGFsLmxlc3MiLCIuLi9sZXNzL21haWxib3gubGVzcyIsIi4uL2xlc3MvbG9ja3NjcmVlbi5sZXNzIiwiLi4vbGVzcy9sb2dpbl9hbmRfcmVnaXN0ZXIubGVzcyIsIi4uL2xlc3MvNDA0XzUwMF9lcnJvcnMubGVzcyIsIi4uL2xlc3MvaW52b2ljZS5sZXNzIiwiLi4vbGVzcy9za2lucy5sZXNzIiwiLi4vbGVzcy9pQ2hlY2subGVzcyIsIi4uL2xlc3MvcGFjZS5sZXNzIiwiLi4vbGVzcy9ib290c3RyYXAtc29jaWFsLmxlc3MiLCIuLi9sZXNzL3RleHRBbmd1bGFyLmxlc3MiLCIuLi9sZXNzL2N1c3RvbS5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFLQTtBQUFNO0VBQ0YsNEJBQUE7RUFDQSxhQUFhLHVCQUFiO0VBQ0EsbUNBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBOztBQUdKO0VBQ0ksY0FBQTs7QUFFSixDQUFDO0FBQVEsQ0FBQztBQUFTLENBQUM7RUFDaEIsYUFBQTtFQUNBLHFCQUFBO0VBQ0EsY0FBQTs7O0FBR0o7RUFDSSxnQkFBQTs7QUM2Q0EsUUFBQztBQUNHLFFBQUM7RUFDRCxjQUFBO0VBQ0EsU0FBUyxHQUFUOztBQUdKLFFB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LFFBY0k7RUFDSSxrQkFBQTtFQUVBLFdBQUE7RUFDQSxzQkFBQTs7QUFJUixNQUFNLEtBQ0Y7RUFDSSxpQkFBQSIsImZpbGUiOiJBZG1pbkxURS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICAgIENvcmU6IEdlbmVyYWwgc3R5bGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbmh0bWwsIGJvZHkge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbiFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuYSB7XG4gICAgY29sb3I6ICM2NjY2NjY7XG59XG5hOmhvdmVyLCBhOmFjdGl2ZSwgYTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICM0MEMyN0Q7XG59XG4vKiBMYXlvdXRzICovXG4ud3JhcHBlciB7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAuY2xlYXJmaXgoKTsgICAgXG59XG5cbi8qIEhlYWRlciAqL1xuYm9keSA+IC5oZWFkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAxMDMwO1xufVxuXG4vKiBEZWZpbmUgMiBjb2x1bW4gdGVtcGxhdGUgKi9cbi5yaWdodC1zaWRlLCAubGVmdC1zaWRlIHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLypyaWdodCBzaWRlIC0gY29udGlucyBtYWluIGNvbnRlbnQqL1xuLnJpZ2h0LXNpZGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBib2R5LWJnO1xuICAgIG1hcmdpbi1sZWZ0OiBAbGVmdC1zaWRlLXdpZHRoO1xufVxuLypsZWZ0IHNpZGUgLSBjb250YWlucyBzaWRlYmFyKi9cbi5sZWZ0LXNpZGUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IEBsZWZ0LXNpZGUtd2lkdGg7XG4gICAgdG9wOiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBAc2NyZWVuLW1kKSB7XG4gICAgLmxlZnQtc2lkZSB7XG4gICAgfVxuICAgIC8qUmlnaHQgc2lkZSBzdHJlY2ggbW9kZSovXG4gICAgLnJpZ2h0LXNpZGUuc3RyZWNoIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgID4gLmNvbnRlbnQtaGVhZGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKiBMZWZ0IHNpZGUgY29sbGFwc2UgKi9cbiAgICAubGVmdC1zaWRlLmNvbGxhcHNlLWxlZnQge1xuICAgICAgICBsZWZ0OiAtQGxlZnQtc2lkZS13aWR0aDtcbiAgICB9XG59XG5cbi8qR2l2ZSBjb250ZW50IGZ1bGwgd2lkdGggb24geHMgc2NyZWVucyovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLW1kKSB7XG4gICAgLnJpZ2h0LXNpZGUge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbn1cblxuLypcbiAgICBCeSBkZWZhdWx0IHRoZSBsYXlvdXQgaXMgbm90IGZpeGVkIGJ1dCBpZiB5b3UgYWRkIHRoZSBjbGFzcyAuZml4ZWQgdG8gdGhlIGJvZHkgZWxlbWVudFxuICAgIHRoZSBzaWRlYmFyIGFuZCB0aGUgbmF2YmFyIHdpbGwgYXV0b21hdGljYWxseSBiZWNvbWUgcG9pc2l0aW9uZWQgZml4ZWRcbiovXG5ib2R5LmZpeGVkIHtcbiAgICA+IC5oZWFkZXIsIC5sZWZ0LXNpZGUsIC5uYXZiYXIge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICAgID4gLmhlYWRlciB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICAgIC5uYXZiYXIge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICB9XG5cbiAgICAud3JhcHBlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgfVxuXG59XG5cblxuLyogQ29udGVudCAqL1xuLmNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLnJvd3tcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG59XG5cbi8qIFV0aWxpdHkgKi9cblxuLyogSDEgLSBINiBmb250ICovXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG4uaDEsXG4uaDIsXG4uaDMsXG4uaDQsXG4uaDUsXG4uaDYge1xuICAgIGZvbnQtZmFtaWx5OiAnU291cmNlIFNhbnMgUHJvJywgc2Fucy1zZXJpZjtcbn1cblxuLyogUGFnZSBIZWFkZXIgKi9cbi5wYWdlLWhlYWRlciB7XG4gICAgbWFyZ2luOiAxMHB4IDAgMjBweCAwO1xuICAgIGZvbnQtc2l6ZTogMjJweDtcblxuICAgID4gc21hbGwge1xuICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG59XG5cbi8qIEFsbCBpbWFnZXMgc2hvdWxkIGJlIHJlc3BvbnNpdmUgKi9cbmltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5zb3J0LWhpZ2hsaWdodCB7XG4gICAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgICBib3JkZXI6IDFweCBkYXNoZWQgI2RkZDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4vKiAxMHB4IHBhZGRpbmcgYW5kIG1hcmdpbnMgKi9cbi5wYWQge1xuICAgIHBhZGRpbmc6IDE1cHg7XG59XG4ubWFyZ2luIHtcbiAgICBtYXJnaW46IDE1cHg7XG59XG5cbi8qIERpc3BsYXkgaW5saW5lICovXG4uaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgd2lkdGg6IGF1dG87XG59XG5cbi8qIEJhY2tncm91bmQgY29sb3JzICovXG4uYmctcmVkLFxuLmJnLXllbGxvdyxcbi5iZy1hcXVhLFxuLmJnLWJsdWUsXG4uYmctbGlnaHQtYmx1ZSxcbi5iZy1ncmVlbixcbi5iZy1uYXZ5LFxuLmJnLXRlYWwsXG4uYmctb2xpdmUsXG4uYmctbGltZSxcbi5iZy1vcmFuZ2UgLFxuLmJnLWZ1Y2hzaWEsXG4uYmctcHVycGxlLFxuLmJnLW1hcm9vbixcbi5iZy1ibGFjayB7XG4gICAgY29sb3I6ICNmOWY5ZjkgIWltcG9ydGFudDtcbn1cbi5iZy13aGl0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuLmJnLWdyYXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBncmF5IWltcG9ydGFudDtcbn1cbi5iZy1ibGFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGJsYWNrIWltcG9ydGFudDtcbn1cbi5iZy1yZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEByZWQgIWltcG9ydGFudDtcbn1cbi5iZy15ZWxsb3cge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB5ZWxsb3cgIWltcG9ydGFudDtcbn1cbi5iZy1hcXVhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAYXF1YSAhaW1wb3J0YW50O1xufVxuLmJnLWJsdWUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBibHVlICFpbXBvcnRhbnQ7XG59XG4uYmctbGlnaHQtYmx1ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGxpZ2h0LWJsdWUgIWltcG9ydGFudDtcbn1cbi5iZy1ncmVlbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGdyZWVuICFpbXBvcnRhbnQ7XG59XG4uYmctbmF2eSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQG5hdnkgIWltcG9ydGFudDtcbn1cbi5iZy10ZWFsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAdGVhbCAhaW1wb3J0YW50O1xufVxuLmJnLW9saXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAb2xpdmUgIWltcG9ydGFudDtcbn1cbi5iZy1saW1lIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbGltZSAhaW1wb3J0YW50O1xufVxuLmJnLW9yYW5nZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQG9yYW5nZSAhaW1wb3J0YW50O1xufVxuLmJnLWZ1Y2hzaWEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBmdWNoc2lhICFpbXBvcnRhbnQ7XG59XG4uYmctcHVycGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAcHVycGxlICFpbXBvcnRhbnQ7XG59XG4uYmctbWFyb29uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbWFyb29uICFpbXBvcnRhbnQ7XG59XG5cbi8qIFRleHQgY29sb3JzICovXG4udGV4dC1yZWQge1xuICAgIGNvbG9yOiBAcmVkICFpbXBvcnRhbnQ7XG59XG4udGV4dC15ZWxsb3cge1xuICAgIGNvbG9yOiBAeWVsbG93ICFpbXBvcnRhbnQ7XG59XG4udGV4dC1hcXVhIHtcbiAgICBjb2xvcjogQGFxdWEgIWltcG9ydGFudDtcbn1cbi50ZXh0LWJsdWUge1xuICAgIGNvbG9yOiBAYmx1ZSAhaW1wb3J0YW50O1xufVxuLnRleHQtYmxhY2sge1xuICAgIGNvbG9yOiByZ2JhKDAsMCwwLDAuOCkhaW1wb3J0YW50O1xufVxuLnRleHQtbGlnaHQtYmx1ZSB7XG4gICAgY29sb3I6IEBsaWdodC1ibHVlICFpbXBvcnRhbnQ7XG59XG4udGV4dC1ncmVlbiB7XG4gICAgY29sb3I6IEBncmVlbiAhaW1wb3J0YW50O1xufVxuLnRleHQtbmF2eSB7XG4gICAgY29sb3I6IEBuYXZ5ICFpbXBvcnRhbnQ7XG59XG4udGV4dC10ZWFsIHtcbiAgICBjb2xvcjogQHRlYWwgIWltcG9ydGFudDtcbn1cbi50ZXh0LW9saXZlIHtcbiAgICBjb2xvcjogQG9saXZlICFpbXBvcnRhbnQ7XG59XG4udGV4dC1saW1lIHtcbiAgICBjb2xvcjogQGxpbWUgIWltcG9ydGFudDtcbn1cbi50ZXh0LW9yYW5nZSB7XG4gICAgY29sb3I6IEBvcmFuZ2UgIWltcG9ydGFudDtcbn1cbi50ZXh0LWZ1Y2hzaWEge1xuICAgIGNvbG9yOiBAZnVjaHNpYSAhaW1wb3J0YW50O1xufVxuLnRleHQtcHVycGxlIHtcbiAgICBjb2xvcjogQHB1cnBsZSAhaW1wb3J0YW50O1xufVxuLnRleHQtbWFyb29uIHtcbiAgICBjb2xvcjogQG1hcm9vbiAhaW1wb3J0YW50O1xufVxuXG4vKkhpZGUgZWxlbWVudHMgYnkgZGlzcGxheSBub25lIG9ubHkqL1xuLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogUmVtb3ZlIGJvcmRlcnMgKi9cbi5uby1ib3JkZXIge1xuICAgIGJvcmRlcjogMHB4ICFpbXBvcnRhbnQ7XG59XG4vKiBSZW1vdmUgcGFkZGluZyAqL1xuLm5vLXBhZGRpbmcge1xuICAgIHBhZGRpbmc6IDBweCAhaW1wb3J0YW50O1xufVxuLyogUmVtb3ZlIG1hcmdpbnMgKi9cbi5uby1tYXJnaW4ge1xuICAgIG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi8qIFJlbW92ZSBib3ggc2hhZG93ICovXG4ubm8tc2hhZG93IHtcbiAgICBib3gtc2hhZG93OiBub25lIWltcG9ydGFudDtcbn1cblxuLyogRG9uJ3QgZGlzcGxheSB3aGVuIHByaW50aW5nICovXG5AbWVkaWEgcHJpbnQge1xuICAgIC8vQWRkIHRvIGVsZW1lbnRzIHRoYXQgeW91IGRvIG5vdCB3YW50IHRvIHNob3cgd2hlbiBwcmludGluZ1xuICAgIC5uby1wcmludCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfSAgXG4gICAgXG4gICAgLy9FbGVtZW50cyB0aGF0IHdlIHdhbnQgdG8gaGlkZSB3aGVuIHByaW50aW5nXG4gICAgLmxlZnQtc2lkZSwgLmhlYWRlciwgLmNvbnRlbnQtaGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLy9UaGlzIGlzIHRoZSBvbmx5IGVsZW1lbnQgdGhhdCBzaG91bGQgYXBwZWFyLCBzbyBsZXQncyByZW1vdmUgdGhlIG1hcmdpbnNcbiAgICAucmlnaHQtc2lkZSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG59XG5cbi8qIFJlbW92ZSBib3JkZXIgcmFkaXVzICovXG4uZmxhdCB7XG4gICAgLmJvcmRlci1yYWRpdXMoMCkhaW1wb3J0YW50O1xufVxuXG4vKiBDaGFuZ2UgdGhlIGNvbG9yIG9mIHRoZSBzdHJpcGVkIHRhYmxlcyAqL1xuLnRhYmxlLXN0cmlwZWQgPiB0Ym9keSA+IHRyOm50aC1jaGlsZChvZGQpIHtcbiAgICA+IHRkLFxuICAgID4gdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAdGFibGUtc3RyaXBlZC1jb2xvcjtcbiAgICB9XG59XG5cbi50YWJsZS5uby1ib3JkZXIge1xuICAgIFxuICAgICYsIHRkLCB0aCB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICB9XG59XG5cbi8qIC50ZXh0LWNlbnRlciBpbiB0YWJsZXMgKi9cbnRhYmxlLnRleHQtY2VudGVyIHtcbiAgICAmLCB0ZCwgdGgge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuXG4udGFibGUuYWxpZ24ge1xuICAgIHRoIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gICAgdGQge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG59XG5cbi50ZXh0LWJvbGQge1xuICAgICYsICYudGFibGUgdGQsICYudGFibGUgdGgge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbiAgICBcbiAgICBcbn1cblxuLmJvcmRlci1yYWRpdXMtbm9uZSB7XG4gICAgLmJvcmRlci1yYWRpdXMoMCkhaW1wb3J0YW50O1xufVxuXG4vKiBfZml4IGZvciBzcGFya2xpbmUgdG9vbHRpcCAqL1xuLmpxc3Rvb2x0aXB7XG4gICAgcGFkZGluZzogNXB4IWltcG9ydGFudDtcbiAgICB3aWR0aDphdXRvIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6YXV0byFpbXBvcnRhbnQ7XG59XG5cbi8qXG5HcmFkaWVudCBCYWNrZ3JvdW5kIGNvbG9yc1xuKi9cbi5iZy10ZWFsLWdyYWRpZW50IHtcbiAgICAuZ3JhZGllbnQoQHRlYWw7IEB0ZWFsOyBsaWdodGVuKEB0ZWFsLCAxNiUpKSFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmY7XG59XG4uYmctbGlnaHQtYmx1ZS1ncmFkaWVudCB7XG4gICAgLmdyYWRpZW50KEBsaWdodC1ibHVlOyBAbGlnaHQtYmx1ZTsgbGlnaHRlbihAbGlnaHQtYmx1ZSwgMTIlKSkhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmO1xufVxuLmJnLWJsdWUtZ3JhZGllbnQge1xuICAgIC5ncmFkaWVudChAYmx1ZTsgQGJsdWU7IGxpZ2h0ZW4oQGJsdWUsIDclKSkhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmO1xufVxuLmJnLWFxdWEtZ3JhZGllbnQge1xuICAgIC5ncmFkaWVudChAYXF1YTsgQGFxdWE7IGxpZ2h0ZW4oQGFxdWEsIDclKSkhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmO1xufVxuLmJnLXllbGxvdy1ncmFkaWVudCB7XG4gICAgLmdyYWRpZW50KEB5ZWxsb3c7IEB5ZWxsb3c7IGxpZ2h0ZW4oQHllbGxvdywgMTYlKSkhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmO1xufVxuLmJnLXB1cnBsZS1ncmFkaWVudCB7XG4gICAgLmdyYWRpZW50KEBwdXJwbGU7IEBwdXJwbGU7IGxpZ2h0ZW4oQHB1cnBsZSwgMTYlKSkhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmO1xufVxuLmJnLWdyZWVuLWdyYWRpZW50IHtcbiAgICAuZ3JhZGllbnQoQGdyZWVuOyBAZ3JlZW47IGxpZ2h0ZW4oQGdyZWVuLCA3JSkpIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZjtcbn1cbi5iZy1yZWQtZ3JhZGllbnQge1xuICAgIC5ncmFkaWVudChAcmVkOyBAcmVkOyBsaWdodGVuKEByZWQsIDEwJSkpIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZjtcbn1cbi5iZy1ibGFjay1ncmFkaWVudCB7XG4gICAgLmdyYWRpZW50KEBibGFjazsgQGJsYWNrOyBsaWdodGVuKEBibGFjaywgMTAlKSkhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmO1xufVxuLmJnLW1hcm9vbi1ncmFkaWVudCB7XG4gICAgLmdyYWRpZW50KEBtYXJvb247IEBtYXJvb247IGxpZ2h0ZW4oQG1hcm9vbiwgMTAlKSkhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG5cbi5jb25uZWN0ZWRTb3J0YWJsZSB7XG4gICAgbWluLWhlaWdodDogMTAwcHg7XG59XG5cbi8qIEJvcmRlciBjb2xvcnMgKi9cbi5iZC1ib3R0b20tcmVkLFxuLmJkLWJvdHRvbS15ZWxsb3csXG4uYmQtYm90dG9tLWFxdWEsXG4uYmQtYm90dG9tLWJsdWUsXG4uYmQtYm90dG9tLWxpZ2h0LWJsdWUsXG4uYmQtYm90dG9tLWdyZWVuLFxuLmJkLWJvdHRvbS1uYXZ5LFxuLmJkLWJvdHRvbS10ZWFsLFxuLmJkLWJvdHRvbS1vbGl2ZSxcbi5iZC1ib3R0b20tbGltZSxcbi5iZC1ib3R0b20tb3JhbmdlICxcbi5iZC1ib3R0b20tZnVjaHNpYSxcbi5iZC1ib3R0b20tcHVycGxlLFxuLmJkLWJvdHRvbS1tYXJvb24sXG4uYmQtYm90dG9tLWJsYWNrIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggI2NjYyBzb2xpZCA7XG59XG4uYmQtYm90dG9tLXdoaXRlIHtcbiAgICBib3JkZXItY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cbi5iZC1ib3R0b20tZ3JheSB7XG4gICAgYm9yZGVyLWNvbG9yOiBAZ3JheSFpbXBvcnRhbnQ7XG59XG4uYmQtYm90dG9tLWJsYWNrIHtcbiAgICBib3JkZXItY29sb3I6IEBibGFjayFpbXBvcnRhbnQ7XG59XG4uYmQtYm90dG9tLXJlZCB7XG4gICAgYm9yZGVyLWNvbG9yOiBAcmVkICFpbXBvcnRhbnQ7XG59XG4uYmQtYm90dG9tLXllbGxvdyB7XG4gICAgYm9yZGVyLWNvbG9yOiBAeWVsbG93ICFpbXBvcnRhbnQ7XG59XG4uYmQtYm90dG9tLWFxdWEge1xuICAgIGJvcmRlci1jb2xvcjogQGFxdWEgIWltcG9ydGFudDtcbn1cbi5iZC1ib3R0b20tYmx1ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiBAYmx1ZSAhaW1wb3J0YW50O1xufVxuLmJkLWJvdHRvbS1saWdodC1ibHVlIHtcbiAgICBib3JkZXItY29sb3I6IEBsaWdodC1ibHVlICFpbXBvcnRhbnQ7XG59XG4uYmQtYm90dG9tLWdyZWVuIHtcbiAgICBib3JkZXItY29sb3I6IEBncmVlbiAhaW1wb3J0YW50O1xufVxuLmJkLWJvdHRvbS1uYXZ5IHtcbiAgICBib3JkZXItY29sb3I6IEBuYXZ5ICFpbXBvcnRhbnQ7XG59XG4uYmQtYm90dG9tLXRlYWwge1xuICAgIGJvcmRlci1jb2xvcjogQHRlYWwgIWltcG9ydGFudDtcbn1cbi5iZC1ib3R0b20tb2xpdmUge1xuICAgIGJvcmRlci1jb2xvcjogQG9saXZlICFpbXBvcnRhbnQ7XG59XG4uYmQtYm90dG9tLWxpbWUge1xuICAgIGJvcmRlci1jb2xvcjogQGxpbWUgIWltcG9ydGFudDtcbn1cbi5iZC1ib3R0b20tb3JhbmdlIHtcbiAgICBib3JkZXItY29sb3I6IEBvcmFuZ2UgIWltcG9ydGFudDtcbn1cbi5iZC1ib3R0b20tZnVjaHNpYSB7XG4gICAgYm9yZGVyLWNvbG9yOiBAZnVjaHNpYSAhaW1wb3J0YW50O1xufVxuLmJkLWJvdHRvbS1wdXJwbGUge1xuICAgIGJvcmRlci1jb2xvcjogQHB1cnBsZSAhaW1wb3J0YW50O1xufVxuLmJkLWJvdHRvbS1tYXJvb24ge1xuICAgIGJvcmRlci1jb2xvcjogQG1hcm9vbiAhaW1wb3J0YW50O1xufVxuXG4iLCIvLyBNaXNjOiBtaXhpbnNcbi8vPT09PT09PT09PT09PT1cblxuXG4vL0NoYW5nZXMgdGhlIGNvbG9yIGFuZCB0aGUgaG92ZXJpbmcgcHJvcGVydGllcyBvZiB0aGUgbmF2YmFyXG4ubmF2YmFyLXZhcmlhbnQoQGNvbG9yOyBAZm9udC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpOyBAaG92ZXItY29sb3I6ICNmNmY2ZjY7IEBob3Zlci1iZzogcmdiYSgwLCAwLCAwLCAwLjEpKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yO1xuICAgIC8vTmF2YmFyIGxpbmtzXG4gICAgLm5hdiBhIHtcbiAgICAgICAgY29sb3I6IEBmb250LWNvbG9yO1xuICAgIH1cblxuICAgIC5uYXYgPiBsaSA+IGE6aG92ZXIsXG4gICAgICAgIC5uYXYgPiBsaSA+IGE6YWN0aXZlLFxuICAgICAgICAubmF2ID4gbGkgPiBhOmZvY3VzLFxuICAgICAgICAubmF2IC5vcGVuID4gYSxcbiAgICAgICAgLm5hdiAub3BlbiA+IGE6aG92ZXIsXG4gICAgICAgIC5uYXYgLm9wZW4gPiBhOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogQGhvdmVyLWJnO1xuICAgICAgICBjb2xvcjogQGhvdmVyLWNvbG9yO1xuICAgIH1cblxuICAgIC5uYXZiYXItcmlnaHQgPiAubmF2IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cbiAgICAvL0FkZCBjb2xvciB0byB0aGUgc2lkZWJhciB0b2dnbGUgYnV0dG9uXG4gICAgLnNpZGViYXItdG9nZ2xlIC5pY29uLWJhciB7XG4gICAgICAgIGJhY2tncm91bmQ6IEBmb250LWNvbG9yO1xuXG4gICAgfVxuICAgIC5zaWRlYmFyLXRvZ2dsZTpob3ZlciAuaWNvbi1iYXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBAaG92ZXItY29sb3IhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLy9Mb2dvIGNvbG9yIHZhcmlhdGlvblxuLmxvZ28tdmFyaWFudChAY29sb3IpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3I7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgPiBhIHtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbihAY29sb3IsIDElKTtcbiAgICB9XG59XG5cbi8vQm94IHNvbGlkIGNvbG9yIHZhcmlhbnRpb24gY3JlYXRvclxuLmJveC1zb2xpZC12YXJpYW50KEBjb2xvcikge1xuICAgID4gLmJveC1oZWFkZXIge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZDogQGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3I7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICM0NDQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vVHJhbnNmb3JtIGZ1bmN0aW9uIHRoYXQgcm90YXRlcyBlZW1lbnRzXG4udHJhbnNmb3JtKEBkZWdyZWUpIHtcbiAgICB0cmFuc2Zvcm06cm90YXRlKEBkZWdyZWUpO1xuICAgIC1tcy10cmFuc2Zvcm06cm90YXRlKEBkZWdyZWUpOyAvKiBJRSA5ICovXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKEBkZWdyZWUpOyAvKiBTYWZhcmkgYW5kIENocm9tZSAqL1xufVxuLy9Gb3IgZmxvYXRpbmcgZWxlbWVudHNcbi5jbGVhcmZpeCgpIHtcbiAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxufVxuXG4vL2JvcmRlciByYWRpdXMgY3JlYXRvclxuLmJvcmRlci1yYWRpdXMoQHJhZGl1cykge1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogQHJhZGl1cztcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IEByYWRpdXM7XG4gICAgYm9yZGVyLXJhZGl1czogQHJhZGl1cztcbn1cbi8vRGlmZmVyZW50IHJhZGl1cyBlYWNoIHNpZGVcbi5ib3JkZXItcmFkaXVzKEB0b3AtbGVmdDsgQHRvcC1yaWdodDsgQGJvdHRvbS1sZWZ0OyBAYm90dG9tLXJpZ2h0KSB7XG4gICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBAdG9wLWxlZnQ7XG4gICAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogQHRvcC1yaWdodDtcbiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBAYm90dG9tLXJpZ2h0O1xuICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogQGJvdHRvbS1sZWZ0O1xuXG4gICAgLW1vei1ib3JkZXItcmFkaXVzLXRvcGxlZnQ6IEB0b3AtbGVmdDtcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtdG9wcmlnaHQ6IEB0b3AtcmlnaHQ7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0OiBAYm90dG9tLXJpZ2h0O1xuICAgIC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21sZWZ0OiBAYm90dG9tLWxlZnQ7XG5cbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBAdG9wLWxlZnQ7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IEB0b3AtcmlnaHQ7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IEBib3R0b20tcmlnaHQ7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogQGJvdHRvbS1sZWZ0O1xufVxuXG4vL0Jvb3RzdHJhcCBtaXhpbnMgZm9yIHByb2dyZXNzIGJhcnMuIFlvdSBjYW4gZmluZCBvcmlnaW5hbCBjb3BpZXNcbi8vd2l0aCB0aGUgYm9vdHN0cmFwIGFzc2V0cyAod3d3LmdldGJvb3RzdHJhcC5jb20pXG4ucHJvZ3Jlc3MtYmFyLXZhcmlhbnQoQGNvbG9yKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yO1xuICAgIC5wcm9ncmVzcy1zdHJpcGVkICYge1xuICAgICAgICAjZ3JhZGllbnQgPiAuc3RyaXBlZCgpO1xuICAgIH1cbn1cbi8vIEFuaW1hdGlvbnNcbi5hbmltYXRpb24oQGFuaW1hdGlvbikge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBAYW5pbWF0aW9uO1xuICAgIGFuaW1hdGlvbjogQGFuaW1hdGlvbjtcbn1cbiNncmFkaWVudCB7XG4gICAgLnN0cmlwZWQoQGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSk7IEBhbmdsZTogNDVkZWcpIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMTAwJSwgMTAwJSAwLCBjb2xvci1zdG9wKC4yNSwgQGNvbG9yKSwgY29sb3Itc3RvcCguMjUsIHRyYW5zcGFyZW50KSwgY29sb3Itc3RvcCguNSwgdHJhbnNwYXJlbnQpLCBjb2xvci1zdG9wKC41LCBAY29sb3IpLCBjb2xvci1zdG9wKC43NSwgQGNvbG9yKSwgY29sb3Itc3RvcCguNzUsIHRyYW5zcGFyZW50KSwgdG8odHJhbnNwYXJlbnQpKTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoQGFuZ2xlLCBAY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgQGNvbG9yIDUwJSwgQGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgQGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIEBjb2xvciA1MCUsIEBjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoQGFuZ2xlLCBAY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgQGNvbG9yIDUwJSwgQGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIExFU1MgRWxlbWVudHMgMC45XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIEEgc2V0IG9mIHVzZWZ1bCBMRVNTIG1peGluc1xuICAgIE1vcmUgaW5mbyBhdDogaHR0cDovL2xlc3NlbGVtZW50cy5jb21cbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmdyYWRpZW50KEBjb2xvcjogI0Y1RjVGNSwgQHN0YXJ0OiAjRUVFLCBAc3RvcDogI0ZGRikge1xuICBiYWNrZ3JvdW5kOiBAY29sb3I7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQgYm90dG9tLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQgdG9wLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yLXN0b3AoMCwgQHN0YXJ0KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvci1zdG9wKDEsIEBzdG9wKSk7XG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQoYm90dG9tLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBzdGFydCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAc3RvcCk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGNlbnRlciBib3R0b20sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBzdGFydCAwJSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQHN0b3AgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudChAc3RvcCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBzdGFydCk7XG4gIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyVkJywgZW5kQ29sb3JzdHI9JyVkJywgR3JhZGllbnRUeXBlPTApXCIsQHN0b3AsQHN0YXJ0KSk7XG59XG4uYnctZ3JhZGllbnQoQGNvbG9yOiAjRjVGNUY1LCBAc3RhcnQ6IDAsIEBzdG9wOiAyNTUpIHtcbiAgYmFja2dyb3VuZDogQGNvbG9yO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0IGJvdHRvbSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0IHRvcCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvci1zdG9wKDAsIHJnYihAc3RhcnQsQHN0YXJ0LEBzdGFydCkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yLXN0b3AoMSwgcmdiKEBzdG9wLEBzdG9wLEBzdG9wKSkpO1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KGJvdHRvbSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZ2IoQHN0YXJ0LEBzdGFydCxAc3RhcnQpIDAlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJnYihAc3RvcCxAc3RvcCxAc3RvcCkgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGNlbnRlciBib3R0b20sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJnYihAc3RhcnQsQHN0YXJ0LEBzdGFydCkgMCUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJnYihAc3RvcCxAc3RvcCxAc3RvcCkgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudChyZ2IoQHN0b3AsQHN0b3AsQHN0b3ApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmdiKEBzdGFydCxAc3RhcnQsQHN0YXJ0KSk7XG4gIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyVkJywgZW5kQ29sb3JzdHI9JyVkJywgR3JhZGllbnRUeXBlPTApXCIscmdiKEBzdG9wLEBzdG9wLEBzdG9wKSxyZ2IoQHN0YXJ0LEBzdGFydCxAc3RhcnQpKSk7XG59IiwiLypcbiAgICBDb21wb25lbnRzOiBuYXZiYXIsIGxvZ28gYW5kIGNvbnRlbnQgaGVhZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG5ib2R5ID4gLmhlYWRlciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcCA6IDA7XG4gICAgbGVmdDowO1xuICAgIG1heC1oZWlnaHQ6IDEwMHB4OyAgIFxuICAgIHotaW5kZXg6IDEwMzA7XG4gICAgLm5hdmJhciB7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgICAgICAgIFxuICAgICAgICBtYXJnaW4tbGVmdDogQGxlZnQtc2lkZS13aWR0aDtcbiAgICB9XG5cbiAgICAvL05hdmJhciB0b2dnbGUgYnV0dG9uXG4gICAgLm5hdmJhciAuc2lkZWJhci10b2dnbGUge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZzogOXB4IDVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAuYm9yZGVyLXJhZGl1cygwKSFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLm5hdmJhciAuc2lkZWJhci10b2dnbGU6aG92ZXIgLmljb24tYmFye1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xuICAgIH1cbiAgICAubmF2YmFyIC5zaWRlYmFyLXRvZ2dsZSAuaWNvbi1iYXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDIycHg7XG4gICAgICAgIGhlaWdodDogMnB4O1xuXG4gICAgICAgIC5ib3JkZXItcmFkaXVzKDRweCk7XG5cbiAgICB9XG5cbiAgICAubmF2YmFyIC5zaWRlYmFyLXRvZ2dsZSAuaWNvbi1iYXIgKyAuaWNvbi1iYXIge1xuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgfVxuXG4gICAgLy9Vc2VyIGltYWdlIGluIG5hdmJhclxuICAgIC5uYXZiYXIgLm5hdiA+IGxpLnVzZXIgPiBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICAgIC5uYXZiYXIgLm5hdiA+IGxpLnVzZXIgPiBhID4gLmZhLFxuICAgIC5uYXZiYXIgLm5hdiA+IGxpLnVzZXIgPiBhID4gLmdseXBoaWNvbixcbiAgICAubmF2YmFyIC5uYXYgPiBsaS51c2VyID4gYSA+IC5pb24ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICB9XG5cbiAgICAvL0xhYmVscyBpbiBuYXZiYXJcbiAgICAubmF2YmFyIC5uYXYgPiBsaSA+IGEgPiAubGFiZWwge1xuICAgICAgICAuYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDo3cHg7XG4gICAgICAgIHJpZ2h0OiAycHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMGVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDJweDtcbiAgICB9XG4gICAgLm5hdmJhciAubmF2ID4gbGkgPiBhOmhvdmVyID4gLmxhYmVsIHtcbiAgICAgICAgdG9wOiAzcHg7XG4gICAgfVxuXG4gICAgLy9Mb2dvIGJhciAtIGxlZnRzaWRlXG4gICAgLmxvZ28ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgIHdpZHRoOiBAbGVmdC1zaWRlLXdpZHRoO1xuICAgICAgICBmb250LWZhbWlseTogJ0thdXNoYW4gU2NyaXB0JywgY3Vyc2l2ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgLy9Gb3IgbG9nbyBpbWdzIG9yIGljb25zXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgfSAgICAgICAgXG4gICAgfVxuXG4gICAgLy9oZWFkZXIgbmF2YmFyLWZvcm1cbiAgICAubmF2YmFyLWZvcm17XG4gICAgICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBpbnB1dHtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIENvbnRlbnQgSGVhZGVyIFxuLnJpZ2h0LXNpZGUgPiAuY29udGVudC1oZWFkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxNXB4IDE1cHggMTBweCAyMHB4OyAgICBcbiAgICAvLyBIZWFkZXIgVGV4dCBcbiAgICA+IGgxIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGNvbG9yIDogcmdiYSgwLDAsMCwuOCk7XG4gICAgICAgID4gc21hbGwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgID4gLmJyZWFkY3J1bWIge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgcGFkZGluZzogN3B4IDVweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAuYm9yZGVyLXJhZGl1cygycHgpO1xuICAgICAgICA+IGxpID4gYSB7XG4gICAgICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgID4gLmZhLCA+IC5nbHlwaGljb24sID4gLmlvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICB9ICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgPiBsaSArIGxpOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnPlxcMDBhMCc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLXNtKSB7XG4gICAgICAgID4gLmJyZWFkY3J1bWIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlZmVmZWY7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vQ29udHJvbCBuYXZiYXIgc2NhZmZvbGRpbmcgb24geC1zbWFsbCBzY3JlZW5zXG5AbWVkaWEgKG1heC13aWR0aDogQHNjcmVlbi1zbSkge1xuICAgIC5uYXZiYXIgLm5hdmJhci1uYXYgPiBsaSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICAvL0RvbnQndCBsZXQgbGlua3MgZ2V0IGZ1bGwgd2lkdGhcbiAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLm5hdmJhci1uYXYgPiBsaSA+IGEge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIH1cbiAgICAubmF2YmFyIC5uYXZiYXItcmlnaHQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxufVxuXG4vLyBDb2xsYXBzZSBoZWFkZXIgXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLWhlYWRlci1jb2xsYXBzZSkge1xuICAgIGJvZHkgPiAuaGVhZGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAubG9nbywgLm5hdmJhciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubmF2YmFyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgYm9keS5maXhlZCB7XG4gICAgICAgID4gLmhlYWRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIH1cbiAgICAgICAgPiAud3JhcHBlciwgLnNpZGViYXItb2ZmY2FudmFzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwMHB4IWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxufSIsIi8qXG4gICAgQ29tcG9uZW50OiBTaWRlYmFyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuLnNpZGViYXIge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAvLyByZW1vdmUgc2hhZG93IGZyb20gZm9ybVxuICAgIC5zaWRlYmFyLWZvcm0ge1xuICAgICAgICBpbnB1dDpmb2N1cyB7XG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAtbW96LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gU2lkZWJhciBtZW51IFxuICAgIC5zaWRlYmFyLW1lbnUge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgID4gbGkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTRweCA1cHggMTRweCAxNXB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxM3B4O1xuICAgICAgICAgICAgICAgID4gLmZhLCA+IC5nbHlwaGljb24sID4gLmlvbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6MTBweFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRyZWUgdmlldyBtZW51IFxuICAgICAgICAudHJlZXZpZXctbWVudSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCA1cHggNXB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4IDBweDtcbiAgICAgICAgICAgICAgICAgICAgPiAuZmEsID4gLmdseXBoaWNvbiwgPiAuaW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vL1NpZGViYXIgdXNlciBwYW5lbFxuLnVzZXItcGFuZWwge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogIzMyMzMzOTtcbiAgICAuY2xlYXJmaXgoKTtcbiAgICA+IC5pbWFnZSA+IGltZyB7XG4gICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICBoZWlnaHQ6IDQ1cHg7ICAgICAgICBcbiAgICB9XG4gICAgPiAuaW5mbyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICB9XG4gICAgPiAuaW5mbyA+IHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA5cHg7XG4gICAgfVxuICAgID4gLmluZm8gPiBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICA+IC5mYSwgPiAuaW9uLCA+IC5nbHlwaGljb24ge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qXG4gKiBPZmYgQ2FudmFzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogIEdpdmVzIHVzIHRoZSBwdXNoIG1lbnUgZWZmZWN0XG4gKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IEBzY3JlZW4tbWQpIHtcblxuICAgIC5yZWxhdGl2ZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAucm93LW9mZmNhbnZhcy1yaWdodFxuICAgIC5zaWRlYmFyLW9mZmNhbnZhcyB7XG4gICAgICAgIHJpZ2h0OiAtQGxlZnQtc2lkZS13aWR0aDtcbiAgICB9XG5cbiAgICAucm93LW9mZmNhbnZhcy1sZWZ0XG4gICAgLnNpZGViYXItb2ZmY2FudmFzIHtcbiAgICAgICAgbGVmdDogLUBsZWZ0LXNpZGUtd2lkdGg7XG4gICAgfVxuXG4gICAgLnJvdy1vZmZjYW52YXMtcmlnaHQuYWN0aXZlIHtcbiAgICAgICAgcmlnaHQ6IEBsZWZ0LXNpZGUtd2lkdGg7XG4gICAgfVxuXG4gICAgLnJvdy1vZmZjYW52YXMtbGVmdC5hY3RpdmUge1xuICAgICAgICBsZWZ0OiBAbGVmdC1zaWRlLXdpZHRoO1xuICAgIH1cblxuICAgIC5zaWRlYmFyLW9mZmNhbnZhcyB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgYm9keS5maXhlZCB7XG4gICAgICAgIC5zaWRlYmFyLW9mZmNhbnZhcyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgICAgICAgbGVmdDogLUBsZWZ0LXNpZGUtd2lkdGg7XG4gICAgICAgIH1cbiAgICAgICAgLnJvdy1vZmZjYW52YXMtbGVmdC5hY3RpdmUge1xuICAgICAgICAgICAgLm5hdmJhciB7XG4gICAgICAgICAgICAgICAgbGVmdDogQGxlZnQtc2lkZS13aWR0aCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zaWRlYmFyLW9mZmNhbnZhcyB7XG4gICAgICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogXG4gICAgRHJvcGRvd24gbWVudXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi8qRHJvcGRvd25zIGluIGdlbmVyYWwqL1xuLmRyb3Bkb3duLW1lbnUge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDNweCA2cHggcmdiYSgwLDAsMCwwLjEpO1xuICAgIC1tb3otYm94LXNoYWRvdzogMHB4IDNweCA2cHggcmdiYSgwLDAsMCwwLjEpO1xuICAgIGJveC1zaGFkb3c6IDBweCAzcHggNnB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICB6LWluZGV4OiAyMzAwO1xuICAgID4gbGkgPiBhID4gLmdseXBoaWNvbixcbiAgICA+IGxpID4gYSA+IC5mYSxcbiAgICA+IGxpID4gYSA+IC5pb257XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG4gICAgPiBsaSA+IGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbGlnaHQtYmx1ZTtcbiAgICAgICAgY29sb3I6ICNmOWY5Zjk7XG4gICAgfVxufVxuXG4vKkRyb2Rvd24gaW4gbmF2YmFycyovXG4uc2tpbi1ibHVlIC5uYXZiYXIge1xuICAgIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhe1xuICAgICAgICBjb2xvcjogIzQ0NDQ0NDtcbiAgICB9ICAgIFxufVxuXG4vKlxuICAgIE5hdmJhciBjdXN0b20gZHJvcGRvd24gbWVudVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLm5hdmJhci1uYXYgPiAubm90aWZpY2F0aW9ucy1tZW51LFxuLm5hdmJhci1uYXYgPiAubWVzc2FnZXMtbWVudSxcbi5uYXZiYXItbmF2ID4gLnRhc2tzLW1lbnUgeyAgICBcbiAgICAvL2ZpeCB3aWR0aCBhbmQgcGFkZGluZ1xuICAgID4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgIC8vUmVtb3ZlIHBhZGRpbmcgYW5kIG1hcmdpbnMgXG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAhaW1wb3J0YW50O1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZmRmZGY7XG4gICAgICAgIC5ib3JkZXItcmFkaXVzKDRweCkhaW1wb3J0YW50O1xuICAgIH1cbiAgICAvL0RlZmluZSBoZWFkZXIgY2xhc3NcbiAgICA+IC5kcm9wZG93bi1tZW51ID4gbGkuaGVhZGVyIHtcbiAgICAgICAgLmJvcmRlci1yYWRpdXMoNHB4OyA0cHg7IDA7IDApO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBwYWRkaW5nOiA3cHggMTBweDsgICAgXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjRmNGY0O1xuICAgICAgICBjb2xvcjogIzQ0NDQ0NDsgIFxuICAgICAgICBmb250LXNpemU6IDE0cHg7ICAgICAgICAgICAgICAgIFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIC8vIEFkZCBhcnJvdyB0byB0aGUgdG9wICh5b3UgY2FuIGNoYW5nZSB0aGUgd2lkdGggdXNpbmcgYm9yZGVyLXdpZHRoKSBcbiAgICAgICAgICAgIGJvdHRvbTogMTAwJTtcbiAgICAgICAgICAgIGxlZnQ6IDkyJTtcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiA3cHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTdweDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy9EZWZpbmUgZm9vdGVyIGNsYXNzXG4gICAgPiAuZHJvcGRvd24tbWVudSA+IGxpLmZvb3RlciA+IGEge1xuICAgICAgICAuYm9yZGVyLXJhZGl1cygwcHg7IDBweDsgNHB4OyA0cHgpO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gICAgICAgIHBhZGRpbmc6IDdweCAxMHB4OyAgICBcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWVlZWU7ICAgICAgICBcbiAgICAgICAgY29sb3I6ICM0NDQ0NDQ7IFxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC8vSG92ZXIgc3RhdGVcbiAgICAgICAgJjpob3ZlciB7ICAgICAgICAgIFxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL0NsZWFyIGlubmVyIG1lbnUgcGFkZGluZyBhbmQgbWFyZ2luc1xuICAgID4gLmRyb3Bkb3duLW1lbnUgPiBsaSAubWVudSB7ICAgICAgICBcbiAgICAgICAgPiBsaSA+IGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvKiBQcmV2ZW50IHRleHQgZnJvbSBicmVha2luZyAqL1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmNGY0ZjQ7XG4gICAgICAgICAgICAvLyBIb3ZlIHN0YXRlIFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG5cbiAgICB9XG59XG5cbi8vTm90aWZpY2F0aW9ucyBtZW51XG4ubmF2YmFyLW5hdiA+IC5ub3RpZmljYXRpb25zLW1lbnUge1xuICAgID4gLmRyb3Bkb3duLW1lbnUgPiBsaSAubWVudSB7XG4gICAgICAgIC8vIExpbmtzIGluc2lkZSB0aGUgbWVudSBcbiAgICAgICAgPiBsaSA+IGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgY29sb3I6ICM0NDQ0NDQ7XG5cbiAgICAgICAgICAgIC8vIEljb25zIGluc2lkZSB0aGUgbWVudSBcbiAgICAgICAgICAgID4gLmdseXBoaWNvbixcbiAgICAgICAgICAgID4gLmZhLFxuICAgICAgICAgICAgPiAuaW9uIHsgICAgXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICAvKiBEZWZhdWx0IGJhY2tncm91bmQgYW5kIGZvbnQgY29sb3JzICovXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogQGFxdWE7ICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZjlmOWY5OyAvKiBGYWxsYmFjayBmb3IgYnJvd3NlcnMgdGhhdCBkb2Vzbid0IHN1cHBvcnQgcmdiYSAqL1xuICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gICAgICAgICAgICAgICAgLy8gSWNvbiBiYWNrZ3JvdW5kIHZhcmlhdGlvbnMgXG4gICAgICAgICAgICAgICAgJi5kYW5nZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBAcmVkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLndhcm5pbmcge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBAeWVsbG93O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLnN1Y2Nlc3Mge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBAZ3JlZW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IEBhcXVhO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICB9XG59XG5cbi8vTWVzc2FnZXMgbWVudVxuLm5hdmJhci1uYXYgPiAubWVzc2FnZXMtbWVudSB7XG4gICAgLy9Jbm5lciBtZW51XG4gICAgPiAuZHJvcGRvd24tbWVudSA+IGxpIC5tZW51IHtcbiAgICAgICAgLy8gTWVzc2FnZXMgbWVudSBpdGVtIFxuICAgICAgICA+IGxpID4gYSB7XG4gICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCA1cHggMTBweCA1cHg7XG4gICAgICAgICAgICAuYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgICAgLy8gVXNlciBpbWFnZSBcbiAgICAgICAgICAgID4gZGl2ID4gaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG8gMTBweCBhdXRvIGF1dG87XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGRkZGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBNZXNzYWdlIGhlYWRpbmcgXG4gICAgICAgICAgICA+IGg0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgNDVweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzQ0NDQ0NDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7ICAgIFxuICAgICAgICAgICAgICAgIC8vIFNtYWxsIGZvciBtZXNzYWdlIHRpbWUgZGlzcGxheSBcbiAgICAgICAgICAgICAgICA+IHNtYWxsIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM5OTk5OTk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBwIHsgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCA0NXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzg4ODg4ODtcbiAgICAgICAgICAgIH0gICAgICAgICAgICBcblxuICAgICAgICAgICAgLmNsZWFyZml4KCk7XG5cbiAgICAgICAgfVxuXG4gICAgfVxufVxuLy9UYXNrcyBtZW51XG4ubmF2YmFyLW5hdiA+IC50YXNrcy1tZW51IHtcbiAgICA+IC5kcm9wZG93bi1tZW51ID4gbGkgLm1lbnUge1xuICAgICAgICA+IGxpID4gYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuXG4gICAgICAgICAgICA+IGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM2NjY2NjY7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gLnByb2dyZXNzIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi8vVXNlciBtZW51XG4ubmF2YmFyLW5hdiA+IC51c2VyLW1lbnUge1xuICAgID4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAuYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgICAgcGFkZGluZzogMXB4IDAgMCAwO1xuICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgIC8vIEFkZCBhcnJvdyB0byB0aGUgdG9wICh5b3UgY2FuIGNoYW5nZSB0aGUgd2lkdGggYnkgY2hhbmdpbmcgdGhlIGJvcmRlci13aWR0aClcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBib3R0b206IDEwMCU7XG4gICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgICAgICB9XG4gICAgICAgIC8vIEhlYWRlciBtZW51IFxuICAgICAgICA+IGxpLnVzZXItaGVhZGVyIHtcbiAgICAgICAgICAgIGhlaWdodDogMTc1cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLiBZb3UgY2FuIGFkZCBhbnkgLmJnLSogY2xhc3MgdG8gXG4gICAgICAgICAgICAvLyAgIHRoZSBsaSBlbGVtZW50IHRvIGNoYW5nZSB0aGUgYmFja2dyb3VuZCBcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IEBsaWdodC1ibHVlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyAgICAgICAgICAgIFxuICAgICAgICAgICAgLy8gVXNlciBpbWFnZSBcbiAgICAgICAgICAgID4gaW1nIHtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICAgICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDhweCBzb2xpZDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gcCB7XG4gICAgICAgICAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2Y5ZjlmOTtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXNoYWRvdzogMnB4IDJweCAzcHggIzMzMzMzMzsgXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICA+IHNtYWxsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBNZW51IEJvZHkgXG4gICAgICAgID4gbGkudXNlci1ib2R5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Y0ZjRmNDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkZGRkO1xuICAgICAgICAgICAgLmNsZWFyZml4KCk7XG4gICAgICAgICAgICA+IGRpdiA+IGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBAYmx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE1lbnUgRm9vdGVyIFxuICAgICAgICA+IGxpLnVzZXItZm9vdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBib2R5LWJnO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIC5jbGVhcmZpeCgpO1xuICAgICAgICAgICAgLmJ0bi1kZWZhdWx0IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzY2NjY2NjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG4vKiBBZGQgZmFkZSBhbmltYXRpb24gdG8gZHJvcGRvd24gbWVudXMgKi9cbi5vcGVuID4gLmRyb3Bkb3duLW1lbnUge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlQW5pbWF0aW9uO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjouN3M7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUFuaW1hdGlvbjtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjouN3M7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuXG4gICAgLW1vei1hbmltYXRpb24tbmFtZTogZmFkZUFuaW1hdGlvbjtcbiAgICAtbW96LWFuaW1hdGlvbi1kdXJhdGlvbjouN3M7XG4gICAgLW1vei1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICAgIC1tb3otYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAtbW96LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xufVxuQGtleWZyYW1lcyBmYWRlQW5pbWF0aW9uIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdG9wOiAxMjAlO1xuICAgIH1cbiAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRvcDogMTAwJVxuICAgIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlQW5pbWF0aW9uIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdG9wOiAxMjAlO1xuICAgIH1cbiAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICB9XG59XG5cbi8qIEZpeCBkcm9wZG93biBtZW51IGZvciBzbWFsbCBzY3JlZW5zIHRvIGRpc3BsYXkgY29ycmVjdGx5IG9uIHNtYWxsIHNjcmVlbnMgKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IEBzY3JlZW4tc20pIHtcbiAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgID4gLm5vdGlmaWNhdGlvbnMtbWVudSxcbiAgICAgICAgPiAudXNlci1tZW51LFxuICAgICAgICA+IC50YXNrcy1tZW51LFxuICAgICAgICA+IC5tZXNzYWdlcy1tZW51IHtcbiAgICAgICAgICAgID4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZGRkZGRkO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkZGRkO1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2RkZGRkZDsgICAgXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAgICAgICAgXG4gICAgfVxufVxuXG4vKiBGaXggbWVudSBwb3NpdGlvbnMgb24geHMgc2NyZWVucyB0byBhcHBlYXIgY29ycmVjdGx5IGFuZCBmdWxseSAqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogQHNjcmVlbi14cykge1xuICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgPiAubm90aWZpY2F0aW9ucy1tZW51LFxuICAgICAgICA+IC50YXNrcy1tZW51LFxuICAgICAgICA+IC5tZXNzYWdlcy1tZW51IHtcbiAgICAgICAgICAgID4gLmRyb3Bkb3duLW1lbnUgPiBsaS5oZWFkZXIge1xuICAgICAgICAgICAgICAgIC8qIFJlbW92ZSBhcnJvdyBmcm9tIHRoZSB0b3AgKi8gICAgICAgIFxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDBweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9ICAgICAgICBcbiAgICB9XG5cbiAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgID4gLnRhc2tzLW1lbnUge1xuICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTIwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gLm5vdGlmaWNhdGlvbnMtbWVudSB7XG4gICAgICAgICAgICA+IC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0xNzBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiAubWVzc2FnZXMtbWVudSB7XG4gICAgICAgICAgICA+IC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0yMTBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qIFxuICAgQWxsIGZvcm0gZWxlbWVudHMgaW5jbHVkaW5nIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhIGV0Yy5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG5cbiYuZm9ybS1jb250cm9sIHtcblxuICAgIC5ib3JkZXItcmFkaXVzKEBpbnB1dC1yYWRpdXMpIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzk5OSAhaW1wb3J0YW50O1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgIFxuICAgIH0gICAgICAgICAgICAgICBcblxufVxuXG4uZm9ybS1ncm91cCB7XG4gICAgJi5oYXMtc3VjY2VzcyB7XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiBAZ3JlZW47XG4gICAgICAgIH1cbiAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IEBncmVlbiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaGFzLXdhcm5pbmcge1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBjb2xvcjogQHllbGxvdztcbiAgICAgICAgfVxuICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogQHllbGxvdyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaGFzLWVycm9yIHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgY29sb3I6IEByZWQ7XG4gICAgICAgIH1cbiAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IEByZWQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIElucHV0IGdyb3VwICovXG4uaW5wdXQtZ3JvdXAge1xuICAgID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuXG4gICAgfVxuICAgIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gICAgfVxufVxuLyogYnV0dG9uIGdyb3VwcyAqL1xuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gICAgLmJ0biB7XG4gICAgICAgICYuYnRuLWZsYXQ6Zmlyc3Qtb2YtdHlwZSwgJi5idG4tZmxhdDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogQ2hlY2tib3ggYW5kIHJhZGlvIGlucHV0cyAqL1xuLmNoZWNrYm94LCAucmFkaW8ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbn0iLCIvKiBcbiAgICBDb21wZW5lbnQ6IFByb2dyZXNzIGJhcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4vKiBzaXplIHZhcmlhdGlvbiAqL1xuLnByb2dyZXNzLnNtIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG59XG4ucHJvZ3Jlc3MueHMge1xuICAgIGhlaWdodDogN3B4O1xufVxuXG4vKiBWZXJ0aWNhbCBiYXJzICovXG4ucHJvZ3Jlc3MudmVydGljYWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgPiAucHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgd2lkdGg6IDEwMCUhaW1wb3J0YW50OyAgXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vU2l6ZXNcbiAgICAmLnNtIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgfVxuXG4gICAgJi54cyB7XG4gICAgICAgIHdpZHRoOiAxMHB4O1xuICAgIH1cbn1cbi8qIFJlbW92ZSBtYXJnaW5zIGZyb20gcHJvZ3Jlc3MgYmFycyB3aGVuIHB1dCBpbiBhIHRhYmxlICovXG4udGFibGUge1xuICAgIHRyID4gdGQgLnByb2dyZXNzIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbn1cblxuLy8gVmFyaWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnByb2dyZXNzLWJhci1saWdodC1ibHVlLCAucHJvZ3Jlc3MtYmFyLXByaW1hcnkge1xuICAgIC5wcm9ncmVzcy1iYXItdmFyaWFudChAbGlnaHQtYmx1ZSk7XG59XG4ucHJvZ3Jlc3MtYmFyLWdyZWVuLCAucHJvZ3Jlc3MtYmFyLXN1Y2Nlc3Mge1xuICAgIC5wcm9ncmVzcy1iYXItdmFyaWFudChAZ3JlZW4pO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLWFxdWEsIC5wcm9ncmVzcy1iYXItaW5mbyB7XG4gICAgLnByb2dyZXNzLWJhci12YXJpYW50KEBhcXVhKTtcbn1cblxuLnByb2dyZXNzLWJhci15ZWxsb3csIC5wcm9ncmVzcy1iYXItd2FybmluZyB7XG4gICAgLnByb2dyZXNzLWJhci12YXJpYW50KEB5ZWxsb3cpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXJlZCwgLnByb2dyZXNzLWJhci1kYW5nZXIge1xuICAgIC5wcm9ncmVzcy1iYXItdmFyaWFudChAcmVkKTtcbn0iLCIvKlxuICAgIENvbXBvbmVudDogU21hbGwgYm94ZXNcbiovXG5cbi5zbWFsbC1ib3gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAuYm9yZGVyLXJhZGl1cygycHgpO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgLy8gY29udGVudCB3cmFwcGVyXG4gICAgPiAuaW5uZXIge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMCA4MHB4O1xuICAgIH1cblxuICAgID4gLnNtYWxsLWJveC1mb290ZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogM3B4IDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjE1KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAzOHB4O1xuICAgICAgICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgIG1hcmdpbi1sZWZ0Oi0ycHhcblxuICAgIH1cblxuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGNvbG9yOiAjOTk5OTk5O1xuICAgICAgICA+IHNtYWxsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDMsIHAge1xuICAgICAgICB6LWluZGV4OiA1cHg7XG4gICAgfVxuXG4gICAgLy8gdGhlIGljb25cbiAgICAuaWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgIC5ib3JkZXItcmFkaXVzKDMwcHgpO1xuICAgIH1cblxuICAgIC8vIFNtYWxsIGJveCBob3ZlciBzdGF0ZVxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLXhzKSB7XG4gICAgLy8gTm8gbmVlZCBmb3IgaWNvbnMgb24gdmVyeSBzbWFsbCBkZXZpY2VzXG4gICAgLnNtYWxsLWJveCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgfVxuICAgIH1cblxufSIsIi8qXG4gICAgY29tcG9uZW50OiBCb3hlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuLmJveCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAuYm9yZGVyLXJhZGl1cyhAYm94LWJvcmRlci1yYWRpdXMpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlYWVlZjE7XG4gICAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA1KTtcblxuICAgIC8vIGZpeGVkIGhlaWdodCB0byAzMDBweFxuICAgICYuaGVpZ2h0LWNvbnRyb2wge1xuICAgICAgICAuYm94LWJvZHkge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMzAwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJveCBoZWFkZXJcbiAgICAuYm94LWhlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLmNsZWFyZml4KCk7XG4gICAgICAgIC8vQWRkIHRvcCBsZWZ0IGFuZCB0b3AgcmlnaHQgYm9yZGVyIHJhZGl1c1xuICAgICAgICAuYm9yZGVyLXJhZGl1cyhAYm94LWJvcmRlci1yYWRpdXM7IEBib3gtYm9yZGVyLXJhZGl1czsgMDsgMCk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDBweCBzb2xpZCBAYm94LWJvcmRlci1jb2xvcjtcbiAgICAgICAgY29sb3I6ICM0NDQ7ICAgICAgICBcbiAgICAgICAgLy8gSWNvbnMgYW5kIGJveCB0aXRsZVxuICAgICAgICA+IC5mYSwgPiAuZ2x5cGhpY29uLFxuICAgICAgICAuYm94LXRpdGxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICAgICAgaDMuYm94LXRpdGxle1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICM0NDQ7XG4gICAgICAgIH1cbiAgICAgICAgLy8gQm94IFRvb2xzXG4gICAgICAgID4gLmJveC10b29scyB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweCA1cHggNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm94IGJvZHlcbiAgICAuYm94LWJvZHkge1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAuYm9yZGVyLXJhZGl1cygwOyAwOyBAYm94LWJvcmRlci1yYWRpdXM7IEBib3gtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIC8vIFRhYmxlcyB3aXRoaW4gdGhlIGJveCBib2R5XG4gICAgICAgID4gdGFibGUsID4gLnRhYmxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNoYXJ0LXJlc3BvbnNpdmUge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ2hhcnRzXG4gICAgICAgID4gLmNoYXJ0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHN2ZywgY2FudmFzIHsgd2lkdGg6IDEwMCUhaW1wb3J0YW50O31cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENhbGVuZGFyIHdpdGhpbiB0aGUgYm94IGJvZHlcbiAgICAgICAgLmZjIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgfVxuICAgICAgICAvLyBDYWxlbmRhciB0aXRsZVxuICAgICAgICAuZmMtaGVhZGVyLXRpdGxlIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjZlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmZjLWhlYWRlci1yaWdodCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5mYy1oZWFkZXItbGVmdCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLy8gQ2FsZW5kYXIgdGFibGUgaGVhZGVyIGNlbGxzXG4gICAgICAgIC5mYy13aWRnZXQtaGVhZGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmYWZhZmE7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwcHggLTNweCAxcHggcmdiYSgwLDAsMCwwLjAyKTtcbiAgICAgICAgfVxuICAgICAgICAuZmMtZ3JpZCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgICAuZmMtd2lkZ2V0LWhlYWRlcjpmaXJzdC1vZi10eXBlLFxuICAgICAgICAgICAgLmZjLXdpZGdldC1jb250ZW50OmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmZjLXdpZGdldC1oZWFkZXI6bGFzdC1vZi10eXBlLFxuICAgICAgICAgICAgLmZjLXdpZGdldC1jb250ZW50Omxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLy8gdGFibGVzIGluIHRoZSBib3ggYm9keVxuICAgICAgICAudGFibGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mdWxsLXdpZHRoLWNoYXJ0IHtcbiAgICAgICAgICAgIG1hcmdpbjogLTE5cHg7XG4gICAgICAgIH1cbiAgICAgICAgJi5uby1wYWRkaW5nIC5mdWxsLXdpZHRoLWNoYXJ0IHtcbiAgICAgICAgICAgIG1hcmdpbjogLTlweDtcbiAgICAgICAgfVxuXG5cbiAgICB9XG5cbiAgICAvLyBCb3ggZm9vdGVyXG4gICAgLmJveC1mb290ZXIge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgQGJveC1ib3JkZXItY29sb3I7XG4gICAgICAgIC5ib3JkZXItcmFkaXVzKDA7IDA7IEBib3gtYm9yZGVyLXJhZGl1czsgQGJveC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGJveC1mb290ZXItYmc7XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyAgICBTT0xJRCBCT1g6XG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvL3VzZSB0aGlzIGNsYXNzIHRvIGdldCBhIGNvbG9yZWQgaGVhZGVyIGFuZCBib3JkZXJzXG4gICAgLy9cblxuICAgICYuYm94LXNvbGlkIHtcblxuICAgICAgICBib3JkZXItdG9wOiAwcHg7XG4gICAgICAgID4gLmJveC1oZWFkZXIge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDBweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAuYnRuLmJ0bi1kZWZhdWx0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEJveCBjb2xvciB2YXJpYXRpb25zXG4gICAgICAgICYuYm94LXByaW1hcnkge1xuICAgICAgICAgICAgLmJveC1zb2xpZC12YXJpYW50KEBsaWdodC1ibHVlKTtcbiAgICAgICAgfVxuICAgICAgICAmLmJveC1pbmZvIHtcbiAgICAgICAgICAgIC5ib3gtc29saWQtdmFyaWFudChAYXF1YSk7XG4gICAgICAgIH1cbiAgICAgICAgJi5ib3gtZGFuZ2VyIHtcbiAgICAgICAgICAgIC5ib3gtc29saWQtdmFyaWFudChAcmVkKTtcbiAgICAgICAgfVxuICAgICAgICAmLmJveC13YXJuaW5nIHtcbiAgICAgICAgICAgIC5ib3gtc29saWQtdmFyaWFudChAeWVsbG93KTtcbiAgICAgICAgfVxuICAgICAgICAmLmJveC1zdWNjZXNzIHtcbiAgICAgICAgICAgIC5ib3gtc29saWQtdmFyaWFudChAZ3JlZW4pO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuYm94LWhlYWRlciA+IC5ib3gtdG9vbHMgLmJ0biB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gY29sbGFwc2VkIG1vZGVcbiAgICAgICAgJi5jb2xsYXBzZWQtYm94IHtcbiAgICAgICAgICAgIC5ib3gtaGVhZGVyIHtcbiAgICAgICAgICAgICAgICAuYm9yZGVyLXJhZGl1cyhAYm94LWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRml4IGZvbnQgY29sb3IgZm9yIHRpbGVzXG4gICAgICAgICZbY2xhc3MqPSdiZyddIHtcbiAgICAgICAgICAgID4gLmJveC1oZWFkZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAvL0JPWCBHUk9VUFxuICAgIC5ib3gtZ3JvdXAge1xuICAgICAgICA+IC5ib3gge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBqUXVlcnkgS25vYiBpbiBhIGJveFxuICAgIC5rbm9iLWxhYmVsIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjNlbTtcbiAgICB9XG5cbiAgICAvL1xuICAgIC8vICBXaWRnZXRzXG4gICAgLy8tLS0tLS0tLS0tLVxuICAgIC8vXG5cbiAgICAvLyBXaWRnZXQ6IFRPRE8gTElTVFxuXG4gICAgLnRvZG8tbGlzdCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMHB4IDBweDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgLy8gVG9kbyBsaXN0IGVsZW1lbnRcbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAuYm9yZGVyLXJhZGl1cygycHgpO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IEB0YWJsZS1zdHJpcGVkLWNvbG9yO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4ICNlZWUgZGFzaGVkO1xuICAgICAgICAgICAgY29sb3I6ICM0NDQ7XG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIENvbG9yIHZhcmFpdHlcbiAgICAgICAgICAgICYuZGFuZ2VyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogQHJlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYud2FybmluZyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IEB5ZWxsb3c7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmluZm8ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBAYXF1YTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuc3VjY2VzcyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IEBncmVlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYucHJpbWFyeSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IEBsaWdodC1ibHVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IGlucHV0W3R5cGU9J2NoZWNrYm94J10gIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMTBweCAwIDVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICAgICAgY29sb3IgOiMzMzM7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gVGltZSBsYWJlbHNcbiAgICAgICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFRvb2xzIGFuZCBvcHRpb25zIGJveFxuICAgICAgICAgICAgLnRvb2xzIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICBjb2xvcjogQHJlZDtcbiAgICAgICAgICAgICAgICAvLyBpY29uc1xuICAgICAgICAgICAgICAgID4gLmZhLCA+IC5nbHlwaGljb24sID4gLmlvbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIC50b29scyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmRvbmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogQGdyYXkhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5oYW5kbGUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgY3Vyc29yOiBtb3ZlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgfVxuXG4gICAgfVxuICAgIC8vIEVORCBUT0RPIFdJREdFVFxuXG4gICAgLy8gQ2hhdCB3aWRnZXRcbiAgICAuY2hhdCB7XG4gICAgICAgIHBhZGRpbmc6IDVweCAyMHB4IDVweCAxMHB4O1xuXG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCAjZWVlIGRhc2hlZDtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNsZWFyZml4KCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgLy8gVGhlIGltYWdlXG4gICAgICAgICAgICA+IGltZyB7XG4gICAgICAgICAgICAgICAgLy9kaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuLy8gICAgICAgICAgICAgICAgLmJvcmRlci1yYWRpdXMoNTAlKSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgJi5vbmxpbmUge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBAZ3JlZW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYub2ZmbGluZSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIEByZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBUaGUgbWVzc2FnZSBib2R5XG4gICAgICAgICAgICA+IC5tZXNzYWdlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNTVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgICAgICAgICAgICAgICA+IC5uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiMzMzM7XG4gICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiMzMzM7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gVGhlIGF0dGFjaG1lbnRcbiAgICAgICAgICAgID4gLmF0dGFjaG1lbnQge1xuICAgICAgICAgICAgICAgIC5ib3JkZXItcmFkaXVzKEBhdHRhY2htZW50LWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmMGYwZjA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDY1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAgICAgPiBoNCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweCAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgID4gcCwgPiAuZmlsZW5hbWUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jbGVhcmZpeCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG4gICAgLy8gRU5EIENIQVQgV0lER0VUXG5cbiAgICAvLyBCb3ggb3ZlcmxheSBmb3IgTE9BRElORyBTVEFURSBlZmZlY3RcbiAgICA+IC5vdmVybGF5LCA+IC5sb2FkaW5nLWltZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgID4gLm92ZXJsYXkge1xuICAgICAgICB6LWluZGV4OiAxMDEwO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gICAgfVxuXG4gICAgPiAub3ZlcmxheS5kYXJrIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIH1cblxuICAgID4gLmxvYWRpbmctaW1nIHtcbiAgICAgICAgei1pbmRleDogMTAyMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCcuLi9pbWcvYWpheC1sb2FkZXIxLmdpZicpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICAgIH1cblxufSIsIi8qXG5Db21wb25lbnQ6IHRpbWVsaW5lXG4tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuLnRpbWVsaW5le1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIFxuICAgIC8vIFRoZSBsaW5lIFxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2RkZDtcbiAgICAgICAgbGVmdDogMzBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VlZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAuYm9yZGVyLXJhZGl1cygycHgpOyAgICAgICAgXG4gICAgfVxuICAgXG5cbiAgICA+IGxpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIC5jbGVhcmZpeCgpO1xuICAgICAgICBcbiAgICAgICAgLy8gVGhlIGNvbnRlbnQgXG4gICAgICAgID4gLnRpbWVsaW5lLWl0ZW0ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGJvcmRlcjogMHB4IHNvbGlkICNkZmRmZGY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgY29sb3I6ICM1NTU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTsgICAgICAgICAgICBcblxuICAgICAgICAgICAgLy8gVGhlIHRpbWUgYW5kIGhlYWRlciBcbiAgICAgICAgICAgID4gLnRpbWUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDJweCAwIDAgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gLnRpbWVsaW5lLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjRmNGY0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIEl0ZW0gYm9keSBhbmQgZm9vdGVyXG4gICAgICAgICAgICA+IC50aW1lbGluZS1ib2R5LCA+IC50aW1lbGluZS1mb290ZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRpbWUgbGFiZWwgXG4gICAgICAgICYudGltZS1sYWJlbCB7XG4gICAgICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgICAgICAgICAgICAgLmJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRoZSBpY29ucyBcbiAgICAgICAgPiAuZmEsXG4gICAgICAgID4gLmdseXBoaWNvbixcbiAgICAgICAgPiAuaW9uIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWVlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbGVmdDogMThweDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG59IiwiLypcbiAgICBDb21wb25lbnQ6IEJ1dHRvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi5idG4ge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgLmJvcmRlci1yYWRpdXMoQGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiBcbiAgICAvL0J1dHRvbiBjb2xvciB2YXJpYXRpb25zXG4gICAgJjpob3ZlcntcblxuICAgICAgXG4gICAgfVxuICAgICYuYnRuLWRlZmF1bHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGRkO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZGRkO1xuICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJi5ob3ZlciB7XG4vLyAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgICYuYnRuLWZsYXQge1xuLy8gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiBkYXJrZW4oI2U2ZTdlOCwgNSUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuLXByaW1hcnkge1xuICAgICAgICBib3JkZXItcmFkaXVzOjNweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQwQzI3RDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oIzQwQzI3RCwgNSUpO1xuICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJi5ob3ZlciB7XG4vLyAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAbGlnaHQtYmx1ZSwgNSUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuLXN1Y2Nlc3Mge1xuICAgICAgICBib3JkZXItcmFkaXVzOjNweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQwQzI3RDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oIzQwQzI3RCwgNSUpO1xuICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJi5ob3ZlciB7XG4vLyAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAZ3JlZW4sIDUlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi1pbmZvIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czozcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0MEMyN0Q7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCM0MEMyN0QsIDUlKTtcbiAgICAgICAgJjpob3ZlciwgJjphY3RpdmUsICYuaG92ZXIge1xuLy8gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGFxdWEsIDUlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi1pbmZvLmxpc3R7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6M3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjlGQUZDO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigjRjlGQUZDLCA1JSk7XG4gICAgICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJi5ob3ZlciB7XG4vLyAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAYXF1YSwgNSUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuLWRhbmdlciB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6M3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTU1NjY0O1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigjRTU1NjY0LCA1JSk7XG4gICAgICAgICY6aG92ZXIsICY6YWN0aXZlLCAmLmhvdmVyIHtcbi8vICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEByZWQsIDUlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi1kYW5nZXIubGlzdCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6M3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjlGQUZDO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigjRjlGQUZDLCA1JSk7XG4gICAgICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJi5ob3ZlciB7XG4vLyAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAYXF1YSwgNSUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuLXdhcm5pbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAeWVsbG93O1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbihAeWVsbG93LCA1JSk7XG4gICAgICAgICY6aG92ZXIsICY6YWN0aXZlLCAmLmhvdmVyIHtcbi8vICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEB5ZWxsb3csIDUlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBGbGF0IGJ1dHRvbnMgXG4gICAgJi5idG4tZmxhdCB7XG4gICAgICAgIC5ib3JkZXItcmFkaXVzKDApO1xuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIC1tb3otYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlIFxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLDAsMCwuMTI1KTtcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLDAsMCwuMTI1KTtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gaW5wdXQgZmlsZSBidG4gXG4gICAgJi5idG4tZmlsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgID4gaW5wdXRbdHlwZT0nZmlsZSddIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiAzNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQXBwbGljYXRpb24gYnV0dG9ucyBcbiAgICAmLmJ0bi1hcHAge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggNXB4O1xuICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDEwcHg7XG4gICAgICAgIG1pbi13aWR0aDogODBweDtcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIC1tb3otYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTsgXG4gICAgICAgIC5ib3JkZXItcmFkaXVzKDApO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIC8vSWNvbnMgd2l0aGluIHRoZSBidG5cbiAgICAgICAgPiAuZmEsID4gLmdseXBoaWNvbiwgPiAuaW9uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgICBcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjRmNGY0O1xuICAgICAgICAgICAgY29sb3I6ICM0NDQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNhYWE7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsMCwwLC4xMjUpO1xuICAgICAgICAgICAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDNweCA1cHggcmdiYSgwLDAsMCwuMTI1KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsMCwwLC4xMjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy9UaGUgYmFuZGdlXG4gICAgICAgID4gLmJhZGdlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTNweDtcbiAgICAgICAgICAgIHJpZ2h0OiAtMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL1NvY2lhbCBidXR0b25zXG4gICAgJi5idG4tc29jaWFsLW9sZCB7XG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgICAgIC8vT25seSBmb250LWF3ZXNvbWUgcHJvdmlkZXMgc29jaWFsIGljb25zXG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgID4gLmZhIHsgICAgICAgICAgICBcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICB9XG4gICAgICAgID4gLmZhICsgc3BhbiB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsMjU1LCAwLjMpOyAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmLmJ0bi1jaXJjbGUge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgLmJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICB9XG5cbn0iLCJcbi8qIFxuICAgIENvbXBvbmVudDogY2FsbG91dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4vLyBCYXNlIHN0eWxlcyAocmVnYXJkbGVzcyBvZiB0aGVtZSkgXG4uY2FsbG91dCB7XG4gICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgIHBhZGRpbmc6IDE1cHggMzBweCAxNXB4IDE1cHg7XG4gICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjZWVlO1xuXG4gICAgaDQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICBwOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICBjb2RlLFxuICAgIC5oaWdobGlnaHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIH1cblxuICAgIC8vIFRoZW1lcyBmb3IgZGlmZmVyZW50IGNvbnRleHRzIFxuICAgICYuY2FsbG91dC1kYW5nZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmMmYyO1xuICAgICAgICBib3JkZXItY29sb3I6ICNkRmI1YjQ7XG4gICAgfVxuICAgICYuY2FsbG91dC13YXJuaW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmJlZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZjFlN2JjO1xuICAgIH1cbiAgICAmLmNhbGxvdXQtaW5mbyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY3ZmQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2QwZTNmMDtcbiAgICB9XG4gICAgLy8gaDQgaGVhZGVyIHRoZW1lcyBcbiAgICAmLmNhbGxvdXQtZGFuZ2VyIGg0IHtcbiAgICAgICAgY29sb3I6ICNCOTRBNDg7XG4gICAgfVxuXG4gICAgJi5jYWxsb3V0LXdhcm5pbmcgaDQge1xuICAgICAgICBjb2xvcjogI0MwOTg1MztcbiAgICB9XG5cbiAgICAmLmNhbGxvdXQtaW5mbyBoNCB7XG4gICAgICAgIGNvbG9yOiAjM0E4N0FEO1xuICAgIH1cbn0gIiwiLyogXG4gICAgQ29tcG9uZW50OiBhbGVydFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4uYWxlcnQge1xuICAgIC8vQWRkIHBhZGRpbmcgdG8gYWxsb3cgdGhlIGljb24gdG8gYXBwZWFyXG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvL01ha2UgaWNvbnMgZmxvYXQgdG8gdGhlIGxlZnQgY29ybmVyXG4gICAgPiAuZmEsID4gLmdseXBoaWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogLTE1cHg7XG4gICAgICAgIHRvcDogLTE1cHg7IFxuICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAuYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICBsaW5lLWhlaWdodDogMzVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgICAgICBib3JkZXI6IGluaGVyaXQ7XG4gICAgfVxuICAgIFxufVxuIiwiLypcbiAgICBDb21wb25lbnQ6IE5hdnNcbiovXG5cbi8qIE5BViBQSUxMUyAqL1xuLm5hdi5uYXYtcGlsbHMge1xuICAgID4gbGkgPiBhIHtcbiAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAuYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgICAgY29sb3I6ICM0NDQ7XG4gICAgICAgID4gLmZhLCA+IC5nbHlwaGljb24sID4gLmlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICA+IGxpLmFjdGl2ZSA+IGEsID4gbGkuYWN0aXZlID4gYTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6IEBsaWdodC1ibHVlO1xuICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICB9XG4gICAgPiBsaS5hY3RpdmUgPiBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gICAgPiBsaSA+IGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xuICAgIH1cblxuXG4gICAgJi5uYXYtc3RhY2tlZCB7XG4gICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgLmJvcmRlci1yYWRpdXMoMCk7XG4gICAgICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICAgICAgfVxuICAgICAgICA+IGxpLmFjdGl2ZSA+IGEsID4gbGkuYWN0aXZlID4gYTpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IEBsaWdodC1ibHVlO1xuICAgICAgICAgICAgY29sb3I6ICM0NDQ7XG4gICAgICAgIH1cblxuICAgICAgICA+IGxpLmhlYWRlciB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcbiAgICAgICAgICAgIGNvbG9yOiAjNzc3O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogTkFWIFRBQlMgKi9cbi5uYXYtdGFicy1jdXN0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwcHggMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgPiAubmF2LXRhYnMge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNmNGY0ZjQ7XG4gICAgICAgID4gbGkge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgLmJvcmRlci1yYWRpdXMoMCkhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICYsICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bm90KC5hY3RpdmUpIHtcbiAgICAgICAgICAgICAgICA+IGE6aG92ZXIsID4gYTpmb2N1cywgPiBhOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICA+IGxpLmFjdGl2ZSB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiBAbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICYgPiBhLCAmOmhvdmVyID4gYXtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICNmNGY0ZjQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZjRmNGY0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICA+IGxpOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvL1B1bGxlZCB0byB0aGUgcmlnaHRcbiAgICAgICAgJi5wdWxsLXJpZ2h0IHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lIWltcG9ydGFudDtcbiAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gbGk6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBsaS5oZWFkZXIge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4OyAgICAgICAgICAgIFxuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgY29sb3I6ICM0NDQ7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICA+IC5mYSwgPiAuZ2x5cGhpY29uLCA+IC5pb24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgID4gLnRhYi1jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICB9XG59XG5cbi8qIE5hdiB0YWJzIGJvdHRvbSAqL1xuLnRhYnMtYm90dG9tIHtcbiAgICBcbiAgICAmLm5hdi0zIHtcbiAgICAgICAgbGkgYSB7XG4gICAgICAgICAgICB3aWR0aDogcGVyY2VudGFnZSgxMDAvMykhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIGxpIGEge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgfVxufVxuXG4vKiBQQUdJTkFUSU9OICovXG4ucGFnaW5hdGlvbiB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAgMCAxcHggMXB4IHJnYmEoOTAsOTAsOTAsMC4xKTtcbiAgICAtbW96LWJveC1zaGFkb3c6ICAwIDFweCAxcHggcmdiYSg5MCw5MCw5MCwwLjEpO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDkwLDkwLDkwLDAuMSk7XG4gICAgPiBsaSA+IGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbi8vXG4gICAgICAgIC8vQnV0dG9uIGNvbG9yIHZhcmlhdGlvbnNcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDkwLDkwLDkwLDAuMik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgei1pbmRleDogOTk5OTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgICAgICAmLmFjdGl2ZXtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmMWYxZjE7XG4gICAgICAgICAgICBjb2xvcjojMDAwO1xuICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93Omluc2V0ICAwIDFweCAxcHggcmdiYSg5MCw5MCw5MCwwLjEpO1xuICAgICAgICAgICAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSg5MCw5MCw5MCwwLjEpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSg5MCw5MCw5MCwwLjEpO1xuICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjNmM2YzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgID4gbGk6Zmlyc3Qtb2YtdHlwZSBhLCA+IGxpOmxhc3Qtb2YtdHlwZSBhIHtcbiAgICAgICAgLmJvcmRlci1yYWRpdXMoMik7XG4gICAgfVxufSIsIi5tb2RhbHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6MDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuMyk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLm1vZGFsLWNvbnRlbnR7XG4gICAgICAgIG1hcmdpbjogMjUlIGF1dG8gMCBhdXRvO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAuYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgICAgJi5zbWFsbHtcbiAgICAgICAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgICAgfVxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAubW9kYWwtY29udGVudC1ib2R5e1xuICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCAjZWVlIHNvbGlkO1xuICAgICAgICB9XG4gICAgICAgIC5tb2RhbC1jb250ZW50LWZvb3R7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qXG4gICAgQ29tcG9uZW50OiBNYWlsYm94XG4qL1xuXG4ubWFpbGJveCB7XG5cbiAgICAudGFibGUtbWFpbGJveCB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2RkZDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2RkZDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7ICAgICAgICBcbiAgICAgICAgdHIge1xuICAgICAgICAgICAgJi51bnJlYWQge1xuICAgICAgICAgICAgICAgICA+IHRkIHsgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gdGQgPiAuZmEuZmEtc3RhcixcbiAgICAgICAgICAgID4gdGQgPiAuZmEuZmEtc3Rhci1vLFxuICAgICAgICAgICAgPiB0ZCA+IC5nbHlwaGljb24uZ2x5cGhpY29uLXN0YXIsXG4gICAgICAgICAgICA+IHRkID4gLmdseXBoaWNvbi5nbHlwaGljb24tc3Rhci1lbXB0eXtcbiAgICAgICAgICAgICAgICBjb2xvcjogQHllbGxvdzsgICBcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gdGQuc21hbGwtY29sIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiB0ZC5uYW1lIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gdGQudGltZSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4OyAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7ICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmID4gdGQgPiBhIHtjb2xvcjogIzQ0NDt9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLXNtKSB7XG4gICAgICAgIC5uYXYtc3RhY2tlZCB7XG4gICAgICAgICAgICA+IGxpOm5vdCguaGVhZGVyKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICAmLmhlYWRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc2VhcmNoLWZvcm0ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgfVxuICAgIH1cblxufSIsIi8qXG4gICAgUGFnZTogbG9ja2VkIHNjcmVlblxuKi9cblxuLyogQUREIFRISVMgQ0xBU1MgVE8gVEhFIDxIVE1MPiBUQUcgKi9cbi5sb2Nrc2NyZWVuIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2JsdXItYmFja2dyb3VuZDA5LmpwZykgcmVwZWF0IGNlbnRlciBjZW50ZXIgZml4ZWQ7XG4gICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAtby1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi8qIFJlbW92ZSB0aGUgYmFja2dyb3VuZCBmcm9tIHRoZSBib2R5IGVsZW1lbnQgKi9cbi5sb2Nrc2NyZWVuID4gYm9keSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi8qIFdlIHdpbGwgcHV0IHRoZSBkeW5hbWljYWxseSBnZW5lcmF0ZWQgZGlnaXRhbCBjbG9jayBoZXJlICovXG4ubG9ja3NjcmVlbiAuaGVhZGxpbmUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtc2hhZG93OiAxcHggM3B4IDVweCByZ2JhKDAsMCwwLDAuNSk7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZCAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICBtYXJnaW46IDEwcHggMCAzMHB4IDA7XG4gICAgZm9udC1zaXplOiA5MHB4OyAgICBcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogQHNjcmVlbi14cykge1xuICAgIC5sb2Nrc2NyZWVuIC5oZWFkbGluZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB9XG59XG5cbi8qIFVzZXIgbmFtZSBbb3B0aW9uYWxdICovXG4ubG9ja3NjcmVlbiAubG9ja3NjcmVlbi1uYW1lIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDE2cHg7XG59XG5cbi8qIFdpbGwgY29udGFpbiB0aGUgaW1hZ2UgYW5kIHRoZSBzaWduIGluIGZvcm0gKi9cbi5sb2Nrc2NyZWVuLWl0ZW0ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLmJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAuY2xlYXJmaXgoKTsgICAgXG4gICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gICAgd2lkdGg6IDI5MHB4O1xufVxuXG4vKiBVc2VyIGltYWdlICovXG4ubG9ja3NjcmVlbi1pdGVtID4gLmxvY2tzY3JlZW4taW1hZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMTBweDtcbiAgICB0b3A6IC0zMHB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICAuYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgIHotaW5kZXg6IDEwO1xuICAgID4gaW1nIHtcbiAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgLmJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICB9XG59XG5cbi8qIENvbnRhaW5zIHRoZSBwYXNzd29yZCBpbnB1dCBhbmQgdGhlIGxvZ2luIGJ1dHRvbiAqL1xuLmxvY2tzY3JlZW4taXRlbSA+IC5sb2Nrc2NyZWVuLWNyZWRlbnRpYWxzIHtcbiAgICBtYXJnaW4tbGVmdDogODBweDtcbiAgICBpbnB1dCB7XG4gICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuYnRuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbn1cbi8qIEV4dHJhIHRvIGdpdmUgdGhlIHVzZXIgYW4gb3B0aW9uIHRvIG5hdmlnYXRlIHRoZSB3ZWJzaXRlIFtvcHRpb25hbF0qL1xuLmxvY2tzY3JlZW4tbGluayB7ICAgIFxuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufSIsIi8qIFxuICAgIFBhZ2U6IHJlZ2lzdGVyIGFuZCBsb2dpblxuKi9cblxuLmZvcm0tYm94IHsgICAgXG4gICAgd2lkdGg6IDM2MHB4O1xuICAgIG1hcmdpbjogOTBweCBhdXRvIDAgYXV0bztcbiAgICAuaGVhZGVyIHtcbiAgICAgICAgLmJvcmRlci1yYWRpdXMoNHB4LCA0cHgsIDAsIDApO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBjb2xvcjogIzMzMztcbiAgICB9XG4gICAgXG4gICAgIC5ib2R5LCAuZm9vdGVyIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICAgICAgPiAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgPiBpbnB1dCB7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgID4gLmJ0biB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXR7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICBcbiAgICAuZm9vdGVyIHtcbiAgICAgICAuYm9yZGVyLXJhZGl1cygwLCAwLCA0cHgsIDRweCk7XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBAc2NyZWVuLXNtKSB7XG4gICAgd2lkdGg6IDkwJTtcbn1cbn0iLCIvKiBcbiAgICBQYWdlOiA0MDQgYW5kIDUwMCBlcnJvciBwYWdlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4uZXJyb3ItcGFnZSB7XG4gICAgd2lkdGg6IDYwMHB4O1xuICAgIG1hcmdpbjogMjBweCBhdXRvIDAgYXV0bztcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLXNtKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAvL0ZvciB0aGUgZXJyb3IgbnVtYmVyIGUuZzogNDA0XG4gICAgPiAuaGVhZGxpbmUge1xuICAgICAgICBmbG9hdDogbGVmdDsgICAgICAgIFxuICAgICAgICBmb250LXNpemU6IDEwMHB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBAc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvL0ZvciB0aGUgbWVzc2FnZVxuICAgID4gLmVycm9yLWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTkwcHg7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IEBzY3JlZW4tc20pIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgID4gaDMge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IEBzY3JlZW4tc20pIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIC5jbGVhcmZpeCgpO1xufSIsIi8qIFxuICAgIFBhZ2U6IEludm9pY2VcbiovXG5cbi5pbnZvaWNlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmNGY0ZjQ7ICBcbn1cblxuLmludm9pY2UtdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbi8qIEVuaGFuY2VtZW50IGZvciBwcmludGluZyAqL1xuQG1lZGlhIHByaW50IHtcbiAgICAuaW52b2ljZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgLmludm9pY2UtY29sIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMzMzMzJTtcbiAgICB9XG4gICAgXG4gICAgLnRhYmxlLXJlc3BvbnNpdmUge1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgPiAudGFibGUgdHIgdGgsXG4gICAgICAgID4gLnRhYmxlIHRyIHRkIHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWwhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG59IiwiLypcbiAgICBTa2luIEJsYWNrXG4gICAgLS0tLS0tLS1cbiovXG5cbi8qIHNraW4tYmxhY2sgbmF2YmFyICovXG4uc2tpbi1ibGFjayAubmF2YmFyIHtcbiAgICAubmF2YmFyLXZhcmlhbnQoI2ZmZjsgIzMzMzsgIzk5OTsgI2ZmZik7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7XG59XG4vKiBza2luLWJsYWNrIGxvZ28gKi9cbi5za2luLWJsYWNrIC5sb2dvIHtcbiAgICAubG9nby12YXJpYW50KCMzMjMzMzkpO1xuICAgIGhlaWdodDoxMTBweDtcbiAgICBwYWRkaW5nLWxlZnQ6MzBweDtcbiAgICBwYWRkaW5nLXRvcDozMHB4O1xuICAgIGltZ3tcbiAgICB3aWR0aDo4MCU7XG5cbiAgICB9XG59XG4vKiBza2luLWJsYWNrIGNvbnRlbnQgaGVhZGVyICovXG4uc2tpbi1ibGFjayAucmlnaHQtc2lkZSA+IC5jb250ZW50LWhlYWRlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi8qIFNraW4tcmVkIHVzZXIgcGFuZWwgKi9cbi5za2luLWJsYWNrIC51c2VyLXBhbmVsIHtcblxuICAgID4gLmltYWdlID4gaW1nIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgICB9XG5cbiAgICA+IC5pbmZvLCA+IC5pbmZvID4gYSB7XG4gICAgICAgIGNvbG9yOiAjZWVlO1xuICAgIH1cbn1cblxuLyogc2tpbi1ibGFjayBzaWRlYmFyICovXG4uc2tpbi1ibGFjayB7XG4gICAgLnNpZGViYXIge1xuICAgIH1cbiAgICAvLyB0aGUgbWVudSBcbiAgICAuc2lkZWJhciA+IC5zaWRlYmFyLW1lbnUgPiBsaSB7XG5cbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiBhIHtcbiAgICAgICAgfVxuICAgICAgICAvL0hvdmVyIGFuZCBhY3RpdmUgc3RhdGVzXG4gICAgICAgID4gYTpob3ZlcntcbiAgICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzI0MjUyQTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLnRyZWV2aWV3LW1lbnUge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDFweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM0NDQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTaWRlYmFyIGNvbG9yXG4gICAgLmxlZnQtc2lkZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMzMjMzMzk7XG4gICAgfVxuXG4gICAgLnNpZGViYXIgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gc2tpbiBibHVlIHRyZWV2aWV3LW1lbnVcbiAgICAudHJlZXZpZXctbWVudSB7XG4gICAgICAgID4gbGkge1xuICAgICAgICAgICAgPiBhIHtjb2xvcjogI2NjYzt9XG4gICAgICAgICAgICAmLmFjdGl2ZSA+IGEsID4gYTpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2lkZWJhci1mb3JtIHtcbiAgICAgICAgLmJvcmRlci1yYWRpdXMoMnB4KTtcbiAgICAgICAgYm9yZGVyOiAwcHggc29saWQgIzU1NTtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDEwcHg7XG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCAuYnRuIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjEpOyAgIFxuICAgICAgICAgICAgYm9yZGVyOiAwIHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsIDAuMSk7XG4gICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJde1xuICAgICAgICAgICAgY29sb3I6ICM2NjY7ICAgICAgICAgICAgXG4gICAgICAgICAgICAuYm9yZGVyLXJhZGl1cygycHgsIDAsIDJweCwgMCkhaW1wb3J0YW50O1xuICAgICAgICAgICAgJjpmb2N1cywgJjpmb2N1cyArIC5pbnB1dC1ncm91cC1idG4gLmJ0biB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQ0NDsgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpmb2N1cyArIC5pbnB1dC1ncm91cC1idG4gLmJ0biB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgICAgIC5ib3JkZXItcmFkaXVzKDAsIDJweCwgMCwgMnB4KSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZSA+IHRoZWFkID4gdHIgPiB0aHtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y5ZmFmYztcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4ICNlYWVlZjEgc29saWQ7XG4gICAgfVxuXG4gICAgLmJveC10cmFuc3BhcmVudHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgLmJveC1oZWFkZXJ7XG4gICAgICAgICAgICBjb2xvcjojNzg4Mjg4XG4gICAgICAgIH1cbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbn0iLCIvKiFcbiAqIGlDaGVjayB2MS4wLjEsIGh0dHA6Ly9naXQuaW8vYXJsemVBXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFBvd2VyZnVsIGpRdWVyeSBhbmQgWmVwdG8gcGx1Z2luIGZvciBjaGVja2JveGVzIGFuZCByYWRpbyBidXR0b25zIGN1c3RvbWl6YXRpb25cbiAqXG4gKiAoYykgMjAxMyBEYW1pciBTdWx0YW5vdiwgaHR0cDovL2Zyb250ZWVkLmNvbVxuICogTUlUIExpY2Vuc2VkXG4gKi9cbi8qIGlDaGVjayBwbHVnaW4gTWluaW1hbCBza2luLCBibGFja1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5pY2hlY2tib3hfbWluaW1hbCxcbi5pcmFkaW9fbWluaW1hbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICpkaXNwbGF5OiBpbmxpbmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpIHVybChpQ2hlY2svbWluaW1hbC9taW5pbWFsLnBuZykgbm8tcmVwZWF0O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5pY2hlY2tib3hfbWluaW1hbCB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xufVxuICAgIC5pY2hlY2tib3hfbWluaW1hbC5ob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMHB4IDA7XG4gICAgfVxuICAgIC5pY2hlY2tib3hfbWluaW1hbC5jaGVja2VkIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggMDtcbiAgICB9XG4gICAgLmljaGVja2JveF9taW5pbWFsLmRpc2FibGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTYwcHggMDtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cbiAgICAuaWNoZWNrYm94X21pbmltYWwuY2hlY2tlZC5kaXNhYmxlZCB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IDA7XG4gICAgfVxuXG4uaXJhZGlvX21pbmltYWwge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAwO1xufVxuICAgIC5pcmFkaW9fbWluaW1hbC5ob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAwO1xuICAgIH1cbiAgICAuaXJhZGlvX21pbmltYWwuY2hlY2tlZCB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNDBweCAwO1xuICAgIH1cbiAgICAuaXJhZGlvX21pbmltYWwuZGlzYWJsZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggMDtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cbiAgICAuaXJhZGlvX21pbmltYWwuY2hlY2tlZC5kaXNhYmxlZCB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xODBweCAwO1xuICAgIH1cblxuLyogUmV0aW5hIHN1cHBvcnQgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbiAgICAgICBvbmx5IHNjcmVlbiBhbmQgKC1tb3otbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbiAgICAgICBvbmx5IHNjcmVlbiBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMvMiksXG4gICAgICAgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpIHtcbiAgICAuaWNoZWNrYm94X21pbmltYWwsXG4gICAgLmlyYWRpb19taW5pbWFsIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdpQ2hlY2svbWluaW1hbC9taW5pbWFsQDJ4LnBuZycpO1xuICAgICAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogMjAwcHggMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMDBweCAyMHB4O1xuICAgIH1cbn0iLCIucGFjZSAucGFjZS1wcm9ncmVzcyB7XG4gIGJhY2tncm91bmQ6ICMwMGMwZWY7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMjAwMDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDJweDtcblxuICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIDFzO1xuICAtbW96LXRyYW5zaXRpb246IHdpZHRoIDFzO1xuICAtby10cmFuc2l0aW9uOiB3aWR0aCAxcztcbiAgdHJhbnNpdGlvbjogd2lkdGggMXM7XG59XG5cbi5wYWNlLWluYWN0aXZlIHtcbiAgZGlzcGxheTogbm9uZTtcbn0iLCIvKlxuICogU29jaWFsIEJ1dHRvbnMgZm9yIEJvb3RzdHJhcFxuICpcbiAqIENvcHlyaWdodCAyMDEzLTIwMTQgUGFuYXlpb3RpcyBMaXBpcmlkaXNcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZVxuICpcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9saXBpcy9ib290c3RyYXAtc29jaWFsXG4gKlxuICogTm90ZTogdGhpcyBmaWxlIGhhcyBiZWVuIGFsdGVyZWQgdG8gd29yayBjb3JyZWN0bHkgd2l0aCBBZG1pbkxURVxuICovXG5AZm9udC1zaXplLWJhc2U6ICAgICAgICAgIDE0cHg7XG4vLyoqIFVuaXQtbGVzcyBgbGluZS1oZWlnaHRgIGZvciB1c2UgaW4gY29tcG9uZW50cyBsaWtlIGJ1dHRvbnMuXG5AbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDIwLzE0OyAvLyAyMC8xNFxuLy8qKiBDb21wdXRlZCBcImxpbmUtaGVpZ2h0XCIgKGBmb250LXNpemVgICogYGxpbmUtaGVpZ2h0YCkgZm9yIHVzZSB3aXRoIGBtYXJnaW5gLCBgcGFkZGluZ2AsIGV0Yy5cbkBsaW5lLWhlaWdodC1jb21wdXRlZDogICAgZmxvb3IoKEBmb250LXNpemUtYmFzZSAqIEBsaW5lLWhlaWdodC1iYXNlKSk7IC8vIH4yMHB4XG5cbkBmb250LXNpemUtbGFyZ2U6ICAgICAgICAgY2VpbCgoQGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpOyAvLyB+MThweFxuQGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICBjZWlsKChAZm9udC1zaXplLWJhc2UgKiAwLjg1KSk7IC8vIH4xMnB4XG5cbkBwYWRkaW5nLWJhc2UtdmVydGljYWw6ICAgICA2cHg7XG5AcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMTJweDtcblxuQHBhZGRpbmctbGFyZ2UtdmVydGljYWw6ICAgIDEwcHg7XG5AcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgMTVweDtcblxuQHBhZGRpbmctc21hbGwtdmVydGljYWw6ICAgIDVweDtcbkBwYWRkaW5nLXNtYWxsLWhvcml6b250YWw6ICAxMHB4O1xuXG5AYnMtaGVpZ2h0LWJhc2U6IChAbGluZS1oZWlnaHQtY29tcHV0ZWQgKyBAcGFkZGluZy1iYXNlLXZlcnRpY2FsICogMik7XG5AYnMtaGVpZ2h0LWxnOiAgIChmbG9vcihAZm9udC1zaXplLWxhcmdlICogQGxpbmUtaGVpZ2h0LWJhc2UpICsgQHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKiAyKTtcbkBicy1oZWlnaHQtc206ICAgKGZsb29yKEBmb250LXNpemUtc21hbGwgKiAxLjUpICsgQHBhZGRpbmctc21hbGwtdmVydGljYWwgKiAyKTtcbkBicy1oZWlnaHQteHM6ICAgKGZsb29yKEBmb250LXNpemUtc21hbGwgKiAxLjIpICsgQHBhZGRpbmctc21hbGwtdmVydGljYWwgKyAxKTtcblxuLmJ0bi1zb2NpYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogQGJzLWhlaWdodC1iYXNlICsgQHBhZGRpbmctYmFzZS1ob3Jpem9udGFsIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIDpmaXJzdC1jaGlsZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogQGJzLWhlaWdodC1iYXNlIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogKEBicy1oZWlnaHQtYmFzZSArIDIpIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEuNmVtIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICB9XG4gICYuYnRuLWxnIHtcbiAgICBwYWRkaW5nLWxlZnQ6IEBicy1oZWlnaHQtbGcgKyBAcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsIWltcG9ydGFudDtcbiAgICA6Zmlyc3QtY2hpbGQge1xuICAgICAgbGluZS1oZWlnaHQ6IEBicy1oZWlnaHQtbGc7XG4gICAgICB3aWR0aDogQGJzLWhlaWdodC1sZztcbiAgICAgIGZvbnQtc2l6ZTogMS44ZW07XG4gICAgfVxuICB9XG4gICYuYnRuLXNtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IEBicy1oZWlnaHQtc20gKyBAcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsIWltcG9ydGFudDtcbiAgICA6Zmlyc3QtY2hpbGQge1xuICAgICAgbGluZS1oZWlnaHQ6IEBicy1oZWlnaHQtc207XG4gICAgICB3aWR0aDogQGJzLWhlaWdodC1zbTtcbiAgICAgIGZvbnQtc2l6ZTogMS40ZW07XG4gICAgfVxuICB9XG4gICYuYnRuLXhzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IEBicy1oZWlnaHQteHMgKyBAcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsIWltcG9ydGFudDtcbiAgICA6Zmlyc3QtY2hpbGQge1xuICAgICAgbGluZS1oZWlnaHQ6IEBicy1oZWlnaHQteHM7XG4gICAgICB3aWR0aDogQGJzLWhlaWdodC14cztcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgfVxuICB9XG59XG5cbi5idG4tc29jaWFsLWljb24ge1xuICAuYnRuLXNvY2lhbDtcbiAgaGVpZ2h0OiAoQGJzLWhlaWdodC1iYXNlICsgMik7XG4gIHdpZHRoOiAoQGJzLWhlaWdodC1iYXNlICsgMik7XG4gIHBhZGRpbmc6IDA7XG4gIDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJSFpbXBvcnRhbnQ7XG4gIH1cbiAgJi5idG4tbGcge1xuICAgIGhlaWdodDogQGJzLWhlaWdodC1sZztcbiAgICB3aWR0aDogQGJzLWhlaWdodC1sZztcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICAmLmJ0bi1zbSB7XG4gICAgaGVpZ2h0OiAoQGJzLWhlaWdodC1zbSArIDIpO1xuICAgIHdpZHRoOiAoQGJzLWhlaWdodC1zbSArIDIpO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG4gICYuYnRuLXhzIHtcbiAgICBoZWlnaHQ6IChAYnMtaGVpZ2h0LXhzICsgMik7XG4gICAgd2lkdGg6IChAYnMtaGVpZ2h0LXhzICsgMik7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zb2NpYWwoQGNvbG9yLWJnLCBAY29sb3I6IHdoaXRlKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1iZztcbiAgLmJ1dHRvbi12YXJpYW50KEBjb2xvciwgQGNvbG9yLWJnLCByZ2JhKDAsIDAsIDAsIDAuMikpO1xufVxuXG5cbi5idG4tYml0YnVja2V0ICAgICB7IC5idG4tc29jaWFsKCMyMDUwODEpOyB9XG4uYnRuLWRyb3Bib3ggICAgICAgeyAuYnRuLXNvY2lhbCgjMTA4N2RkKTsgfVxuLmJ0bi1mYWNlYm9vayAgICAgIHsgLmJ0bi1zb2NpYWwoIzNiNTk5OCk7IH1cbi5idG4tZmxpY2tyICAgICAgICB7IC5idG4tc29jaWFsKCNmZjAwODQpOyB9XG4uYnRuLWZvdXJzcXVhcmUgICAgeyAuYnRuLXNvY2lhbCgjMDA3MmIxKTsgfVxuLmJ0bi1naXRodWIgICAgICAgIHsgLmJ0bi1zb2NpYWwoIzQ0NDQ0NCk7IH1cbi5idG4tZ29vZ2xlLXBsdXMgICB7IC5idG4tc29jaWFsKCNkZDRiMzkpOyB9XG4uYnRuLWluc3RhZ3JhbSAgICAgeyAuYnRuLXNvY2lhbCgjM2Y3MjliKTsgfVxuLmJ0bi1saW5rZWRpbiAgICAgIHsgLmJ0bi1zb2NpYWwoIzAwN2JiNik7IH1cbi5idG4tdHVtYmxyICAgICAgICB7IC5idG4tc29jaWFsKCMyYzQ3NjIpOyB9XG4uYnRuLXR3aXR0ZXIgICAgICAgeyAuYnRuLXNvY2lhbCgjNTVhY2VlKTsgfVxuLmJ0bi12ayAgICAgICAgICAgIHsgLmJ0bi1zb2NpYWwoIzU4N2VhMyk7IH1cblxuLy8gQnV0dG9uIHZhcmlhbnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcbi5idXR0b24tdmFyaWFudChAY29sb3I7IEBiYWNrZ3JvdW5kOyBAYm9yZGVyKSB7XG4gIGNvbG9yOiBAY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IEBiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6IEBib3JkZXI7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiAuZHJvcGRvd24tdG9nZ2xlJiB7XG4gICAgY29sb3I6IEBjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGJhY2tncm91bmQsIDglKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oQGJvcmRlciwgMTIlKTtcbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuIC5kcm9wZG93bi10b2dnbGUmIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGJhY2tncm91bmQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBAYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgY29sb3I6IEBiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvcjtcbiAgfVxufSIsIlt0ZXh0LWFuZ3VsYXJdIFt0ZXh0LWFuZ3VsYXItdG9vbGJhcl17XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn0iLCIud2VsY29tZXtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIC50aXRsZXtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTozMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICB9XG4gICAgLnRpbWV7XG4vLyAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuLy8gICAgICAgIHJpZ2h0OiAyMHB4O1xuLy8gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgICAuaXRlbXtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGNvbG9yOiM2NjY7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgfVxufVxuXG4udGFibGUuY3J1ZHtcbiAgICAub3BlcmF0aW9ue1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG59Il0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */