/* ==================================================================================
   Body
   ================================================================================== */
body {
  margin: 0;
  overflow-y: scroll;
}
body.opened-keditor-sidebar .keditor-content-area {
  margin-right: 260px;
}
body.opened-keditor-sidebar .keditor-sidebar {
  right: 0;
}
body.opened-modal {
  overflow: hidden;
}
/* ==================================================================================
   Keditor UI
   ================================================================================== */
.keditor-ui {
  margin: 0;
  padding: 0;
  border: 0;
  outline: none;
}
.keditor-ui,
.keditor-ui:before,
.keditor-ui:after {
  box-sizing: border-box;
}
.keditor-ui small,
.keditor-ui .small {
  font-size: 88%;
}
/* ==================================================================================
   Iframe
   ================================================================================== */
.keditor-iframe-wrapper {
  border: 1px solid #ddd;
  position: relative;
  overflow: hidden;
}
.keditor-iframe {
  width: 100%;
  height: 500px;
  border: 0;
}
/* ==================================================================================
   Content area
   ================================================================================== */
.keditor-content-area {
  min-height: 100px;
  width: auto;
  margin: 0;
  padding: 80px 50px 30px;
}
/* ==================================================================================
   Sidebar
   ================================================================================== */
.keditor-sidebar {
  position: fixed;
  z-index: 1031;
  top: 0;
  bottom: 0;
  right: -300px;
  width: 300px;
  background: #f0f0f0;
  border-left: 1px solid #ddd;
  box-shadow: -1px 0 5px rgba(0, 0, 0, 0.15);
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  opacity: 0;
}
.keditor-sidebar.opened {
  right: 0;
  opacity: 1;
}
.keditor-iframe-wrapper .keditor-sidebar {
  position: absolute;
}
.keditor-sidebar-header {
  border-bottom: 1px solid #ddd;
  padding: 10px 30px 10px 15px;
  position: relative;
}
.keditor-sidebar-close {
  text-decoration: none !important;
  color: #ccc;
  text-align: center;
  position: absolute;
  top: 8px;
  right: 5px;
  width: 24px;
  height: 24px;
  line-height: 23px;
  font-size: 19px;
  font-weight: bold;
}
.keditor-sidebar-close:hover {
  color: #aaa;
}
.keditor-sidebar-title {
  font-weight: bold;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
}
.keditor-sidebar-body {
  height: calc(100% - 41px);
  overflow-x: hidden;
  overflow-y: auto;
  padding: 10px 15px;
}
.keditor-sidebar-body .keditor-setting-form {
  overflow: hidden;
  display: none;
  min-height: 100%;
}
.keditor-sidebar-body .keditor-setting-form:before,
.keditor-sidebar-body .keditor-setting-form:after {
  content: " ";
  display: table;
}
.keditor-sidebar-body .keditor-setting-form:after {
  clear: both;
}
.keditor-sidebar-body .keditor-setting-form.active {
  display: block;
}
/* ==================================================================================
   Snippets
   ================================================================================== */
.keditor-snippets-wrapper {
  display: none;
  height: 100%;
}
.keditor-snippets-wrapper .keditor-snippets-filter-wrapper {
  padding: 10px 15px;
  letter-spacing: -1em;
  box-shadow: 0 0 3px 3px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 2;
}
.keditor-snippets-wrapper .keditor-snippets-filter-wrapper > * {
  display: inline-block;
  border: 1px solid #ddd;
  height: 30px;
  line-height: 30px;
  padding: 0 5px;
  letter-spacing: normal;
}
.keditor-snippets-wrapper .keditor-snippets-filter-wrapper .keditor-snippets-filter {
  width: calc(50% - 5px);
  margin-right: 10px;
}
.keditor-snippets-wrapper .keditor-snippets-filter-wrapper .keditor-snippets-search {
  width: calc(50% - 5px);
}
.keditor-snippets-wrapper .keditor-snippets {
  position: relative;
  z-index: 1;
  height: calc(100% - 50px);
  overflow-y: scroll;
  padding: 15px 0 0 15px;
}
.keditor-snippet {
  border: 1px solid #eee;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  float: left;
  background: #ffffff;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: calc(25% - 15px);
  margin: 0 15px 15px 0;
}
.keditor-snippet > span {
  display: block;
  padding-bottom: 100%;
  position: relative;
}
.keditor-snippet > span span {
  position: absolute;
  top: 15px;
  left: 15px;
  bottom: 15px;
  right: 15px;
  display: block;
  background: no-repeat 50% 50% / contain;
}
.keditor-snippet.not-matched {
  display: none;
}
.keditor-snippet:hover {
  border-color: #ccc;
  box-shadow: 1px 1px 2px 1px rgba(0, 0, 0, 0.1);
}
.keditor-snippet.selected {
  border-color: #2eb2e4;
  box-shadow: 0 0 0 2px #2eb2e4 inset;
}
@media (max-width: 575px) {
  .keditor-snippet {
    width: calc(100% - 15px);
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  .keditor-snippet {
    width: calc(50% - 15px);
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .keditor-snippet {
    width: calc(100% / 3 - 15px);
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .keditor-snippet {
    width: calc(25% - 15px);
  }
}
@media (min-width: 1200px) and (max-width: 1499px) {
  .keditor-snippet {
    width: calc(20% - 15px);
  }
}
@media (min-width: 1500px) {
  .keditor-snippet {
    width: calc(100% / 6 - 15px);
  }
}
/* ==================================================================================
   Modal
   ================================================================================== */
.keditor-modal {
  display: none;
  position: fixed;
  z-index: 99999;
  top: -100%;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  transition: all 0.3s;
  opacity: 0;
}
.keditor-modal.showed {
  top: 0;
  opacity: 1;
}
.keditor-modal-header {
  background: #fff;
  border-bottom: 1px solid #ddd;
  position: relative;
  padding: 15px;
  z-index: 2;
}
.keditor-modal-header .keditor-modal-title {
  font-size: 18px;
  line-height: 1.4;
  margin: 0;
  color: #333;
  font-weight: 500;
}
.keditor-modal-header .keditor-modal-close {
  border: 0;
  background: 0;
  position: absolute;
  font-size: 20px;
  color: #ccc;
  cursor: pointer;
  right: 10px;
  top: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  margin-top: -16px;
  padding: 0;
  font-weight: bold;
}
.keditor-modal-header .keditor-modal-close:hover {
  color: #aaa;
}
.keditor-modal-body {
  height: calc(100% - 56px - 61px);
  position: relative;
  z-index: 1;
}
.keditor-modal-footer {
  background: #fff;
  border-top: 1px solid #ddd;
  text-align: center;
  padding: 15px;
}
.keditor-modal-footer .keditor-btn {
  margin: 0 5px;
}
/* ==================================================================================
   Btn group
   ================================================================================== */
.keditor-btn-group {
  letter-spacing: -1em;
}
.keditor-btn-group .keditor-btn {
  letter-spacing: normal;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.keditor-btn-group .keditor-btn:first-child {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
/* ==================================================================================
   Btn
   ================================================================================== */
.keditor-btn {
  border: 0;
  background: none;
  height: 30px;
  line-height: 29px;
  font-size: 14px;
  padding: 0 15px;
  border-radius: 3px;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
  display: inline-block;
  text-decoration: none !important;
}
.keditor-btn.keditor-btn-default {
  border: 1px solid #ddd;
  background: #fff;
  color: #333;
}
.keditor-btn.keditor-btn-default:hover {
  background: #f2f2f2;
}
.keditor-btn.keditor-btn-default:focus,
.keditor-btn.keditor-btn-default:active {
  border-color: #c9c9c9;
  background: #ebebeb;
}
.keditor-btn.keditor-btn-primary {
  border: 1px solid #333;
  background: #333;
  color: #fff;
}
.keditor-btn.keditor-btn-primary:hover {
  background: #262626;
}
.keditor-btn.keditor-btn-primary:focus,
.keditor-btn.keditor-btn-primary:active {
  border-color: #1f1f1f;
  background: #1f1f1f;
}
/* ==================================================================================
   Toolbar
   ================================================================================== */
.keditor-content-area-toolbar,
.keditor-container-content-toolbar {
  text-align: center;
  margin: 10px 0;
  position: relative;
  z-index: 2;
}
.keditor-content-area-toolbar > *,
.keditor-container-content-toolbar > * {
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  opacity: 0.2;
}
.keditor-content-area-toolbar > *:hover,
.keditor-container-content-toolbar > *:hover {
  opacity: 1;
}
.keditor-toolbar {
  position: absolute;
  display: none;
  z-index: 5;
  font: 14px/1.42857143 "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.keditor-toolbar > a {
  padding: 1px 3px;
  font-size: 12px;
  width: 20px;
  height: 20px;
  display: block;
  text-align: center;
  line-height: 20px;
}
.keditor-toolbar > a .fa {
  line-height: inherit;
}
.keditor-toolbar .btn-container-reposition,
.keditor-toolbar .btn-component-reposition {
  cursor: move;
}
/* ==================================================================================
   Container
   ================================================================================== */
.keditor-container {
  position: relative;
}
.keditor-container:before {
  position: absolute;
  top: -3px;
  right: -3px;
  left: -3px;
  bottom: -3px;
  border: 3px dashed transparent;
  content: " ";
  display: block;
}
.keditor-container > .keditor-toolbar {
  top: -3px;
  left: -39px;
  border: 1px solid #333;
  border-radius: 3px;
  overflow: hidden;
}
.keditor-container > .keditor-toolbar > a {
  background: #333;
  color: #fff;
}
.keditor-container > .keditor-toolbar > a:hover {
  background: #2eb2e4;
}
.keditor-container:hover:before {
  border-color: #b5e4f6;
}
.keditor-container.showed-keditor-toolbar:before {
  border-color: #2eb2e4;
}
.keditor-container.showed-keditor-toolbar > .keditor-toolbar {
  display: block;
}
.keditor-container-content {
  position: relative;
}
.keditor-container-content:before {
  position: absolute;
  top: -1px;
  left: -1px;
  right: -1px;
  bottom: -1px;
  content: " ";
  display: block;
  border: 1px dashed #e0e0e0;
}
.keditor-container-content-inner {
  min-height: 50px !important;
}
/* ==================================================================================
   Component
   ================================================================================== */
.keditor-component {
  position: relative;
  z-index: 1;
}
.keditor-component:before {
  position: absolute;
  top: -2px;
  right: -2px;
  left: -2px;
  bottom: -2px;
  content: " ";
  border: 2px solid rgba(0, 0, 0, 0.5);
  display: none;
  z-index: 1;
}
.keditor-component .keditor-toolbar {
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 0 2px 2px 0;
  text-align: left;
}
.keditor-component .keditor-toolbar > a {
  border: 0;
  background: none;
  color: #fff;
  text-align: center;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  display: inline-block;
}
.keditor-component .keditor-toolbar > a:hover {
  background-color: rgba(255, 255, 255, 0.2);
}
.keditor-component .keditor-component-content {
  position: relative;
  z-index: 2;
}
.keditor-component:hover:before,
.keditor-component.showed-keditor-toolbar:before {
  display: block;
}
.keditor-component.showed-keditor-toolbar .keditor-component-content {
  outline: none !important;
}
.keditor-component:hover {
  z-index: 2;
}
.keditor-component:hover .keditor-toolbar {
  display: block;
}
/* ==================================================================================
   Iframe cover stuffs
   ================================================================================== */
.keditor-iframe-wrapper {
  position: relative;
}
.keditor-iframe-wrapper iframe,
.keditor-iframe-wrapper .keditor-iframe-cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.keditor-iframe-wrapper iframe {
  z-index: -1;
}
.keditor-iframe-wrapper .keditor-iframe-cover {
  z-index: 1;
  background: rgba(0, 0, 0, 0.15);
}
.keditor-iframe-wrapper .keditor-iframe-cover:before {
  display: block;
  content: "Double-click to reveal content";
  color: #fff;
  font-size: 24px;
  position: absolute;
  width: 100%;
  text-align: center;
  padding: 5px;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
  text-shadow: 0 0 3px #000;
}
.keditor-iframe-wrapper.hidden-cover iframe {
  z-index: 0;
}
.keditor-iframe-wrapper.hidden-cover .keditor-iframe-cover {
  display: none;
}
/* ==================================================================================
   Hidden element
   ================================================================================== */
.keditor-hidden-element {
  display: none !important;
}
/* ==================================================================================
   Drag n Drop helper
   ================================================================================== */
.keditor-ui-dragging {
  display: block !important;
  opacity: 0.5 !important;
}
.keditor-ui-dragging .keditor-toolbar {
  display: none !important;
}
.ui-sortable-placeholder.keditor-snippet,
.ui-sortable-placeholder.keditor-container,
.ui-sortable-placeholder.keditor-component {
  background: #b5e4f6 !important;
  visibility: visible !important;
  height: 20px !important;
  margin: 5px 0 !important;
  float: none !important;
  outline: none !important;
  padding: 0 !important;
  opacity: 1 !important;
  border: 2px solid #2eb2e4;
}
.ui-sortable-placeholder.keditor-snippet:before,
.ui-sortable-placeholder.keditor-container:before,
.ui-sortable-placeholder.keditor-component:before,
.ui-sortable-placeholder.keditor-snippet:after,
.ui-sortable-placeholder.keditor-container:after,
.ui-sortable-placeholder.keditor-component:after {
  display: none !important;
}
.ui-sortable-helper.keditor-section {
  background: #ffffff !important;
}
.ui-sortable-helper.keditor-container .keditor-toolbar.keditor-toolbar-container {
  display: block !important;
}
.ui-sortable-helper.keditor-component:before,
.ui-sortable-helper.keditor-component .keditor-toolbar {
  display: block !important;
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc3R5bGVzL2tlZGl0b3IubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoiY3NzL2tlZGl0b3IuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQm9keVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuYm9keS5vcGVuZWQta2VkaXRvci1zaWRlYmFyIC5rZWRpdG9yLWNvbnRlbnQtYXJlYSB7XG4gIG1hcmdpbi1yaWdodDogMjYwcHg7XG59XG5ib2R5Lm9wZW5lZC1rZWRpdG9yLXNpZGViYXIgLmtlZGl0b3Itc2lkZWJhciB7XG4gIHJpZ2h0OiAwO1xufVxuYm9keS5vcGVuZWQtbW9kYWwge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgS2VkaXRvciBVSVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmtlZGl0b3ItdWkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5rZWRpdG9yLXVpLFxuLmtlZGl0b3ItdWk6YmVmb3JlLFxuLmtlZGl0b3ItdWk6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLmtlZGl0b3ItdWkgc21hbGwsXG4ua2VkaXRvci11aSAuc21hbGwge1xuICBmb250LXNpemU6IDg4JTtcbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIElmcmFtZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmtlZGl0b3ItaWZyYW1lLXdyYXBwZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ua2VkaXRvci1pZnJhbWUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MDBweDtcbiAgYm9yZGVyOiAwO1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29udGVudCBhcmVhXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ua2VkaXRvci1jb250ZW50LWFyZWEge1xuICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogODBweCA1MHB4IDMwcHg7XG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTaWRlYmFyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ua2VkaXRvci1zaWRlYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDMxO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IC0zMDBweDtcbiAgd2lkdGg6IDMwMHB4O1xuICBiYWNrZ3JvdW5kOiAjZjBmMGYwO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkZGQ7XG4gIGJveC1zaGFkb3c6IC0xcHggMCA1cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICBvcGFjaXR5OiAwO1xufVxuLmtlZGl0b3Itc2lkZWJhci5vcGVuZWQge1xuICByaWdodDogMDtcbiAgb3BhY2l0eTogMTtcbn1cbi5rZWRpdG9yLWlmcmFtZS13cmFwcGVyIC5rZWRpdG9yLXNpZGViYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4ua2VkaXRvci1zaWRlYmFyLWhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xuICBwYWRkaW5nOiAxMHB4IDMwcHggMTBweCAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ua2VkaXRvci1zaWRlYmFyLWNsb3NlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjY2NjO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA4cHg7XG4gIHJpZ2h0OiA1cHg7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICBmb250LXNpemU6IDE5cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmtlZGl0b3Itc2lkZWJhci1jbG9zZTpob3ZlciB7XG4gIGNvbG9yOiAjYWFhO1xufVxuLmtlZGl0b3Itc2lkZWJhci10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ua2VkaXRvci1zaWRlYmFyLWJvZHkge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDQxcHgpO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbn1cbi5rZWRpdG9yLXNpZGViYXItYm9keSAua2VkaXRvci1zZXR0aW5nLWZvcm0ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuLmtlZGl0b3Itc2lkZWJhci1ib2R5IC5rZWRpdG9yLXNldHRpbmctZm9ybTpiZWZvcmUsXG4ua2VkaXRvci1zaWRlYmFyLWJvZHkgLmtlZGl0b3Itc2V0dGluZy1mb3JtOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xufVxuLmtlZGl0b3Itc2lkZWJhci1ib2R5IC5rZWRpdG9yLXNldHRpbmctZm9ybTphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLmtlZGl0b3Itc2lkZWJhci1ib2R5IC5rZWRpdG9yLXNldHRpbmctZm9ybS5hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFNuaXBwZXRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ua2VkaXRvci1zbmlwcGV0cy13cmFwcGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmtlZGl0b3Itc25pcHBldHMtd3JhcHBlciAua2VkaXRvci1zbmlwcGV0cy1maWx0ZXItd3JhcHBlciB7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0xZW07XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuLmtlZGl0b3Itc25pcHBldHMtd3JhcHBlciAua2VkaXRvci1zbmlwcGV0cy1maWx0ZXItd3JhcHBlciA+ICoge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIGhlaWdodDogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIHBhZGRpbmc6IDAgNXB4O1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xufVxuLmtlZGl0b3Itc25pcHBldHMtd3JhcHBlciAua2VkaXRvci1zbmlwcGV0cy1maWx0ZXItd3JhcHBlciAua2VkaXRvci1zbmlwcGV0cy1maWx0ZXIge1xuICB3aWR0aDogY2FsYyg1MCUgLSA1cHgpO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG4ua2VkaXRvci1zbmlwcGV0cy13cmFwcGVyIC5rZWRpdG9yLXNuaXBwZXRzLWZpbHRlci13cmFwcGVyIC5rZWRpdG9yLXNuaXBwZXRzLXNlYXJjaCB7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDVweCk7XG59XG4ua2VkaXRvci1zbmlwcGV0cy13cmFwcGVyIC5rZWRpdG9yLXNuaXBwZXRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDUwcHgpO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIHBhZGRpbmc6IDE1cHggMCAwIDE1cHg7XG59XG4ua2VkaXRvci1zbmlwcGV0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VlZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIGZsb2F0OiBsZWZ0O1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB3aWR0aDogY2FsYygyNSUgLSAxNXB4KTtcbiAgbWFyZ2luOiAwIDE1cHggMTVweCAwO1xufVxuLmtlZGl0b3Itc25pcHBldCA+IHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5rZWRpdG9yLXNuaXBwZXQgPiBzcGFuIHNwYW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTVweDtcbiAgbGVmdDogMTVweDtcbiAgYm90dG9tOiAxNXB4O1xuICByaWdodDogMTVweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCA1MCUgNTAlIC8gY29udGFpbjtcbn1cbi5rZWRpdG9yLXNuaXBwZXQubm90LW1hdGNoZWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmtlZGl0b3Itc25pcHBldDpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogI2NjYztcbiAgYm94LXNoYWRvdzogMXB4IDFweCAycHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cbi5rZWRpdG9yLXNuaXBwZXQuc2VsZWN0ZWQge1xuICBib3JkZXItY29sb3I6ICMyZWIyZTQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjMmViMmU0IGluc2V0O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIC5rZWRpdG9yLXNuaXBwZXQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNXB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmtlZGl0b3Itc25pcHBldCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMTVweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5rZWRpdG9yLXNuaXBwZXQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzIC0gMTVweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAua2VkaXRvci1zbmlwcGV0IHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxNXB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgYW5kIChtYXgtd2lkdGg6IDE0OTlweCkge1xuICAua2VkaXRvci1zbmlwcGV0IHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxNXB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE1MDBweCkge1xuICAua2VkaXRvci1zbmlwcGV0IHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gNiAtIDE1cHgpO1xuICB9XG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBNb2RhbFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmtlZGl0b3ItbW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5OTk5O1xuICB0b3A6IC0xMDAlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgb3BhY2l0eTogMDtcbn1cbi5rZWRpdG9yLW1vZGFsLnNob3dlZCB7XG4gIHRvcDogMDtcbiAgb3BhY2l0eTogMTtcbn1cbi5rZWRpdG9yLW1vZGFsLWhlYWRlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIHotaW5kZXg6IDI7XG59XG4ua2VkaXRvci1tb2RhbC1oZWFkZXIgLmtlZGl0b3ItbW9kYWwtdGl0bGUge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICMzMzM7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4ua2VkaXRvci1tb2RhbC1oZWFkZXIgLmtlZGl0b3ItbW9kYWwtY2xvc2Uge1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBjb2xvcjogI2NjYztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICByaWdodDogMTBweDtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBtYXJnaW4tdG9wOiAtMTZweDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4ua2VkaXRvci1tb2RhbC1oZWFkZXIgLmtlZGl0b3ItbW9kYWwtY2xvc2U6aG92ZXIge1xuICBjb2xvcjogI2FhYTtcbn1cbi5rZWRpdG9yLW1vZGFsLWJvZHkge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDU2cHggLSA2MXB4KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuLmtlZGl0b3ItbW9kYWwtZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMTVweDtcbn1cbi5rZWRpdG9yLW1vZGFsLWZvb3RlciAua2VkaXRvci1idG4ge1xuICBtYXJnaW46IDAgNXB4O1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQnRuIGdyb3VwXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ua2VkaXRvci1idG4tZ3JvdXAge1xuICBsZXR0ZXItc3BhY2luZzogLTFlbTtcbn1cbi5rZWRpdG9yLWJ0bi1ncm91cCAua2VkaXRvci1idG4ge1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuLmtlZGl0b3ItYnRuLWdyb3VwIC5rZWRpdG9yLWJ0bjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEJ0blxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmtlZGl0b3ItYnRuIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyOXB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiAxcHggMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG4ua2VkaXRvci1idG4ua2VkaXRvci1idG4tZGVmYXVsdCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjMzMzO1xufVxuLmtlZGl0b3ItYnRuLmtlZGl0b3ItYnRuLWRlZmF1bHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xufVxuLmtlZGl0b3ItYnRuLmtlZGl0b3ItYnRuLWRlZmF1bHQ6Zm9jdXMsXG4ua2VkaXRvci1idG4ua2VkaXRvci1idG4tZGVmYXVsdDphY3RpdmUge1xuICBib3JkZXItY29sb3I6ICNjOWM5Yzk7XG4gIGJhY2tncm91bmQ6ICNlYmViZWI7XG59XG4ua2VkaXRvci1idG4ua2VkaXRvci1idG4tcHJpbWFyeSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmtlZGl0b3ItYnRuLmtlZGl0b3ItYnRuLXByaW1hcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMjYyNjI2O1xufVxuLmtlZGl0b3ItYnRuLmtlZGl0b3ItYnRuLXByaW1hcnk6Zm9jdXMsXG4ua2VkaXRvci1idG4ua2VkaXRvci1idG4tcHJpbWFyeTphY3RpdmUge1xuICBib3JkZXItY29sb3I6ICMxZjFmMWY7XG4gIGJhY2tncm91bmQ6ICMxZjFmMWY7XG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUb29sYmFyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ua2VkaXRvci1jb250ZW50LWFyZWEtdG9vbGJhcixcbi5rZWRpdG9yLWNvbnRhaW5lci1jb250ZW50LXRvb2xiYXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMTBweCAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG4ua2VkaXRvci1jb250ZW50LWFyZWEtdG9vbGJhciA+ICosXG4ua2VkaXRvci1jb250YWluZXItY29udGVudC10b29sYmFyID4gKiB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgb3BhY2l0eTogMC4yO1xufVxuLmtlZGl0b3ItY29udGVudC1hcmVhLXRvb2xiYXIgPiAqOmhvdmVyLFxuLmtlZGl0b3ItY29udGFpbmVyLWNvbnRlbnQtdG9vbGJhciA+ICo6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuLmtlZGl0b3ItdG9vbGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogNTtcbiAgZm9udDogMTRweC8xLjQyODU3MTQzIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbn1cbi5rZWRpdG9yLXRvb2xiYXIgPiBhIHtcbiAgcGFkZGluZzogMXB4IDNweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMjBweDtcbn1cbi5rZWRpdG9yLXRvb2xiYXIgPiBhIC5mYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuLmtlZGl0b3ItdG9vbGJhciAuYnRuLWNvbnRhaW5lci1yZXBvc2l0aW9uLFxuLmtlZGl0b3ItdG9vbGJhciAuYnRuLWNvbXBvbmVudC1yZXBvc2l0aW9uIHtcbiAgY3Vyc29yOiBtb3ZlO1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29udGFpbmVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ua2VkaXRvci1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ua2VkaXRvci1jb250YWluZXI6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0zcHg7XG4gIHJpZ2h0OiAtM3B4O1xuICBsZWZ0OiAtM3B4O1xuICBib3R0b206IC0zcHg7XG4gIGJvcmRlcjogM3B4IGRhc2hlZCB0cmFuc3BhcmVudDtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmtlZGl0b3ItY29udGFpbmVyID4gLmtlZGl0b3ItdG9vbGJhciB7XG4gIHRvcDogLTNweDtcbiAgbGVmdDogLTM5cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5rZWRpdG9yLWNvbnRhaW5lciA+IC5rZWRpdG9yLXRvb2xiYXIgPiBhIHtcbiAgYmFja2dyb3VuZDogIzMzMztcbiAgY29sb3I6ICNmZmY7XG59XG4ua2VkaXRvci1jb250YWluZXIgPiAua2VkaXRvci10b29sYmFyID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMyZWIyZTQ7XG59XG4ua2VkaXRvci1jb250YWluZXI6aG92ZXI6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjYjVlNGY2O1xufVxuLmtlZGl0b3ItY29udGFpbmVyLnNob3dlZC1rZWRpdG9yLXRvb2xiYXI6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMmViMmU0O1xufVxuLmtlZGl0b3ItY29udGFpbmVyLnNob3dlZC1rZWRpdG9yLXRvb2xiYXIgPiAua2VkaXRvci10b29sYmFyIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ua2VkaXRvci1jb250YWluZXItY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5rZWRpdG9yLWNvbnRhaW5lci1jb250ZW50OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMXB4O1xuICBsZWZ0OiAtMXB4O1xuICByaWdodDogLTFweDtcbiAgYm90dG9tOiAtMXB4O1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCAjZTBlMGUwO1xufVxuLmtlZGl0b3ItY29udGFpbmVyLWNvbnRlbnQtaW5uZXIge1xuICBtaW4taGVpZ2h0OiA1MHB4ICFpbXBvcnRhbnQ7XG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5rZWRpdG9yLWNvbXBvbmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cbi5rZWRpdG9yLWNvbXBvbmVudDpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTJweDtcbiAgcmlnaHQ6IC0ycHg7XG4gIGxlZnQ6IC0ycHg7XG4gIGJvdHRvbTogLTJweDtcbiAgY29udGVudDogXCIgXCI7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogMTtcbn1cbi5rZWRpdG9yLWNvbXBvbmVudCAua2VkaXRvci10b29sYmFyIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIHBhZGRpbmc6IDAgMnB4IDJweCAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLmtlZGl0b3ItY29tcG9uZW50IC5rZWRpdG9yLXRvb2xiYXIgPiBhIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmtlZGl0b3ItY29tcG9uZW50IC5rZWRpdG9yLXRvb2xiYXIgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuLmtlZGl0b3ItY29tcG9uZW50IC5rZWRpdG9yLWNvbXBvbmVudC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuLmtlZGl0b3ItY29tcG9uZW50OmhvdmVyOmJlZm9yZSxcbi5rZWRpdG9yLWNvbXBvbmVudC5zaG93ZWQta2VkaXRvci10b29sYmFyOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmtlZGl0b3ItY29tcG9uZW50LnNob3dlZC1rZWRpdG9yLXRvb2xiYXIgLmtlZGl0b3ItY29tcG9uZW50LWNvbnRlbnQge1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG4ua2VkaXRvci1jb21wb25lbnQ6aG92ZXIge1xuICB6LWluZGV4OiAyO1xufVxuLmtlZGl0b3ItY29tcG9uZW50OmhvdmVyIC5rZWRpdG9yLXRvb2xiYXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIElmcmFtZSBjb3ZlciBzdHVmZnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5rZWRpdG9yLWlmcmFtZS13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmtlZGl0b3ItaWZyYW1lLXdyYXBwZXIgaWZyYW1lLFxuLmtlZGl0b3ItaWZyYW1lLXdyYXBwZXIgLmtlZGl0b3ItaWZyYW1lLWNvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4ua2VkaXRvci1pZnJhbWUtd3JhcHBlciBpZnJhbWUge1xuICB6LWluZGV4OiAtMTtcbn1cbi5rZWRpdG9yLWlmcmFtZS13cmFwcGVyIC5rZWRpdG9yLWlmcmFtZS1jb3ZlciB7XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG4ua2VkaXRvci1pZnJhbWUtd3JhcHBlciAua2VkaXRvci1pZnJhbWUtY292ZXI6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiRG91YmxlLWNsaWNrIHRvIHJldmVhbCBjb250ZW50XCI7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDI0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogNXB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHRleHQtc2hhZG93OiAwIDAgM3B4ICMwMDA7XG59XG4ua2VkaXRvci1pZnJhbWUtd3JhcHBlci5oaWRkZW4tY292ZXIgaWZyYW1lIHtcbiAgei1pbmRleDogMDtcbn1cbi5rZWRpdG9yLWlmcmFtZS13cmFwcGVyLmhpZGRlbi1jb3ZlciAua2VkaXRvci1pZnJhbWUtY292ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSGlkZGVuIGVsZW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5rZWRpdG9yLWhpZGRlbi1lbGVtZW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRHJhZyBuIERyb3AgaGVscGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ua2VkaXRvci11aS1kcmFnZ2luZyB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDAuNSAhaW1wb3J0YW50O1xufVxuLmtlZGl0b3ItdWktZHJhZ2dpbmcgLmtlZGl0b3ItdG9vbGJhciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi51aS1zb3J0YWJsZS1wbGFjZWhvbGRlci5rZWRpdG9yLXNuaXBwZXQsXG4udWktc29ydGFibGUtcGxhY2Vob2xkZXIua2VkaXRvci1jb250YWluZXIsXG4udWktc29ydGFibGUtcGxhY2Vob2xkZXIua2VkaXRvci1jb21wb25lbnQge1xuICBiYWNrZ3JvdW5kOiAjYjVlNGY2ICFpbXBvcnRhbnQ7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogNXB4IDAgIWltcG9ydGFudDtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAycHggc29saWQgIzJlYjJlNDtcbn1cbi51aS1zb3J0YWJsZS1wbGFjZWhvbGRlci5rZWRpdG9yLXNuaXBwZXQ6YmVmb3JlLFxuLnVpLXNvcnRhYmxlLXBsYWNlaG9sZGVyLmtlZGl0b3ItY29udGFpbmVyOmJlZm9yZSxcbi51aS1zb3J0YWJsZS1wbGFjZWhvbGRlci5rZWRpdG9yLWNvbXBvbmVudDpiZWZvcmUsXG4udWktc29ydGFibGUtcGxhY2Vob2xkZXIua2VkaXRvci1zbmlwcGV0OmFmdGVyLFxuLnVpLXNvcnRhYmxlLXBsYWNlaG9sZGVyLmtlZGl0b3ItY29udGFpbmVyOmFmdGVyLFxuLnVpLXNvcnRhYmxlLXBsYWNlaG9sZGVyLmtlZGl0b3ItY29tcG9uZW50OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnVpLXNvcnRhYmxlLWhlbHBlci5rZWRpdG9yLXNlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG4udWktc29ydGFibGUtaGVscGVyLmtlZGl0b3ItY29udGFpbmVyIC5rZWRpdG9yLXRvb2xiYXIua2VkaXRvci10b29sYmFyLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG4udWktc29ydGFibGUtaGVscGVyLmtlZGl0b3ItY29tcG9uZW50OmJlZm9yZSxcbi51aS1zb3J0YWJsZS1oZWxwZXIua2VkaXRvci1jb21wb25lbnQgLmtlZGl0b3ItdG9vbGJhciB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG4iXSwic291cmNlUm9vdCI6IiJ9*/