@charset "UTF-8";
@-webkit-keyframes passing-through {
  0% {
    opacity: 0;
    -webkit-transform: translateY(40px);
    -moz-transform: translateY(40px);
    -ms-transform: translateY(40px);
    -o-transform: translateY(40px);
    transform: translateY(40px);
  }
  30%, 70% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    -moz-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -o-transform: translateY(0px);
    transform: translateY(0px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-40px);
    -moz-transform: translateY(-40px);
    -ms-transform: translateY(-40px);
    -o-transform: translateY(-40px);
    transform: translateY(-40px);
  }
}
@-moz-keyframes passing-through {
  0% {
    opacity: 0;
    -webkit-transform: translateY(40px);
    -moz-transform: translateY(40px);
    -ms-transform: translateY(40px);
    -o-transform: translateY(40px);
    transform: translateY(40px);
  }
  30%, 70% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    -moz-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -o-transform: translateY(0px);
    transform: translateY(0px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-40px);
    -moz-transform: translateY(-40px);
    -ms-transform: translateY(-40px);
    -o-transform: translateY(-40px);
    transform: translateY(-40px);
  }
}
@keyframes passing-through {
  0% {
    opacity: 0;
    -webkit-transform: translateY(40px);
    -moz-transform: translateY(40px);
    -ms-transform: translateY(40px);
    -o-transform: translateY(40px);
    transform: translateY(40px);
  }
  30%, 70% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    -moz-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -o-transform: translateY(0px);
    transform: translateY(0px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-40px);
    -moz-transform: translateY(-40px);
    -ms-transform: translateY(-40px);
    -o-transform: translateY(-40px);
    transform: translateY(-40px);
  }
}
@-webkit-keyframes slide-in {
  0% {
    opacity: 0;
    -webkit-transform: translateY(40px);
    -moz-transform: translateY(40px);
    -ms-transform: translateY(40px);
    -o-transform: translateY(40px);
    transform: translateY(40px);
  }
  30% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    -moz-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -o-transform: translateY(0px);
    transform: translateY(0px);
  }
}
@-moz-keyframes slide-in {
  0% {
    opacity: 0;
    -webkit-transform: translateY(40px);
    -moz-transform: translateY(40px);
    -ms-transform: translateY(40px);
    -o-transform: translateY(40px);
    transform: translateY(40px);
  }
  30% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    -moz-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -o-transform: translateY(0px);
    transform: translateY(0px);
  }
}
@keyframes slide-in {
  0% {
    opacity: 0;
    -webkit-transform: translateY(40px);
    -moz-transform: translateY(40px);
    -ms-transform: translateY(40px);
    -o-transform: translateY(40px);
    transform: translateY(40px);
  }
  30% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    -moz-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -o-transform: translateY(0px);
    transform: translateY(0px);
  }
}
@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
  10% {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
  }
  20% {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
@-moz-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
  10% {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
  }
  20% {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes pulse {
  0% {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
  10% {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
  }
  20% {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
.dropzone, .dropzone * {
  box-sizing: border-box;
}

.dropzone {
  min-height: 150px;
  border: 2px solid rgba(0, 0, 0, 0.3);
  background: white;
  padding: 20px 20px;
}
.dropzone.dz-clickable {
  cursor: pointer;
}
.dropzone.dz-clickable * {
  cursor: default;
}
.dropzone.dz-clickable .dz-message, .dropzone.dz-clickable .dz-message * {
  cursor: pointer;
}
.dropzone.dz-started .dz-message {
  display: none;
}
.dropzone.dz-drag-hover {
  border-style: solid;
}
.dropzone.dz-drag-hover .dz-message {
  opacity: 0.5;
}
.dropzone .dz-message {
  text-align: center;
  margin: 2em 0;
}
.dropzone .dz-message .dz-button {
  background: none;
  color: inherit;
  border: none;
  padding: 0;
  font: inherit;
  cursor: pointer;
  outline: inherit;
}
.dropzone .dz-preview {
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin: 16px;
  min-height: 100px;
}
.dropzone .dz-preview:hover {
  z-index: 1000;
}
.dropzone .dz-preview:hover .dz-details {
  opacity: 1;
}
.dropzone .dz-preview.dz-file-preview .dz-image {
  border-radius: 20px;
  background: #999;
  background: linear-gradient(to bottom, #eee, #ddd);
}
.dropzone .dz-preview.dz-file-preview .dz-details {
  opacity: 1;
}
.dropzone .dz-preview.dz-image-preview {
  background: white;
}
.dropzone .dz-preview.dz-image-preview .dz-details {
  -webkit-transition: opacity 0.2s linear;
  -moz-transition: opacity 0.2s linear;
  -ms-transition: opacity 0.2s linear;
  -o-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}
.dropzone .dz-preview .dz-remove {
  font-size: 14px;
  text-align: center;
  display: block;
  cursor: pointer;
  border: none;
}
.dropzone .dz-preview .dz-remove:hover {
  text-decoration: underline;
}
.dropzone .dz-preview:hover .dz-details {
  opacity: 1;
}
.dropzone .dz-preview .dz-details {
  z-index: 20;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  font-size: 13px;
  min-width: 100%;
  max-width: 100%;
  padding: 2em 1em;
  text-align: center;
  color: rgba(0, 0, 0, 0.9);
  line-height: 150%;
}
.dropzone .dz-preview .dz-details .dz-size {
  margin-bottom: 1em;
  font-size: 16px;
}
.dropzone .dz-preview .dz-details .dz-filename {
  white-space: nowrap;
}
.dropzone .dz-preview .dz-details .dz-filename:hover span {
  border: 1px solid rgba(200, 200, 200, 0.8);
  background-color: rgba(255, 255, 255, 0.8);
}
.dropzone .dz-preview .dz-details .dz-filename:not(:hover) {
  overflow: hidden;
  text-overflow: ellipsis;
}
.dropzone .dz-preview .dz-details .dz-filename:not(:hover) span {
  border: 1px solid transparent;
}
.dropzone .dz-preview .dz-details .dz-filename span, .dropzone .dz-preview .dz-details .dz-size span {
  background-color: rgba(255, 255, 255, 0.4);
  padding: 0 0.4em;
  border-radius: 3px;
}
.dropzone .dz-preview:hover .dz-image img {
  -webkit-transform: scale(1.05, 1.05);
  -moz-transform: scale(1.05, 1.05);
  -ms-transform: scale(1.05, 1.05);
  -o-transform: scale(1.05, 1.05);
  transform: scale(1.05, 1.05);
  -webkit-filter: blur(8px);
  filter: blur(8px);
}
.dropzone .dz-preview .dz-image {
  border-radius: 20px;
  overflow: hidden;
  width: 120px;
  height: 120px;
  position: relative;
  display: block;
  z-index: 10;
}
.dropzone .dz-preview .dz-image img {
  display: block;
}
.dropzone .dz-preview.dz-success .dz-success-mark {
  -webkit-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
  -moz-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
  -ms-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
  -o-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
  animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
}
.dropzone .dz-preview.dz-error .dz-error-mark {
  opacity: 1;
  -webkit-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
  -moz-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
  -ms-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
  -o-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
  animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
}
.dropzone .dz-preview .dz-success-mark, .dropzone .dz-preview .dz-error-mark {
  pointer-events: none;
  opacity: 0;
  z-index: 500;
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  margin-left: -27px;
  margin-top: -27px;
}
.dropzone .dz-preview .dz-success-mark svg, .dropzone .dz-preview .dz-error-mark svg {
  display: block;
  width: 54px;
  height: 54px;
}
.dropzone .dz-preview.dz-processing .dz-progress {
  opacity: 1;
  -webkit-transition: all 0.2s linear;
  -moz-transition: all 0.2s linear;
  -ms-transition: all 0.2s linear;
  -o-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
.dropzone .dz-preview.dz-complete .dz-progress {
  opacity: 0;
  -webkit-transition: opacity 0.4s ease-in;
  -moz-transition: opacity 0.4s ease-in;
  -ms-transition: opacity 0.4s ease-in;
  -o-transition: opacity 0.4s ease-in;
  transition: opacity 0.4s ease-in;
}
.dropzone .dz-preview:not(.dz-processing) .dz-progress {
  -webkit-animation: pulse 6s ease infinite;
  -moz-animation: pulse 6s ease infinite;
  -ms-animation: pulse 6s ease infinite;
  -o-animation: pulse 6s ease infinite;
  animation: pulse 6s ease infinite;
}
.dropzone .dz-preview .dz-progress {
  opacity: 1;
  z-index: 1000;
  pointer-events: none;
  position: absolute;
  height: 16px;
  left: 50%;
  top: 50%;
  margin-top: -8px;
  width: 80px;
  margin-left: -40px;
  background: rgba(255, 255, 255, 0.9);
  -webkit-transform: scale(1);
  border-radius: 8px;
  overflow: hidden;
}
.dropzone .dz-preview .dz-progress .dz-upload {
  background: #333;
  background: linear-gradient(to bottom, #666, #444);
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0;
  -webkit-transition: width 300ms ease-in-out;
  -moz-transition: width 300ms ease-in-out;
  -ms-transition: width 300ms ease-in-out;
  -o-transition: width 300ms ease-in-out;
  transition: width 300ms ease-in-out;
}
.dropzone .dz-preview.dz-error .dz-error-message {
  display: block;
}
.dropzone .dz-preview.dz-error:hover .dz-error-message {
  opacity: 1;
  pointer-events: auto;
}
.dropzone .dz-preview .dz-error-message {
  pointer-events: none;
  z-index: 1000;
  position: absolute;
  display: block;
  display: none;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -moz-transition: opacity 0.3s ease;
  -ms-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  border-radius: 8px;
  font-size: 13px;
  top: 130px;
  left: -10px;
  width: 140px;
  background: #be2626;
  background: linear-gradient(to bottom, #be2626, #a92222);
  padding: 0.5em 1.2em;
  color: white;
}
.dropzone .dz-preview .dz-error-message:after {
  content: "";
  position: absolute;
  top: -6px;
  left: 64px;
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #be2626;
}

blockquote.error {
  border-left: 5px solid #e51c23;
}

.materialize-red {
  background-color: #e51c23 !important;
}

.materialize-red-text {
  color: #e51c23 !important;
}

.materialize-red.lighten-5 {
  background-color: #fdeaeb !important;
}

.materialize-red-text.text-lighten-5 {
  color: #fdeaeb !important;
}

.materialize-red.lighten-4 {
  background-color: #f8c1c3 !important;
}

.materialize-red-text.text-lighten-4 {
  color: #f8c1c3 !important;
}

.materialize-red.lighten-3 {
  background-color: #f3989b !important;
}

.materialize-red-text.text-lighten-3 {
  color: #f3989b !important;
}

.materialize-red.lighten-2 {
  background-color: #ee6e73 !important;
}

.materialize-red-text.text-lighten-2 {
  color: #ee6e73 !important;
}

.materialize-red.lighten-1 {
  background-color: #ea454b !important;
}

.materialize-red-text.text-lighten-1 {
  color: #ea454b !important;
}

.materialize-red.darken-1 {
  background-color: #d0181e !important;
}

.materialize-red-text.text-darken-1 {
  color: #d0181e !important;
}

.materialize-red.darken-2 {
  background-color: #b9151b !important;
}

.materialize-red-text.text-darken-2 {
  color: #b9151b !important;
}

.materialize-red.darken-3 {
  background-color: #a21318 !important;
}

.materialize-red-text.text-darken-3 {
  color: #a21318 !important;
}

.materialize-red.darken-4 {
  background-color: #8b1014 !important;
}

.materialize-red-text.text-darken-4 {
  color: #8b1014 !important;
}

.red {
  background-color: #F44336 !important;
}

.red-text {
  color: #F44336 !important;
}

.red.lighten-5 {
  background-color: #FFEBEE !important;
}

.red-text.text-lighten-5 {
  color: #FFEBEE !important;
}

.red.lighten-4 {
  background-color: #FFCDD2 !important;
}

.red-text.text-lighten-4 {
  color: #FFCDD2 !important;
}

.red.lighten-3 {
  background-color: #EF9A9A !important;
}

.red-text.text-lighten-3 {
  color: #EF9A9A !important;
}

.red.lighten-2 {
  background-color: #E57373 !important;
}

.red-text.text-lighten-2 {
  color: #E57373 !important;
}

.red.lighten-1 {
  background-color: #EF5350 !important;
}

.red-text.text-lighten-1 {
  color: #EF5350 !important;
}

.red.darken-1 {
  background-color: #E53935 !important;
}

.red-text.text-darken-1 {
  color: #E53935 !important;
}

.red.darken-2 {
  background-color: #D32F2F !important;
}

.red-text.text-darken-2 {
  color: #D32F2F !important;
}

.red.darken-3 {
  background-color: #C62828 !important;
}

.red-text.text-darken-3 {
  color: #C62828 !important;
}

.red.darken-4 {
  background-color: #B71C1C !important;
}

.red-text.text-darken-4 {
  color: #B71C1C !important;
}

.red.accent-1 {
  background-color: #FF8A80 !important;
}

.red-text.text-accent-1 {
  color: #FF8A80 !important;
}

.red.accent-2 {
  background-color: #FF5252 !important;
}

.red-text.text-accent-2 {
  color: #FF5252 !important;
}

.red.accent-3 {
  background-color: #FF1744 !important;
}

.red-text.text-accent-3 {
  color: #FF1744 !important;
}

.red.accent-4 {
  background-color: #D50000 !important;
}

.red-text.text-accent-4 {
  color: #D50000 !important;
}

.pink {
  background-color: #e91e63 !important;
}

.pink-text {
  color: #e91e63 !important;
}

.pink.lighten-5 {
  background-color: #fce4ec !important;
}

.pink-text.text-lighten-5 {
  color: #fce4ec !important;
}

.pink.lighten-4 {
  background-color: #f8bbd0 !important;
}

.pink-text.text-lighten-4 {
  color: #f8bbd0 !important;
}

.pink.lighten-3 {
  background-color: #f48fb1 !important;
}

.pink-text.text-lighten-3 {
  color: #f48fb1 !important;
}

.pink.lighten-2 {
  background-color: #f06292 !important;
}

.pink-text.text-lighten-2 {
  color: #f06292 !important;
}

.pink.lighten-1 {
  background-color: #ec407a !important;
}

.pink-text.text-lighten-1 {
  color: #ec407a !important;
}

.pink.darken-1 {
  background-color: #d81b60 !important;
}

.pink-text.text-darken-1 {
  color: #d81b60 !important;
}

.pink.darken-2 {
  background-color: #c2185b !important;
}

.pink-text.text-darken-2 {
  color: #c2185b !important;
}

.pink.darken-3 {
  background-color: #ad1457 !important;
}

.pink-text.text-darken-3 {
  color: #ad1457 !important;
}

.pink.darken-4 {
  background-color: #880e4f !important;
}

.pink-text.text-darken-4 {
  color: #880e4f !important;
}

.pink.accent-1 {
  background-color: #ff80ab !important;
}

.pink-text.text-accent-1 {
  color: #ff80ab !important;
}

.pink.accent-2 {
  background-color: #ff4081 !important;
}

.pink-text.text-accent-2 {
  color: #ff4081 !important;
}

.pink.accent-3 {
  background-color: #f50057 !important;
}

.pink-text.text-accent-3 {
  color: #f50057 !important;
}

.pink.accent-4 {
  background-color: #c51162 !important;
}

.pink-text.text-accent-4 {
  color: #c51162 !important;
}

.purple {
  background-color: #9c27b0 !important;
}

.purple-text {
  color: #9c27b0 !important;
}

.purple.lighten-5 {
  background-color: #f3e5f5 !important;
}

.purple-text.text-lighten-5 {
  color: #f3e5f5 !important;
}

.purple.lighten-4 {
  background-color: #e1bee7 !important;
}

.purple-text.text-lighten-4 {
  color: #e1bee7 !important;
}

.purple.lighten-3 {
  background-color: #ce93d8 !important;
}

.purple-text.text-lighten-3 {
  color: #ce93d8 !important;
}

.purple.lighten-2 {
  background-color: #ba68c8 !important;
}

.purple-text.text-lighten-2 {
  color: #ba68c8 !important;
}

.purple.lighten-1 {
  background-color: #ab47bc !important;
}

.purple-text.text-lighten-1 {
  color: #ab47bc !important;
}

.purple.darken-1 {
  background-color: #8e24aa !important;
}

.purple-text.text-darken-1 {
  color: #8e24aa !important;
}

.purple.darken-2 {
  background-color: #7b1fa2 !important;
}

.purple-text.text-darken-2 {
  color: #7b1fa2 !important;
}

.purple.darken-3 {
  background-color: #6a1b9a !important;
}

.purple-text.text-darken-3 {
  color: #6a1b9a !important;
}

.purple.darken-4 {
  background-color: #4a148c !important;
}

.purple-text.text-darken-4 {
  color: #4a148c !important;
}

.purple.accent-1 {
  background-color: #ea80fc !important;
}

.purple-text.text-accent-1 {
  color: #ea80fc !important;
}

.purple.accent-2 {
  background-color: #e040fb !important;
}

.purple-text.text-accent-2 {
  color: #e040fb !important;
}

.purple.accent-3 {
  background-color: #d500f9 !important;
}

.purple-text.text-accent-3 {
  color: #d500f9 !important;
}

.purple.accent-4 {
  background-color: #aa00ff !important;
}

.purple-text.text-accent-4 {
  color: #aa00ff !important;
}

.deep-purple {
  background-color: #673ab7 !important;
}

.deep-purple-text {
  color: #673ab7 !important;
}

.deep-purple.lighten-5 {
  background-color: #ede7f6 !important;
}

.deep-purple-text.text-lighten-5 {
  color: #ede7f6 !important;
}

.deep-purple.lighten-4 {
  background-color: #d1c4e9 !important;
}

.deep-purple-text.text-lighten-4 {
  color: #d1c4e9 !important;
}

.deep-purple.lighten-3 {
  background-color: #b39ddb !important;
}

.deep-purple-text.text-lighten-3 {
  color: #b39ddb !important;
}

.deep-purple.lighten-2 {
  background-color: #9575cd !important;
}

.deep-purple-text.text-lighten-2 {
  color: #9575cd !important;
}

.deep-purple.lighten-1 {
  background-color: #7e57c2 !important;
}

.deep-purple-text.text-lighten-1 {
  color: #7e57c2 !important;
}

.deep-purple.darken-1 {
  background-color: #5e35b1 !important;
}

.deep-purple-text.text-darken-1 {
  color: #5e35b1 !important;
}

.deep-purple.darken-2 {
  background-color: #512da8 !important;
}

.deep-purple-text.text-darken-2 {
  color: #512da8 !important;
}

.deep-purple.darken-3 {
  background-color: #4527a0 !important;
}

.deep-purple-text.text-darken-3 {
  color: #4527a0 !important;
}

.deep-purple.darken-4 {
  background-color: #311b92 !important;
}

.deep-purple-text.text-darken-4 {
  color: #311b92 !important;
}

.deep-purple.accent-1 {
  background-color: #b388ff !important;
}

.deep-purple-text.text-accent-1 {
  color: #b388ff !important;
}

.deep-purple.accent-2 {
  background-color: #7c4dff !important;
}

.deep-purple-text.text-accent-2 {
  color: #7c4dff !important;
}

.deep-purple.accent-3 {
  background-color: #651fff !important;
}

.deep-purple-text.text-accent-3 {
  color: #651fff !important;
}

.deep-purple.accent-4 {
  background-color: #6200ea !important;
}

.deep-purple-text.text-accent-4 {
  color: #6200ea !important;
}

.indigo {
  background-color: #3f51b5 !important;
}

.indigo-text {
  color: #3f51b5 !important;
}

.indigo.lighten-5 {
  background-color: #e8eaf6 !important;
}

.indigo-text.text-lighten-5 {
  color: #e8eaf6 !important;
}

.indigo.lighten-4 {
  background-color: #c5cae9 !important;
}

.indigo-text.text-lighten-4 {
  color: #c5cae9 !important;
}

.indigo.lighten-3 {
  background-color: #9fa8da !important;
}

.indigo-text.text-lighten-3 {
  color: #9fa8da !important;
}

.indigo.lighten-2 {
  background-color: #7986cb !important;
}

.indigo-text.text-lighten-2 {
  color: #7986cb !important;
}

.indigo.lighten-1 {
  background-color: #5c6bc0 !important;
}

.indigo-text.text-lighten-1 {
  color: #5c6bc0 !important;
}

.indigo.darken-1 {
  background-color: #3949ab !important;
}

.indigo-text.text-darken-1 {
  color: #3949ab !important;
}

.indigo.darken-2 {
  background-color: #303f9f !important;
}

.indigo-text.text-darken-2 {
  color: #303f9f !important;
}

.indigo.darken-3 {
  background-color: #283593 !important;
}

.indigo-text.text-darken-3 {
  color: #283593 !important;
}

.indigo.darken-4 {
  background-color: #1a237e !important;
}

.indigo-text.text-darken-4 {
  color: #1a237e !important;
}

.indigo.accent-1 {
  background-color: #8c9eff !important;
}

.indigo-text.text-accent-1 {
  color: #8c9eff !important;
}

.indigo.accent-2 {
  background-color: #536dfe !important;
}

.indigo-text.text-accent-2 {
  color: #536dfe !important;
}

.indigo.accent-3 {
  background-color: #3d5afe !important;
}

.indigo-text.text-accent-3 {
  color: #3d5afe !important;
}

.indigo.accent-4 {
  background-color: #304ffe !important;
}

.indigo-text.text-accent-4 {
  color: #304ffe !important;
}

.blue {
  background-color: #2196F3 !important;
}

.blue-text {
  color: #2196F3 !important;
}

.blue.lighten-5 {
  background-color: #E3F2FD !important;
}

.blue-text.text-lighten-5 {
  color: #E3F2FD !important;
}

.blue.lighten-4 {
  background-color: #BBDEFB !important;
}

.blue-text.text-lighten-4 {
  color: #BBDEFB !important;
}

.blue.lighten-3 {
  background-color: #90CAF9 !important;
}

.blue-text.text-lighten-3 {
  color: #90CAF9 !important;
}

.blue.lighten-2 {
  background-color: #64B5F6 !important;
}

.blue-text.text-lighten-2 {
  color: #64B5F6 !important;
}

.blue.lighten-1 {
  background-color: #42A5F5 !important;
}

.blue-text.text-lighten-1 {
  color: #42A5F5 !important;
}

.blue.darken-1 {
  background-color: #1E88E5 !important;
}

.blue-text.text-darken-1 {
  color: #1E88E5 !important;
}

.blue.darken-2 {
  background-color: #1976D2 !important;
}

.blue-text.text-darken-2 {
  color: #1976D2 !important;
}

.blue.darken-3 {
  background-color: #1565C0 !important;
}

.blue-text.text-darken-3 {
  color: #1565C0 !important;
}

.blue.darken-4 {
  background-color: #0D47A1 !important;
}

.blue-text.text-darken-4 {
  color: #0D47A1 !important;
}

.blue.accent-1 {
  background-color: #82B1FF !important;
}

.blue-text.text-accent-1 {
  color: #82B1FF !important;
}

.blue.accent-2 {
  background-color: #448AFF !important;
}

.blue-text.text-accent-2 {
  color: #448AFF !important;
}

.blue.accent-3 {
  background-color: #2979FF !important;
}

.blue-text.text-accent-3 {
  color: #2979FF !important;
}

.blue.accent-4 {
  background-color: #2962FF !important;
}

.blue-text.text-accent-4 {
  color: #2962FF !important;
}

.light-blue {
  background-color: #03a9f4 !important;
}

.light-blue-text {
  color: #03a9f4 !important;
}

.light-blue.lighten-5 {
  background-color: #e1f5fe !important;
}

.light-blue-text.text-lighten-5 {
  color: #e1f5fe !important;
}

.light-blue.lighten-4 {
  background-color: #b3e5fc !important;
}

.light-blue-text.text-lighten-4 {
  color: #b3e5fc !important;
}

.light-blue.lighten-3 {
  background-color: #81d4fa !important;
}

.light-blue-text.text-lighten-3 {
  color: #81d4fa !important;
}

.light-blue.lighten-2 {
  background-color: #4fc3f7 !important;
}

.light-blue-text.text-lighten-2 {
  color: #4fc3f7 !important;
}

.light-blue.lighten-1 {
  background-color: #29b6f6 !important;
}

.light-blue-text.text-lighten-1 {
  color: #29b6f6 !important;
}

.light-blue.darken-1 {
  background-color: #039be5 !important;
}

.light-blue-text.text-darken-1 {
  color: #039be5 !important;
}

.light-blue.darken-2 {
  background-color: #0288d1 !important;
}

.light-blue-text.text-darken-2 {
  color: #0288d1 !important;
}

.light-blue.darken-3 {
  background-color: #0277bd !important;
}

.light-blue-text.text-darken-3 {
  color: #0277bd !important;
}

.light-blue.darken-4 {
  background-color: #01579b !important;
}

.light-blue-text.text-darken-4 {
  color: #01579b !important;
}

.light-blue.accent-1 {
  background-color: #80d8ff !important;
}

.light-blue-text.text-accent-1 {
  color: #80d8ff !important;
}

.light-blue.accent-2 {
  background-color: #40c4ff !important;
}

.light-blue-text.text-accent-2 {
  color: #40c4ff !important;
}

.light-blue.accent-3 {
  background-color: #00b0ff !important;
}

.light-blue-text.text-accent-3 {
  color: #00b0ff !important;
}

.light-blue.accent-4 {
  background-color: #0091ea !important;
}

.light-blue-text.text-accent-4 {
  color: #0091ea !important;
}

.cyan {
  background-color: #00bcd4 !important;
}

.cyan-text {
  color: #00bcd4 !important;
}

.cyan.lighten-5 {
  background-color: #e0f7fa !important;
}

.cyan-text.text-lighten-5 {
  color: #e0f7fa !important;
}

.cyan.lighten-4 {
  background-color: #b2ebf2 !important;
}

.cyan-text.text-lighten-4 {
  color: #b2ebf2 !important;
}

.cyan.lighten-3 {
  background-color: #80deea !important;
}

.cyan-text.text-lighten-3 {
  color: #80deea !important;
}

.cyan.lighten-2 {
  background-color: #4dd0e1 !important;
}

.cyan-text.text-lighten-2 {
  color: #4dd0e1 !important;
}

.cyan.lighten-1 {
  background-color: #26c6da !important;
}

.cyan-text.text-lighten-1 {
  color: #26c6da !important;
}

.cyan.darken-1 {
  background-color: #00acc1 !important;
}

.cyan-text.text-darken-1 {
  color: #00acc1 !important;
}

.cyan.darken-2 {
  background-color: #0097a7 !important;
}

.cyan-text.text-darken-2 {
  color: #0097a7 !important;
}

.cyan.darken-3 {
  background-color: #00838f !important;
}

.cyan-text.text-darken-3 {
  color: #00838f !important;
}

.cyan.darken-4 {
  background-color: #006064 !important;
}

.cyan-text.text-darken-4 {
  color: #006064 !important;
}

.cyan.accent-1 {
  background-color: #84ffff !important;
}

.cyan-text.text-accent-1 {
  color: #84ffff !important;
}

.cyan.accent-2 {
  background-color: #18ffff !important;
}

.cyan-text.text-accent-2 {
  color: #18ffff !important;
}

.cyan.accent-3 {
  background-color: #00e5ff !important;
}

.cyan-text.text-accent-3 {
  color: #00e5ff !important;
}

.cyan.accent-4 {
  background-color: #00b8d4 !important;
}

.cyan-text.text-accent-4 {
  color: #00b8d4 !important;
}

.teal {
  background-color: #009688 !important;
}

.teal-text {
  color: #009688 !important;
}

.teal.lighten-5 {
  background-color: #e0f2f1 !important;
}

.teal-text.text-lighten-5 {
  color: #e0f2f1 !important;
}

.teal.lighten-4 {
  background-color: #b2dfdb !important;
}

.teal-text.text-lighten-4 {
  color: #b2dfdb !important;
}

.teal.lighten-3 {
  background-color: #80cbc4 !important;
}

.teal-text.text-lighten-3 {
  color: #80cbc4 !important;
}

.teal.lighten-2 {
  background-color: #4db6ac !important;
}

.teal-text.text-lighten-2 {
  color: #4db6ac !important;
}

.teal.lighten-1 {
  background-color: #26a69a !important;
}

.teal-text.text-lighten-1 {
  color: #26a69a !important;
}

.teal.darken-1 {
  background-color: #00897b !important;
}

.teal-text.text-darken-1 {
  color: #00897b !important;
}

.teal.darken-2 {
  background-color: #00796b !important;
}

.teal-text.text-darken-2 {
  color: #00796b !important;
}

.teal.darken-3 {
  background-color: #00695c !important;
}

.teal-text.text-darken-3 {
  color: #00695c !important;
}

.teal.darken-4 {
  background-color: #004d40 !important;
}

.teal-text.text-darken-4 {
  color: #004d40 !important;
}

.teal.accent-1 {
  background-color: #a7ffeb !important;
}

.teal-text.text-accent-1 {
  color: #a7ffeb !important;
}

.teal.accent-2 {
  background-color: #64ffda !important;
}

.teal-text.text-accent-2 {
  color: #64ffda !important;
}

.teal.accent-3 {
  background-color: #1de9b6 !important;
}

.teal-text.text-accent-3 {
  color: #1de9b6 !important;
}

.teal.accent-4 {
  background-color: #00bfa5 !important;
}

.teal-text.text-accent-4 {
  color: #00bfa5 !important;
}

.green {
  background-color: #4CAF50 !important;
}

.green-text {
  color: #4CAF50 !important;
}

.green.lighten-5 {
  background-color: #E8F5E9 !important;
}

.green-text.text-lighten-5 {
  color: #E8F5E9 !important;
}

.green.lighten-4 {
  background-color: #C8E6C9 !important;
}

.green-text.text-lighten-4 {
  color: #C8E6C9 !important;
}

.green.lighten-3 {
  background-color: #A5D6A7 !important;
}

.green-text.text-lighten-3 {
  color: #A5D6A7 !important;
}

.green.lighten-2 {
  background-color: #81C784 !important;
}

.green-text.text-lighten-2 {
  color: #81C784 !important;
}

.green.lighten-1 {
  background-color: #66BB6A !important;
}

.green-text.text-lighten-1 {
  color: #66BB6A !important;
}

.green.darken-1 {
  background-color: #43A047 !important;
}

.green-text.text-darken-1 {
  color: #43A047 !important;
}

.green.darken-2 {
  background-color: #388E3C !important;
}

.green-text.text-darken-2 {
  color: #388E3C !important;
}

.green.darken-3 {
  background-color: #2E7D32 !important;
}

.green-text.text-darken-3 {
  color: #2E7D32 !important;
}

.green.darken-4 {
  background-color: #1B5E20 !important;
}

.green-text.text-darken-4 {
  color: #1B5E20 !important;
}

.green.accent-1 {
  background-color: #B9F6CA !important;
}

.green-text.text-accent-1 {
  color: #B9F6CA !important;
}

.green.accent-2 {
  background-color: #69F0AE !important;
}

.green-text.text-accent-2 {
  color: #69F0AE !important;
}

.green.accent-3 {
  background-color: #00E676 !important;
}

.green-text.text-accent-3 {
  color: #00E676 !important;
}

.green.accent-4 {
  background-color: #00C853 !important;
}

.green-text.text-accent-4 {
  color: #00C853 !important;
}

.light-green {
  background-color: #8bc34a !important;
}

.light-green-text {
  color: #8bc34a !important;
}

.light-green.lighten-5 {
  background-color: #f1f8e9 !important;
}

.light-green-text.text-lighten-5 {
  color: #f1f8e9 !important;
}

.light-green.lighten-4 {
  background-color: #dcedc8 !important;
}

.light-green-text.text-lighten-4 {
  color: #dcedc8 !important;
}

.light-green.lighten-3 {
  background-color: #c5e1a5 !important;
}

.light-green-text.text-lighten-3 {
  color: #c5e1a5 !important;
}

.light-green.lighten-2 {
  background-color: #aed581 !important;
}

.light-green-text.text-lighten-2 {
  color: #aed581 !important;
}

.light-green.lighten-1 {
  background-color: #9ccc65 !important;
}

.light-green-text.text-lighten-1 {
  color: #9ccc65 !important;
}

.light-green.darken-1 {
  background-color: #7cb342 !important;
}

.light-green-text.text-darken-1 {
  color: #7cb342 !important;
}

.light-green.darken-2 {
  background-color: #689f38 !important;
}

.light-green-text.text-darken-2 {
  color: #689f38 !important;
}

.light-green.darken-3 {
  background-color: #558b2f !important;
}

.light-green-text.text-darken-3 {
  color: #558b2f !important;
}

.light-green.darken-4 {
  background-color: #33691e !important;
}

.light-green-text.text-darken-4 {
  color: #33691e !important;
}

.light-green.accent-1 {
  background-color: #ccff90 !important;
}

.light-green-text.text-accent-1 {
  color: #ccff90 !important;
}

.light-green.accent-2 {
  background-color: #b2ff59 !important;
}

.light-green-text.text-accent-2 {
  color: #b2ff59 !important;
}

.light-green.accent-3 {
  background-color: #76ff03 !important;
}

.light-green-text.text-accent-3 {
  color: #76ff03 !important;
}

.light-green.accent-4 {
  background-color: #64dd17 !important;
}

.light-green-text.text-accent-4 {
  color: #64dd17 !important;
}

.lime {
  background-color: #cddc39 !important;
}

.lime-text {
  color: #cddc39 !important;
}

.lime.lighten-5 {
  background-color: #f9fbe7 !important;
}

.lime-text.text-lighten-5 {
  color: #f9fbe7 !important;
}

.lime.lighten-4 {
  background-color: #f0f4c3 !important;
}

.lime-text.text-lighten-4 {
  color: #f0f4c3 !important;
}

.lime.lighten-3 {
  background-color: #e6ee9c !important;
}

.lime-text.text-lighten-3 {
  color: #e6ee9c !important;
}

.lime.lighten-2 {
  background-color: #dce775 !important;
}

.lime-text.text-lighten-2 {
  color: #dce775 !important;
}

.lime.lighten-1 {
  background-color: #d4e157 !important;
}

.lime-text.text-lighten-1 {
  color: #d4e157 !important;
}

.lime.darken-1 {
  background-color: #c0ca33 !important;
}

.lime-text.text-darken-1 {
  color: #c0ca33 !important;
}

.lime.darken-2 {
  background-color: #afb42b !important;
}

.lime-text.text-darken-2 {
  color: #afb42b !important;
}

.lime.darken-3 {
  background-color: #9e9d24 !important;
}

.lime-text.text-darken-3 {
  color: #9e9d24 !important;
}

.lime.darken-4 {
  background-color: #827717 !important;
}

.lime-text.text-darken-4 {
  color: #827717 !important;
}

.lime.accent-1 {
  background-color: #f4ff81 !important;
}

.lime-text.text-accent-1 {
  color: #f4ff81 !important;
}

.lime.accent-2 {
  background-color: #eeff41 !important;
}

.lime-text.text-accent-2 {
  color: #eeff41 !important;
}

.lime.accent-3 {
  background-color: #c6ff00 !important;
}

.lime-text.text-accent-3 {
  color: #c6ff00 !important;
}

.lime.accent-4 {
  background-color: #aeea00 !important;
}

.lime-text.text-accent-4 {
  color: #aeea00 !important;
}

.yellow {
  background-color: #ffeb3b !important;
}

.yellow-text {
  color: #ffeb3b !important;
}

.yellow.lighten-5 {
  background-color: #fffde7 !important;
}

.yellow-text.text-lighten-5 {
  color: #fffde7 !important;
}

.yellow.lighten-4 {
  background-color: #fff9c4 !important;
}

.yellow-text.text-lighten-4 {
  color: #fff9c4 !important;
}

.yellow.lighten-3 {
  background-color: #fff59d !important;
}

.yellow-text.text-lighten-3 {
  color: #fff59d !important;
}

.yellow.lighten-2 {
  background-color: #fff176 !important;
}

.yellow-text.text-lighten-2 {
  color: #fff176 !important;
}

.yellow.lighten-1 {
  background-color: #ffee58 !important;
}

.yellow-text.text-lighten-1 {
  color: #ffee58 !important;
}

.yellow.darken-1 {
  background-color: #fdd835 !important;
}

.yellow-text.text-darken-1 {
  color: #fdd835 !important;
}

.yellow.darken-2 {
  background-color: #fbc02d !important;
}

.yellow-text.text-darken-2 {
  color: #fbc02d !important;
}

.yellow.darken-3 {
  background-color: #f9a825 !important;
}

.yellow-text.text-darken-3 {
  color: #f9a825 !important;
}

.yellow.darken-4 {
  background-color: #f57f17 !important;
}

.yellow-text.text-darken-4 {
  color: #f57f17 !important;
}

.yellow.accent-1 {
  background-color: #ffff8d !important;
}

.yellow-text.text-accent-1 {
  color: #ffff8d !important;
}

.yellow.accent-2 {
  background-color: #ffff00 !important;
}

.yellow-text.text-accent-2 {
  color: #ffff00 !important;
}

.yellow.accent-3 {
  background-color: #ffea00 !important;
}

.yellow-text.text-accent-3 {
  color: #ffea00 !important;
}

.yellow.accent-4 {
  background-color: #ffd600 !important;
}

.yellow-text.text-accent-4 {
  color: #ffd600 !important;
}

.amber {
  background-color: #ffc107 !important;
}

.amber-text {
  color: #ffc107 !important;
}

.amber.lighten-5 {
  background-color: #fff8e1 !important;
}

.amber-text.text-lighten-5 {
  color: #fff8e1 !important;
}

.amber.lighten-4 {
  background-color: #ffecb3 !important;
}

.amber-text.text-lighten-4 {
  color: #ffecb3 !important;
}

.amber.lighten-3 {
  background-color: #ffe082 !important;
}

.amber-text.text-lighten-3 {
  color: #ffe082 !important;
}

.amber.lighten-2 {
  background-color: #ffd54f !important;
}

.amber-text.text-lighten-2 {
  color: #ffd54f !important;
}

.amber.lighten-1 {
  background-color: #ffca28 !important;
}

.amber-text.text-lighten-1 {
  color: #ffca28 !important;
}

.amber.darken-1 {
  background-color: #ffb300 !important;
}

.amber-text.text-darken-1 {
  color: #ffb300 !important;
}

.amber.darken-2 {
  background-color: #ffa000 !important;
}

.amber-text.text-darken-2 {
  color: #ffa000 !important;
}

.amber.darken-3 {
  background-color: #ff8f00 !important;
}

.amber-text.text-darken-3 {
  color: #ff8f00 !important;
}

.amber.darken-4 {
  background-color: #ff6f00 !important;
}

.amber-text.text-darken-4 {
  color: #ff6f00 !important;
}

.amber.accent-1 {
  background-color: #ffe57f !important;
}

.amber-text.text-accent-1 {
  color: #ffe57f !important;
}

.amber.accent-2 {
  background-color: #ffd740 !important;
}

.amber-text.text-accent-2 {
  color: #ffd740 !important;
}

.amber.accent-3 {
  background-color: #ffc400 !important;
}

.amber-text.text-accent-3 {
  color: #ffc400 !important;
}

.amber.accent-4 {
  background-color: #ffab00 !important;
}

.amber-text.text-accent-4 {
  color: #ffab00 !important;
}

.orange {
  background-color: #ff9800 !important;
}

.orange-text {
  color: #ff9800 !important;
}

.orange.lighten-5 {
  background-color: #fff3e0 !important;
}

.orange-text.text-lighten-5 {
  color: #fff3e0 !important;
}

.orange.lighten-4 {
  background-color: #ffe0b2 !important;
}

.orange-text.text-lighten-4 {
  color: #ffe0b2 !important;
}

.orange.lighten-3 {
  background-color: #ffcc80 !important;
}

.orange-text.text-lighten-3 {
  color: #ffcc80 !important;
}

.orange.lighten-2 {
  background-color: #ffb74d !important;
}

.orange-text.text-lighten-2 {
  color: #ffb74d !important;
}

.orange.lighten-1 {
  background-color: #ffa726 !important;
}

.orange-text.text-lighten-1 {
  color: #ffa726 !important;
}

.orange.darken-1 {
  background-color: #fb8c00 !important;
}

.orange-text.text-darken-1 {
  color: #fb8c00 !important;
}

.orange.darken-2 {
  background-color: #f57c00 !important;
}

.orange-text.text-darken-2 {
  color: #f57c00 !important;
}

.orange.darken-3 {
  background-color: #ef6c00 !important;
}

.orange-text.text-darken-3 {
  color: #ef6c00 !important;
}

.orange.darken-4 {
  background-color: #e65100 !important;
}

.orange-text.text-darken-4 {
  color: #e65100 !important;
}

.orange.accent-1 {
  background-color: #ffd180 !important;
}

.orange-text.text-accent-1 {
  color: #ffd180 !important;
}

.orange.accent-2 {
  background-color: #ffab40 !important;
}

.orange-text.text-accent-2 {
  color: #ffab40 !important;
}

.orange.accent-3 {
  background-color: #ff9100 !important;
}

.orange-text.text-accent-3 {
  color: #ff9100 !important;
}

.orange.accent-4 {
  background-color: #ff6d00 !important;
}

.orange-text.text-accent-4 {
  color: #ff6d00 !important;
}

.deep-orange {
  background-color: #ff5722 !important;
}

.deep-orange-text {
  color: #ff5722 !important;
}

.deep-orange.lighten-5 {
  background-color: #fbe9e7 !important;
}

.deep-orange-text.text-lighten-5 {
  color: #fbe9e7 !important;
}

.deep-orange.lighten-4 {
  background-color: #ffccbc !important;
}

.deep-orange-text.text-lighten-4 {
  color: #ffccbc !important;
}

.deep-orange.lighten-3 {
  background-color: #ffab91 !important;
}

.deep-orange-text.text-lighten-3 {
  color: #ffab91 !important;
}

.deep-orange.lighten-2 {
  background-color: #ff8a65 !important;
}

.deep-orange-text.text-lighten-2 {
  color: #ff8a65 !important;
}

.deep-orange.lighten-1 {
  background-color: #ff7043 !important;
}

.deep-orange-text.text-lighten-1 {
  color: #ff7043 !important;
}

.deep-orange.darken-1 {
  background-color: #f4511e !important;
}

.deep-orange-text.text-darken-1 {
  color: #f4511e !important;
}

.deep-orange.darken-2 {
  background-color: #e64a19 !important;
}

.deep-orange-text.text-darken-2 {
  color: #e64a19 !important;
}

.deep-orange.darken-3 {
  background-color: #d84315 !important;
}

.deep-orange-text.text-darken-3 {
  color: #d84315 !important;
}

.deep-orange.darken-4 {
  background-color: #bf360c !important;
}

.deep-orange-text.text-darken-4 {
  color: #bf360c !important;
}

.deep-orange.accent-1 {
  background-color: #ff9e80 !important;
}

.deep-orange-text.text-accent-1 {
  color: #ff9e80 !important;
}

.deep-orange.accent-2 {
  background-color: #ff6e40 !important;
}

.deep-orange-text.text-accent-2 {
  color: #ff6e40 !important;
}

.deep-orange.accent-3 {
  background-color: #ff3d00 !important;
}

.deep-orange-text.text-accent-3 {
  color: #ff3d00 !important;
}

.deep-orange.accent-4 {
  background-color: #dd2c00 !important;
}

.deep-orange-text.text-accent-4 {
  color: #dd2c00 !important;
}

.brown {
  background-color: #795548 !important;
}

.brown-text {
  color: #795548 !important;
}

.brown.lighten-5 {
  background-color: #efebe9 !important;
}

.brown-text.text-lighten-5 {
  color: #efebe9 !important;
}

.brown.lighten-4 {
  background-color: #d7ccc8 !important;
}

.brown-text.text-lighten-4 {
  color: #d7ccc8 !important;
}

.brown.lighten-3 {
  background-color: #bcaaa4 !important;
}

.brown-text.text-lighten-3 {
  color: #bcaaa4 !important;
}

.brown.lighten-2 {
  background-color: #a1887f !important;
}

.brown-text.text-lighten-2 {
  color: #a1887f !important;
}

.brown.lighten-1 {
  background-color: #8d6e63 !important;
}

.brown-text.text-lighten-1 {
  color: #8d6e63 !important;
}

.brown.darken-1 {
  background-color: #6d4c41 !important;
}

.brown-text.text-darken-1 {
  color: #6d4c41 !important;
}

.brown.darken-2 {
  background-color: #5d4037 !important;
}

.brown-text.text-darken-2 {
  color: #5d4037 !important;
}

.brown.darken-3 {
  background-color: #4e342e !important;
}

.brown-text.text-darken-3 {
  color: #4e342e !important;
}

.brown.darken-4 {
  background-color: #3e2723 !important;
}

.brown-text.text-darken-4 {
  color: #3e2723 !important;
}

.blue-grey {
  background-color: #607d8b !important;
}

.blue-grey-text {
  color: #607d8b !important;
}

.blue-grey.lighten-5 {
  background-color: #eceff1 !important;
}

.blue-grey-text.text-lighten-5 {
  color: #eceff1 !important;
}

.blue-grey.lighten-4 {
  background-color: #cfd8dc !important;
}

.blue-grey-text.text-lighten-4 {
  color: #cfd8dc !important;
}

.blue-grey.lighten-3 {
  background-color: #b0bec5 !important;
}

.blue-grey-text.text-lighten-3 {
  color: #b0bec5 !important;
}

.blue-grey.lighten-2 {
  background-color: #90a4ae !important;
}

.blue-grey-text.text-lighten-2 {
  color: #90a4ae !important;
}

.blue-grey.lighten-1 {
  background-color: #78909c !important;
}

.blue-grey-text.text-lighten-1 {
  color: #78909c !important;
}

.blue-grey.darken-1 {
  background-color: #546e7a !important;
}

.blue-grey-text.text-darken-1 {
  color: #546e7a !important;
}

.blue-grey.darken-2 {
  background-color: #455a64 !important;
}

.blue-grey-text.text-darken-2 {
  color: #455a64 !important;
}

.blue-grey.darken-3 {
  background-color: #37474f !important;
}

.blue-grey-text.text-darken-3 {
  color: #37474f !important;
}

.blue-grey.darken-4 {
  background-color: #263238 !important;
}

.blue-grey-text.text-darken-4 {
  color: #263238 !important;
}

.grey {
  background-color: #9e9e9e !important;
}

.grey-text {
  color: #9e9e9e !important;
}

.grey.lighten-5 {
  background-color: #fafafa !important;
}

.grey-text.text-lighten-5 {
  color: #fafafa !important;
}

.grey.lighten-4 {
  background-color: #f5f5f5 !important;
}

.grey-text.text-lighten-4 {
  color: #f5f5f5 !important;
}

.grey.lighten-3 {
  background-color: #eeeeee !important;
}

.grey-text.text-lighten-3 {
  color: #eeeeee !important;
}

.grey.lighten-2 {
  background-color: #e0e0e0 !important;
}

.grey-text.text-lighten-2 {
  color: #e0e0e0 !important;
}

.grey.lighten-1 {
  background-color: #bdbdbd !important;
}

.grey-text.text-lighten-1 {
  color: #bdbdbd !important;
}

.grey.darken-1 {
  background-color: #757575 !important;
}

.grey-text.text-darken-1 {
  color: #757575 !important;
}

.grey.darken-2 {
  background-color: #616161 !important;
}

.grey-text.text-darken-2 {
  color: #616161 !important;
}

.grey.darken-3 {
  background-color: #424242 !important;
}

.grey-text.text-darken-3 {
  color: #424242 !important;
}

.grey.darken-4 {
  background-color: #212121 !important;
}

.grey-text.text-darken-4 {
  color: #212121 !important;
}

.black {
  background-color: #000000 !important;
}

.black-text {
  color: #000000 !important;
}

.white {
  background-color: #FFFFFF !important;
}

.white-text {
  color: #FFFFFF !important;
}

.transparent {
  background-color: transparent !important;
}

.transparent-text {
  color: transparent !important;
}

/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none;
}

html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

button,
input,
optgroup,
select,
textarea {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}

ul:not(.browser-default) {
  padding-left: 0;
  list-style-type: none;
}
ul:not(.browser-default) > li {
  list-style-type: none;
}

a {
  color: #039be5;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

.valign-wrapper {
  display: flex;
  align-items: center;
}

.clearfix {
  clear: both;
}

.z-depth-0, .sidenav, nav {
  box-shadow: none !important;
}

/* 2dp elevation modified*/
.z-depth-1, .sidenav, .collapsible, .dropdown-content, .btn-floating, .btn, .btn-small, .btn-large, .toast, .card, .card-panel, nav {
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}

.z-depth-1-half, .btn-floating:hover, .btn:hover, .btn-small:hover, .btn-large:hover {
  box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
}

/* 6dp elevation modified*/
.z-depth-2 {
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
}

/* 12dp elevation modified*/
.z-depth-3 {
  box-shadow: 0 8px 17px 2px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
}

/* 16dp elevation */
.z-depth-4 {
  box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -7px rgba(0, 0, 0, 0.2);
}

/* 24dp elevation */
.z-depth-5, .modal {
  box-shadow: 0 24px 38px 3px rgba(0, 0, 0, 0.14), 0 9px 46px 8px rgba(0, 0, 0, 0.12), 0 11px 15px -7px rgba(0, 0, 0, 0.2);
}

.hoverable {
  transition: box-shadow 0.25s;
}
.hoverable:hover {
  box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.divider {
  height: 1px;
  overflow: hidden;
  background-color: #e0e0e0;
}

blockquote {
  margin: 20px 0;
  padding-left: 1.5rem;
  border-left: 5px solid #29b6f6;
}

i {
  line-height: inherit;
}
i.left {
  float: left;
  margin-right: 15px;
}
i.right {
  float: right;
  margin-left: 15px;
}
i.tiny {
  font-size: 1rem;
}
i.small {
  font-size: 2rem;
}
i.medium {
  font-size: 4rem;
}
i.large {
  font-size: 6rem;
}

img.responsive-img,
video.responsive-video {
  max-width: 100%;
  height: auto;
}

.pagination li {
  display: inline-block;
  border-radius: 2px;
  text-align: center;
  vertical-align: top;
  height: 30px;
}
.pagination li a {
  color: #444;
  display: inline-block;
  font-size: 1.2rem;
  padding: 0 10px;
  line-height: 30px;
}
.pagination li.active a {
  color: #fff;
}
.pagination li.active {
  background-color: #29b6f6;
}
.pagination li.disabled a {
  cursor: default;
  color: #999;
}
.pagination li i {
  font-size: 2rem;
}
.pagination li.pages ul li {
  display: inline-block;
  float: none;
}

@media only screen and (max-width : 992px) {
  .pagination {
    width: 100%;
  }
  .pagination li.prev,
.pagination li.next {
    width: 10%;
  }
  .pagination li.pages {
    width: 80%;
    overflow: hidden;
    white-space: nowrap;
  }
}
.breadcrumb {
  font-size: 18px;
  color: rgba(255, 255, 255, 0.7);
}
.breadcrumb i,
.breadcrumb [class^=mdi-], .breadcrumb [class*=mdi-],
.breadcrumb i.material-icons {
  display: inline-block;
  float: left;
  font-size: 24px;
}
.breadcrumb:before {
  content: "";
  color: rgba(255, 255, 255, 0.7);
  vertical-align: top;
  display: inline-block;
  font-family: "Material Icons";
  font-weight: normal;
  font-style: normal;
  font-size: 25px;
  margin: 0 10px 0 8px;
  -webkit-font-smoothing: antialiased;
}
.breadcrumb:first-child:before {
  display: none;
}
.breadcrumb:last-child {
  color: #fff;
}

.parallax-container {
  position: relative;
  overflow: hidden;
  height: 500px;
}
.parallax-container .parallax {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}
.parallax-container .parallax img {
  opacity: 0;
  position: absolute;
  left: 50%;
  bottom: 0;
  min-width: 100%;
  min-height: 100%;
  transform: translate3d(0, 0, 0);
  transform: translateX(-50%);
}

.pin-top, .pin-bottom {
  position: relative;
}

.pinned {
  position: fixed !important;
}

/*********************
  Transition Classes
**********************/
ul.staggered-list li {
  opacity: 0;
}

.fade-in {
  opacity: 0;
  transform-origin: 0 50%;
}

/*********************
  Media Query Classes
**********************/
@media only screen and (max-width : 600px) {
  .hide-on-small-only, .hide-on-small-and-down {
    display: none !important;
  }
}

@media only screen and (max-width : 992px) {
  .hide-on-med-and-down {
    display: none !important;
  }
}

@media only screen and (min-width : 601px) {
  .hide-on-med-and-up {
    display: none !important;
  }
}

@media only screen and (min-width: 600px) and (max-width: 992px) {
  .hide-on-med-only {
    display: none !important;
  }
}

@media only screen and (min-width : 993px) {
  .hide-on-large-only {
    display: none !important;
  }
}

@media only screen and (min-width : 1201px) {
  .hide-on-extra-large-only {
    display: none !important;
  }
}

@media only screen and (min-width : 1201px) {
  .show-on-extra-large {
    display: block !important;
  }
}

@media only screen and (min-width : 993px) {
  .show-on-large {
    display: block !important;
  }
}

@media only screen and (min-width: 600px) and (max-width: 992px) {
  .show-on-medium {
    display: block !important;
  }
}

@media only screen and (max-width : 600px) {
  .show-on-small {
    display: block !important;
  }
}

@media only screen and (min-width : 601px) {
  .show-on-medium-and-up {
    display: block !important;
  }
}

@media only screen and (max-width : 992px) {
  .show-on-medium-and-down {
    display: block !important;
  }
}

@media only screen and (max-width : 600px) {
  .center-on-small-only {
    text-align: center;
  }
}

.page-footer {
  padding-top: 20px;
  color: #fff;
  background-color: #29b6f6;
}
.page-footer .footer-copyright {
  overflow: hidden;
  min-height: 50px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 0px;
  color: rgba(255, 255, 255, 0.8);
  background-color: rgba(51, 51, 51, 0.08);
}

table, th, td {
  border: none;
}

table {
  width: 100%;
  display: table;
  border-collapse: collapse;
  border-spacing: 0;
}
table.striped tr {
  border-bottom: none;
}
table.striped > tbody > tr:nth-child(odd) {
  background-color: rgba(242, 242, 242, 0.5);
}
table.striped > tbody > tr > td {
  border-radius: 0;
}
table.highlight > tbody > tr {
  transition: background-color 0.25s ease;
}
table.highlight > tbody > tr:hover {
  background-color: rgba(242, 242, 242, 0.5);
}
table.centered thead tr th, table.centered tbody tr td {
  text-align: center;
}

tr {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}

td, th {
  padding: 15px 5px;
  display: table-cell;
  text-align: left;
  vertical-align: middle;
  border-radius: 2px;
}

@media only screen and (max-width : 992px) {
  table.responsive-table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    display: block;
    position: relative;
    /* sort out borders */
  }
  table.responsive-table td:empty:before {
    content: " ";
  }
  table.responsive-table th,
table.responsive-table td {
    margin: 0;
    vertical-align: top;
  }
  table.responsive-table th {
    text-align: left;
  }
  table.responsive-table thead {
    display: block;
    float: left;
  }
  table.responsive-table thead tr {
    display: block;
    padding: 0 10px 0 0;
  }
  table.responsive-table thead tr th::before {
    content: " ";
  }
  table.responsive-table tbody {
    display: block;
    width: auto;
    position: relative;
    overflow-x: auto;
    white-space: nowrap;
  }
  table.responsive-table tbody tr {
    display: inline-block;
    vertical-align: top;
  }
  table.responsive-table th {
    display: block;
    text-align: right;
  }
  table.responsive-table td {
    display: block;
    min-height: 1.25em;
    text-align: left;
  }
  table.responsive-table tr {
    border-bottom: none;
    padding: 0 10px;
  }
  table.responsive-table thead {
    border: 0;
    border-right: 1px solid rgba(0, 0, 0, 0.12);
  }
}
.collection {
  margin: 0.5rem 0 1rem 0;
  border: 1px solid #e0e0e0;
  border-radius: 2px;
  overflow: hidden;
  position: relative;
}
.collection .collection-item {
  background-color: #fff;
  line-height: 1.5rem;
  padding: 10px 20px;
  margin: 0;
  border-bottom: 1px solid #e0e0e0;
}
.collection .collection-item.avatar {
  min-height: 84px;
  padding-left: 72px;
  position: relative;
}
.collection .collection-item.avatar:not(.circle-clipper) > .circle,
.collection .collection-item.avatar :not(.circle-clipper) > .circle {
  position: absolute;
  width: 42px;
  height: 42px;
  overflow: hidden;
  left: 15px;
  display: inline-block;
  vertical-align: middle;
}
.collection .collection-item.avatar i.circle {
  font-size: 18px;
  line-height: 42px;
  color: #fff;
  background-color: #999;
  text-align: center;
}
.collection .collection-item.avatar .title {
  font-size: 16px;
}
.collection .collection-item.avatar p {
  margin: 0;
}
.collection .collection-item.avatar .secondary-content {
  position: absolute;
  top: 16px;
  right: 16px;
}
.collection .collection-item:last-child {
  border-bottom: none;
}
.collection .collection-item.active {
  background-color: #26a69a;
  color: #eafaf9;
}
.collection .collection-item.active .secondary-content {
  color: #fff;
}
.collection a.collection-item {
  display: block;
  transition: 0.25s;
  color: #26a69a;
}
.collection a.collection-item:not(.active):hover {
  background-color: #ddd;
}
.collection.with-header .collection-header {
  background-color: #fff;
  border-bottom: 1px solid #e0e0e0;
  padding: 10px 20px;
}
.collection.with-header .collection-item {
  padding-left: 30px;
}
.collection.with-header .collection-item.avatar {
  padding-left: 72px;
}

.secondary-content {
  float: right;
  color: #26a69a;
}

.collapsible .collection {
  margin: 0;
  border: none;
}

.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.video-container iframe, .video-container object, .video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.progress {
  position: relative;
  height: 4px;
  display: block;
  width: 100%;
  background-color: #acece6;
  border-radius: 2px;
  margin: 0.5rem 0 1rem 0;
  overflow: hidden;
}
.progress .determinate {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  background-color: #26a69a;
  transition: width 0.3s linear;
}
.progress .indeterminate {
  background-color: #26a69a;
}
.progress .indeterminate:before {
  content: "";
  position: absolute;
  background-color: inherit;
  top: 0;
  left: 0;
  bottom: 0;
  will-change: left, right;
  animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
}
.progress .indeterminate:after {
  content: "";
  position: absolute;
  background-color: inherit;
  top: 0;
  left: 0;
  bottom: 0;
  will-change: left, right;
  animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
  animation-delay: 1.15s;
}

@keyframes indeterminate {
  0% {
    left: -35%;
    right: 100%;
  }
  60% {
    left: 100%;
    right: -90%;
  }
  100% {
    left: 100%;
    right: -90%;
  }
}
@keyframes indeterminate-short {
  0% {
    left: -200%;
    right: 100%;
  }
  60% {
    left: 107%;
    right: -8%;
  }
  100% {
    left: 107%;
    right: -8%;
  }
}
/*******************
  Utility Classes
*******************/
.hide {
  display: none !important;
}

.left-align {
  text-align: left;
}

.right-align {
  text-align: right;
}

.center, .center-align {
  text-align: center;
}

.left {
  float: left !important;
}

.right {
  float: right !important;
}

.no-select, input[type=range],
input[type=range] + .thumb {
  user-select: none;
}

.circle {
  border-radius: 50%;
}

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.truncate {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.no-padding {
  padding: 0 !important;
}

span.badge {
  min-width: 3rem;
  padding: 0 6px;
  margin-left: 14px;
  text-align: center;
  font-size: 1rem;
  line-height: 22px;
  height: 22px;
  color: #757575;
  float: right;
  box-sizing: border-box;
}
span.badge.new {
  font-weight: 300;
  font-size: 0.8rem;
  color: #fff;
  background-color: #26a69a;
  border-radius: 2px;
}
span.badge.new:after {
  content: " new";
}
span.badge[data-badge-caption]::after {
  content: " " attr(data-badge-caption);
}

nav ul a span.badge {
  display: inline-block;
  float: none;
  margin-left: 4px;
  line-height: 22px;
  height: 22px;
  -webkit-font-smoothing: auto;
}

.collection-item span.badge {
  margin-top: calc(0.75rem - 11px);
}

.collapsible span.badge {
  margin-left: auto;
}

.sidenav span.badge {
  margin-top: calc(24px - 11px);
}

table span.badge {
  display: inline-block;
  float: none;
  margin-left: auto;
}

/* This is needed for some mobile phones to display the Google Icon font properly */
.material-icons {
  text-rendering: optimizeLegibility;
  font-feature-settings: "liga";
}

.container {
  margin: 0 auto;
  max-width: 1280px;
  width: 90%;
}

@media only screen and (min-width : 601px) {
  .container {
    width: 85%;
  }
}
@media only screen and (min-width : 993px) {
  .container {
    width: 70%;
  }
}
.col .row {
  margin-left: -0.75rem;
  margin-right: -0.75rem;
}

.section {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.section.no-pad {
  padding: 0;
}
.section.no-pad-bot {
  padding-bottom: 0;
}
.section.no-pad-top {
  padding-top: 0;
}

.row {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
}
.row:after {
  content: "";
  display: table;
  clear: both;
}
.row .col {
  float: left;
  box-sizing: border-box;
  padding: 0 0.75rem;
  min-height: 1px;
}
.row .col[class*=push-], .row .col[class*=pull-] {
  position: relative;
}
.row .col.s1 {
  width: 8.3333333333%;
  margin-left: auto;
  left: auto;
  right: auto;
}
.row .col.s2 {
  width: 16.6666666667%;
  margin-left: auto;
  left: auto;
  right: auto;
}
.row .col.s3 {
  width: 25%;
  margin-left: auto;
  left: auto;
  right: auto;
}
.row .col.s4 {
  width: 33.3333333333%;
  margin-left: auto;
  left: auto;
  right: auto;
}
.row .col.s5 {
  width: 41.6666666667%;
  margin-left: auto;
  left: auto;
  right: auto;
}
.row .col.s6 {
  width: 50%;
  margin-left: auto;
  left: auto;
  right: auto;
}
.row .col.s7 {
  width: 58.3333333333%;
  margin-left: auto;
  left: auto;
  right: auto;
}
.row .col.s8 {
  width: 66.6666666667%;
  margin-left: auto;
  left: auto;
  right: auto;
}
.row .col.s9 {
  width: 75%;
  margin-left: auto;
  left: auto;
  right: auto;
}
.row .col.s10 {
  width: 83.3333333333%;
  margin-left: auto;
  left: auto;
  right: auto;
}
.row .col.s11 {
  width: 91.6666666667%;
  margin-left: auto;
  left: auto;
  right: auto;
}
.row .col.s12 {
  width: 100%;
  margin-left: auto;
  left: auto;
  right: auto;
}
.row .col.offset-s1 {
  margin-left: 8.3333333333%;
}
.row .col.pull-s1 {
  right: 8.3333333333%;
}
.row .col.push-s1 {
  left: 8.3333333333%;
}
.row .col.offset-s2 {
  margin-left: 16.6666666667%;
}
.row .col.pull-s2 {
  right: 16.6666666667%;
}
.row .col.push-s2 {
  left: 16.6666666667%;
}
.row .col.offset-s3 {
  margin-left: 25%;
}
.row .col.pull-s3 {
  right: 25%;
}
.row .col.push-s3 {
  left: 25%;
}
.row .col.offset-s4 {
  margin-left: 33.3333333333%;
}
.row .col.pull-s4 {
  right: 33.3333333333%;
}
.row .col.push-s4 {
  left: 33.3333333333%;
}
.row .col.offset-s5 {
  margin-left: 41.6666666667%;
}
.row .col.pull-s5 {
  right: 41.6666666667%;
}
.row .col.push-s5 {
  left: 41.6666666667%;
}
.row .col.offset-s6 {
  margin-left: 50%;
}
.row .col.pull-s6 {
  right: 50%;
}
.row .col.push-s6 {
  left: 50%;
}
.row .col.offset-s7 {
  margin-left: 58.3333333333%;
}
.row .col.pull-s7 {
  right: 58.3333333333%;
}
.row .col.push-s7 {
  left: 58.3333333333%;
}
.row .col.offset-s8 {
  margin-left: 66.6666666667%;
}
.row .col.pull-s8 {
  right: 66.6666666667%;
}
.row .col.push-s8 {
  left: 66.6666666667%;
}
.row .col.offset-s9 {
  margin-left: 75%;
}
.row .col.pull-s9 {
  right: 75%;
}
.row .col.push-s9 {
  left: 75%;
}
.row .col.offset-s10 {
  margin-left: 83.3333333333%;
}
.row .col.pull-s10 {
  right: 83.3333333333%;
}
.row .col.push-s10 {
  left: 83.3333333333%;
}
.row .col.offset-s11 {
  margin-left: 91.6666666667%;
}
.row .col.pull-s11 {
  right: 91.6666666667%;
}
.row .col.push-s11 {
  left: 91.6666666667%;
}
.row .col.offset-s12 {
  margin-left: 100%;
}
.row .col.pull-s12 {
  right: 100%;
}
.row .col.push-s12 {
  left: 100%;
}
@media only screen and (min-width : 601px) {
  .row .col.m1 {
    width: 8.3333333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.m2 {
    width: 16.6666666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.m3 {
    width: 25%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.m4 {
    width: 33.3333333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.m5 {
    width: 41.6666666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.m6 {
    width: 50%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.m7 {
    width: 58.3333333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.m8 {
    width: 66.6666666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.m9 {
    width: 75%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.m10 {
    width: 83.3333333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.m11 {
    width: 91.6666666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.m12 {
    width: 100%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.offset-m1 {
    margin-left: 8.3333333333%;
  }
  .row .col.pull-m1 {
    right: 8.3333333333%;
  }
  .row .col.push-m1 {
    left: 8.3333333333%;
  }
  .row .col.offset-m2 {
    margin-left: 16.6666666667%;
  }
  .row .col.pull-m2 {
    right: 16.6666666667%;
  }
  .row .col.push-m2 {
    left: 16.6666666667%;
  }
  .row .col.offset-m3 {
    margin-left: 25%;
  }
  .row .col.pull-m3 {
    right: 25%;
  }
  .row .col.push-m3 {
    left: 25%;
  }
  .row .col.offset-m4 {
    margin-left: 33.3333333333%;
  }
  .row .col.pull-m4 {
    right: 33.3333333333%;
  }
  .row .col.push-m4 {
    left: 33.3333333333%;
  }
  .row .col.offset-m5 {
    margin-left: 41.6666666667%;
  }
  .row .col.pull-m5 {
    right: 41.6666666667%;
  }
  .row .col.push-m5 {
    left: 41.6666666667%;
  }
  .row .col.offset-m6 {
    margin-left: 50%;
  }
  .row .col.pull-m6 {
    right: 50%;
  }
  .row .col.push-m6 {
    left: 50%;
  }
  .row .col.offset-m7 {
    margin-left: 58.3333333333%;
  }
  .row .col.pull-m7 {
    right: 58.3333333333%;
  }
  .row .col.push-m7 {
    left: 58.3333333333%;
  }
  .row .col.offset-m8 {
    margin-left: 66.6666666667%;
  }
  .row .col.pull-m8 {
    right: 66.6666666667%;
  }
  .row .col.push-m8 {
    left: 66.6666666667%;
  }
  .row .col.offset-m9 {
    margin-left: 75%;
  }
  .row .col.pull-m9 {
    right: 75%;
  }
  .row .col.push-m9 {
    left: 75%;
  }
  .row .col.offset-m10 {
    margin-left: 83.3333333333%;
  }
  .row .col.pull-m10 {
    right: 83.3333333333%;
  }
  .row .col.push-m10 {
    left: 83.3333333333%;
  }
  .row .col.offset-m11 {
    margin-left: 91.6666666667%;
  }
  .row .col.pull-m11 {
    right: 91.6666666667%;
  }
  .row .col.push-m11 {
    left: 91.6666666667%;
  }
  .row .col.offset-m12 {
    margin-left: 100%;
  }
  .row .col.pull-m12 {
    right: 100%;
  }
  .row .col.push-m12 {
    left: 100%;
  }
}
@media only screen and (min-width : 993px) {
  .row .col.l1 {
    width: 8.3333333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.l2 {
    width: 16.6666666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.l3 {
    width: 25%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.l4 {
    width: 33.3333333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.l5 {
    width: 41.6666666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.l6 {
    width: 50%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.l7 {
    width: 58.3333333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.l8 {
    width: 66.6666666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.l9 {
    width: 75%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.l10 {
    width: 83.3333333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.l11 {
    width: 91.6666666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.l12 {
    width: 100%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.offset-l1 {
    margin-left: 8.3333333333%;
  }
  .row .col.pull-l1 {
    right: 8.3333333333%;
  }
  .row .col.push-l1 {
    left: 8.3333333333%;
  }
  .row .col.offset-l2 {
    margin-left: 16.6666666667%;
  }
  .row .col.pull-l2 {
    right: 16.6666666667%;
  }
  .row .col.push-l2 {
    left: 16.6666666667%;
  }
  .row .col.offset-l3 {
    margin-left: 25%;
  }
  .row .col.pull-l3 {
    right: 25%;
  }
  .row .col.push-l3 {
    left: 25%;
  }
  .row .col.offset-l4 {
    margin-left: 33.3333333333%;
  }
  .row .col.pull-l4 {
    right: 33.3333333333%;
  }
  .row .col.push-l4 {
    left: 33.3333333333%;
  }
  .row .col.offset-l5 {
    margin-left: 41.6666666667%;
  }
  .row .col.pull-l5 {
    right: 41.6666666667%;
  }
  .row .col.push-l5 {
    left: 41.6666666667%;
  }
  .row .col.offset-l6 {
    margin-left: 50%;
  }
  .row .col.pull-l6 {
    right: 50%;
  }
  .row .col.push-l6 {
    left: 50%;
  }
  .row .col.offset-l7 {
    margin-left: 58.3333333333%;
  }
  .row .col.pull-l7 {
    right: 58.3333333333%;
  }
  .row .col.push-l7 {
    left: 58.3333333333%;
  }
  .row .col.offset-l8 {
    margin-left: 66.6666666667%;
  }
  .row .col.pull-l8 {
    right: 66.6666666667%;
  }
  .row .col.push-l8 {
    left: 66.6666666667%;
  }
  .row .col.offset-l9 {
    margin-left: 75%;
  }
  .row .col.pull-l9 {
    right: 75%;
  }
  .row .col.push-l9 {
    left: 75%;
  }
  .row .col.offset-l10 {
    margin-left: 83.3333333333%;
  }
  .row .col.pull-l10 {
    right: 83.3333333333%;
  }
  .row .col.push-l10 {
    left: 83.3333333333%;
  }
  .row .col.offset-l11 {
    margin-left: 91.6666666667%;
  }
  .row .col.pull-l11 {
    right: 91.6666666667%;
  }
  .row .col.push-l11 {
    left: 91.6666666667%;
  }
  .row .col.offset-l12 {
    margin-left: 100%;
  }
  .row .col.pull-l12 {
    right: 100%;
  }
  .row .col.push-l12 {
    left: 100%;
  }
}
@media only screen and (min-width : 1201px) {
  .row .col.xl1 {
    width: 8.3333333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.xl2 {
    width: 16.6666666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.xl3 {
    width: 25%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.xl4 {
    width: 33.3333333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.xl5 {
    width: 41.6666666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.xl6 {
    width: 50%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.xl7 {
    width: 58.3333333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.xl8 {
    width: 66.6666666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.xl9 {
    width: 75%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.xl10 {
    width: 83.3333333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.xl11 {
    width: 91.6666666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.xl12 {
    width: 100%;
    margin-left: auto;
    left: auto;
    right: auto;
  }
  .row .col.offset-xl1 {
    margin-left: 8.3333333333%;
  }
  .row .col.pull-xl1 {
    right: 8.3333333333%;
  }
  .row .col.push-xl1 {
    left: 8.3333333333%;
  }
  .row .col.offset-xl2 {
    margin-left: 16.6666666667%;
  }
  .row .col.pull-xl2 {
    right: 16.6666666667%;
  }
  .row .col.push-xl2 {
    left: 16.6666666667%;
  }
  .row .col.offset-xl3 {
    margin-left: 25%;
  }
  .row .col.pull-xl3 {
    right: 25%;
  }
  .row .col.push-xl3 {
    left: 25%;
  }
  .row .col.offset-xl4 {
    margin-left: 33.3333333333%;
  }
  .row .col.pull-xl4 {
    right: 33.3333333333%;
  }
  .row .col.push-xl4 {
    left: 33.3333333333%;
  }
  .row .col.offset-xl5 {
    margin-left: 41.6666666667%;
  }
  .row .col.pull-xl5 {
    right: 41.6666666667%;
  }
  .row .col.push-xl5 {
    left: 41.6666666667%;
  }
  .row .col.offset-xl6 {
    margin-left: 50%;
  }
  .row .col.pull-xl6 {
    right: 50%;
  }
  .row .col.push-xl6 {
    left: 50%;
  }
  .row .col.offset-xl7 {
    margin-left: 58.3333333333%;
  }
  .row .col.pull-xl7 {
    right: 58.3333333333%;
  }
  .row .col.push-xl7 {
    left: 58.3333333333%;
  }
  .row .col.offset-xl8 {
    margin-left: 66.6666666667%;
  }
  .row .col.pull-xl8 {
    right: 66.6666666667%;
  }
  .row .col.push-xl8 {
    left: 66.6666666667%;
  }
  .row .col.offset-xl9 {
    margin-left: 75%;
  }
  .row .col.pull-xl9 {
    right: 75%;
  }
  .row .col.push-xl9 {
    left: 75%;
  }
  .row .col.offset-xl10 {
    margin-left: 83.3333333333%;
  }
  .row .col.pull-xl10 {
    right: 83.3333333333%;
  }
  .row .col.push-xl10 {
    left: 83.3333333333%;
  }
  .row .col.offset-xl11 {
    margin-left: 91.6666666667%;
  }
  .row .col.pull-xl11 {
    right: 91.6666666667%;
  }
  .row .col.push-xl11 {
    left: 91.6666666667%;
  }
  .row .col.offset-xl12 {
    margin-left: 100%;
  }
  .row .col.pull-xl12 {
    right: 100%;
  }
  .row .col.push-xl12 {
    left: 100%;
  }
}

nav {
  color: #000000de;
  background-color: #29b6f6;
  width: 100%;
  height: 56px;
  line-height: 56px;
}
nav.nav-extended {
  height: auto;
}
nav.nav-extended .nav-wrapper {
  min-height: 56px;
  height: auto;
}
nav.nav-extended .nav-content {
  position: relative;
  line-height: normal;
}
nav a {
  color: #000000de;
}
nav i,
nav [class^=mdi-], nav [class*=mdi-],
nav i.material-icons {
  display: block;
  font-size: 24px;
  height: 56px;
  line-height: 56px;
}
nav .nav-wrapper {
  position: relative;
  height: 100%;
}
@media only screen and (min-width : 993px) {
  nav a.sidenav-trigger {
    display: none;
  }
}
nav .sidenav-trigger {
  float: left;
  position: relative;
  z-index: 1;
  height: 56px;
  margin: 0 18px;
}
nav .sidenav-trigger i {
  height: 56px;
  line-height: 56px;
}
nav .brand-logo {
  position: absolute;
  color: #000000de;
  display: inline-block;
  font-size: 2.1rem;
  padding: 0;
}
nav .brand-logo.center {
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width : 992px) {
  nav .brand-logo {
    left: 50%;
    transform: translateX(-50%);
  }
  nav .brand-logo.left, nav .brand-logo.right {
    padding: 0;
    transform: none;
  }
  nav .brand-logo.left {
    left: 0.5rem;
  }
  nav .brand-logo.right {
    right: 0.5rem;
    left: auto;
  }
}
nav .brand-logo.right {
  right: 0.5rem;
  padding: 0;
}
nav .brand-logo i,
nav .brand-logo [class^=mdi-], nav .brand-logo [class*=mdi-],
nav .brand-logo i.material-icons {
  float: left;
  margin-right: 15px;
}
nav .nav-title {
  display: inline-block;
  font-size: 32px;
  padding: 28px 0;
}
nav ul {
  margin: 0;
}
nav ul li {
  transition: background-color 0.3s;
  float: left;
  padding: 0;
}
nav ul li.active {
  background-color: rgba(0, 0, 0, 0.1);
}
nav ul a {
  transition: background-color 0.3s;
  font-size: 1rem;
  color: #000000de;
  display: block;
  padding: 0 15px;
  cursor: pointer;
}
nav ul a.btn, nav ul a.btn-small, nav ul a.btn-large, nav ul a.btn-flat, nav ul a.btn-floating {
  margin-top: -2px;
  margin-left: 15px;
  margin-right: 15px;
}
nav ul a.btn > .material-icons, nav ul a.btn-small > .material-icons, nav ul a.btn-large > .material-icons, nav ul a.btn-flat > .material-icons, nav ul a.btn-floating > .material-icons {
  height: inherit;
  line-height: inherit;
}
nav ul a:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
nav ul.left {
  float: left;
}
nav form {
  height: 100%;
}
nav .input-field {
  margin: 0;
  height: 100%;
}
nav .input-field input {
  height: 100%;
  font-size: 1.2rem;
  border: none;
  padding-left: 2rem;
}
nav .input-field input:focus, nav .input-field input[type=text]:valid, nav .input-field input[type=password]:valid, nav .input-field input[type=email]:valid, nav .input-field input[type=url]:valid, nav .input-field input[type=date]:valid {
  border: none;
  box-shadow: none;
}
nav .input-field label {
  top: 0;
  left: 0;
}
nav .input-field label i {
  color: rgba(255, 255, 255, 0.7);
  transition: color 0.3s;
}
nav .input-field label.active i {
  color: #000000de;
}

.navbar-fixed {
  position: relative;
  height: 56px;
  z-index: 997;
}
.navbar-fixed nav {
  position: fixed;
}

@media only screen and (min-width : 601px) {
  nav.nav-extended .nav-wrapper {
    min-height: 64px;
  }

  nav, nav .nav-wrapper i, nav a.sidenav-trigger, nav a.sidenav-trigger i {
    height: 64px;
    line-height: 64px;
  }

  .navbar-fixed {
    height: 64px;
  }
}
a {
  text-decoration: none;
}

html {
  line-height: 1.5;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-weight: normal;
  color: rgba(0, 0, 0, 0.87);
}
@media only screen and (min-width: 0) {
  html {
    font-size: 14px;
  }
}
@media only screen and (min-width: 992px) {
  html {
    font-size: 14.5px;
  }
}
@media only screen and (min-width: 1200px) {
  html {
    font-size: 15px;
  }
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 400;
  line-height: 1.3;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  font-weight: inherit;
}

h1 {
  font-size: 4.2rem;
  line-height: 110%;
  margin: 2.8rem 0 1.68rem 0;
}

h2 {
  font-size: 3.56rem;
  line-height: 110%;
  margin: 2.3733333333rem 0 1.424rem 0;
}

h3 {
  font-size: 2.92rem;
  line-height: 110%;
  margin: 1.9466666667rem 0 1.168rem 0;
}

h4 {
  font-size: 2.28rem;
  line-height: 110%;
  margin: 1.52rem 0 0.912rem 0;
}

h5 {
  font-size: 1.64rem;
  line-height: 110%;
  margin: 1.0933333333rem 0 0.656rem 0;
}

h6 {
  font-size: 1.15rem;
  line-height: 110%;
  margin: 0.7666666667rem 0 0.46rem 0;
}

em {
  font-style: italic;
}

strong {
  font-weight: 500;
}

small {
  font-size: 75%;
}

.light {
  font-weight: 300;
}

.thin {
  font-weight: 200;
}

@media only screen and (min-width: 360px) {
  .flow-text {
    font-size: 1.2rem;
  }
}
@media only screen and (min-width: 390px) {
  .flow-text {
    font-size: 1.224rem;
  }
}
@media only screen and (min-width: 420px) {
  .flow-text {
    font-size: 1.248rem;
  }
}
@media only screen and (min-width: 450px) {
  .flow-text {
    font-size: 1.272rem;
  }
}
@media only screen and (min-width: 480px) {
  .flow-text {
    font-size: 1.296rem;
  }
}
@media only screen and (min-width: 510px) {
  .flow-text {
    font-size: 1.32rem;
  }
}
@media only screen and (min-width: 540px) {
  .flow-text {
    font-size: 1.344rem;
  }
}
@media only screen and (min-width: 570px) {
  .flow-text {
    font-size: 1.368rem;
  }
}
@media only screen and (min-width: 600px) {
  .flow-text {
    font-size: 1.392rem;
  }
}
@media only screen and (min-width: 630px) {
  .flow-text {
    font-size: 1.416rem;
  }
}
@media only screen and (min-width: 660px) {
  .flow-text {
    font-size: 1.44rem;
  }
}
@media only screen and (min-width: 690px) {
  .flow-text {
    font-size: 1.464rem;
  }
}
@media only screen and (min-width: 720px) {
  .flow-text {
    font-size: 1.488rem;
  }
}
@media only screen and (min-width: 750px) {
  .flow-text {
    font-size: 1.512rem;
  }
}
@media only screen and (min-width: 780px) {
  .flow-text {
    font-size: 1.536rem;
  }
}
@media only screen and (min-width: 810px) {
  .flow-text {
    font-size: 1.56rem;
  }
}
@media only screen and (min-width: 840px) {
  .flow-text {
    font-size: 1.584rem;
  }
}
@media only screen and (min-width: 870px) {
  .flow-text {
    font-size: 1.608rem;
  }
}
@media only screen and (min-width: 900px) {
  .flow-text {
    font-size: 1.632rem;
  }
}
@media only screen and (min-width: 930px) {
  .flow-text {
    font-size: 1.656rem;
  }
}
@media only screen and (min-width: 960px) {
  .flow-text {
    font-size: 1.68rem;
  }
}
@media only screen and (max-width: 360px) {
  .flow-text {
    font-size: 1.2rem;
  }
}

.scale-transition {
  transition: transform 0.3s cubic-bezier(0.53, 0.01, 0.36, 1.63) !important;
}
.scale-transition.scale-out {
  transform: scale(0);
  transition: transform 0.2s !important;
}
.scale-transition.scale-in {
  transform: scale(1);
}

.card-panel {
  transition: box-shadow 0.25s;
  padding: 24px;
  margin: 0.5rem 0 1rem 0;
  border-radius: 2px;
  background-color: #fff;
}

.card {
  position: relative;
  margin: 0.5rem 0 1rem 0;
  background-color: #fff;
  transition: box-shadow 0.25s;
  border-radius: 2px;
}
.card .card-title {
  font-size: 24px;
  font-weight: 300;
}
.card .card-title.activator {
  cursor: pointer;
}
.card.small, .card.medium, .card.large {
  position: relative;
}
.card.small .card-image, .card.medium .card-image, .card.large .card-image {
  max-height: 60%;
  overflow: hidden;
}
.card.small .card-image + .card-content, .card.medium .card-image + .card-content, .card.large .card-image + .card-content {
  max-height: 40%;
}
.card.small .card-content, .card.medium .card-content, .card.large .card-content {
  max-height: 100%;
  overflow: hidden;
}
.card.small .card-action, .card.medium .card-action, .card.large .card-action {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
.card.small {
  height: 300px;
}
.card.medium {
  height: 400px;
}
.card.large {
  height: 500px;
}
.card.horizontal {
  display: flex;
}
.card.horizontal.small .card-image, .card.horizontal.medium .card-image, .card.horizontal.large .card-image {
  height: 100%;
  max-height: none;
  overflow: visible;
}
.card.horizontal.small .card-image img, .card.horizontal.medium .card-image img, .card.horizontal.large .card-image img {
  height: 100%;
}
.card.horizontal .card-image {
  max-width: 50%;
}
.card.horizontal .card-image img {
  border-radius: 2px 0 0 2px;
  max-width: 100%;
  width: auto;
}
.card.horizontal .card-stacked {
  display: flex;
  flex-direction: column;
  flex: 1;
  position: relative;
}
.card.horizontal .card-stacked .card-content {
  flex-grow: 1;
}
.card.sticky-action .card-action {
  z-index: 2;
}
.card.sticky-action .card-reveal {
  z-index: 1;
  padding-bottom: 64px;
}
.card .card-image {
  position: relative;
}
.card .card-image img {
  display: block;
  border-radius: 2px 2px 0 0;
  position: relative;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
}
.card .card-image .card-title {
  color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  max-width: 100%;
  padding: 24px;
}
.card .card-content {
  padding: 24px;
  border-radius: 0 0 2px 2px;
}
.card .card-content p {
  margin: 0;
}
.card .card-content .card-title {
  display: block;
  line-height: 32px;
  margin-bottom: 8px;
}
.card .card-content .card-title i {
  line-height: 32px;
}
.card .card-action {
  background-color: inherit;
  border-top: 1px solid rgba(160, 160, 160, 0.2);
  position: relative;
  padding: 16px 24px;
}
.card .card-action:last-child {
  border-radius: 0 0 2px 2px;
}
.card .card-action a:not(.btn):not(.btn-small):not(.btn-large):not(.btn-large):not(.btn-floating) {
  color: #ffab40;
  margin-right: 24px;
  transition: color 0.3s ease;
  text-transform: uppercase;
}
.card .card-action a:not(.btn):not(.btn-small):not(.btn-large):not(.btn-large):not(.btn-floating):hover {
  color: #ffd8a6;
}
.card .card-reveal {
  padding: 24px;
  position: absolute;
  background-color: #fff;
  width: 100%;
  overflow-y: auto;
  left: 0;
  top: 100%;
  height: 100%;
  z-index: 3;
  display: none;
}
.card .card-reveal .card-title {
  cursor: pointer;
  display: block;
}

#toast-container {
  display: block;
  position: fixed;
  z-index: 10000;
}
@media only screen and (max-width : 600px) {
  #toast-container {
    min-width: 100%;
    bottom: 0%;
  }
}
@media only screen and (min-width : 601px) and (max-width : 992px) {
  #toast-container {
    left: 5%;
    bottom: 7%;
    max-width: 90%;
  }
}
@media only screen and (min-width : 993px) {
  #toast-container {
    top: 10%;
    right: 7%;
    max-width: 86%;
  }
}

.toast {
  border-radius: 2px;
  top: 35px;
  width: auto;
  margin-top: 10px;
  position: relative;
  max-width: 100%;
  height: auto;
  min-height: 48px;
  line-height: 1.5em;
  background-color: #323232;
  padding: 10px 25px;
  font-size: 1.1rem;
  font-weight: 300;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: default;
}
.toast .toast-action {
  color: #eeff41;
  font-weight: 500;
  margin-right: -25px;
  margin-left: 3rem;
}
.toast.rounded {
  border-radius: 24px;
}
@media only screen and (max-width : 600px) {
  .toast {
    width: 100%;
    border-radius: 0;
  }
}

.tabs {
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  height: 48px;
  width: 100%;
  background-color: #fff;
  margin: 0 auto;
  white-space: nowrap;
}
.tabs.tabs-transparent {
  background-color: transparent;
}
.tabs.tabs-transparent .tab a,
.tabs.tabs-transparent .tab.disabled a,
.tabs.tabs-transparent .tab.disabled a:hover {
  color: rgba(255, 255, 255, 0.7);
}
.tabs.tabs-transparent .tab a:hover,
.tabs.tabs-transparent .tab a.active {
  color: #fff;
}
.tabs.tabs-transparent .indicator {
  background-color: #fff;
}
.tabs.tabs-fixed-width {
  display: flex;
}
.tabs.tabs-fixed-width .tab {
  flex-grow: 1;
}
.tabs .tab {
  display: inline-block;
  text-align: center;
  line-height: 48px;
  height: 48px;
  padding: 0;
  margin: 0;
  text-transform: uppercase;
}
.tabs .tab a {
  color: rgba(0, 0, 0, 0.7);
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 24px;
  font-size: 14px;
  text-overflow: ellipsis;
  overflow: hidden;
  transition: color 0.28s ease, background-color 0.28s ease;
}
.tabs .tab a:focus, .tabs .tab a:focus.active {
  background-color: rgba(38, 166, 154, 0.2);
  outline: none;
}
.tabs .tab a:hover, .tabs .tab a.active {
  background-color: transparent;
  color: #000000de;
}
.tabs .tab.disabled a, .tabs .tab.disabled a:hover {
  color: rgba(0, 0, 0, 0.4);
  cursor: default;
}
.tabs .indicator {
  position: absolute;
  bottom: 0;
  height: 2px;
  background-color: #26a69a;
  will-change: left, right;
}

@media only screen and (max-width : 992px) {
  .tabs {
    display: flex;
  }
  .tabs .tab {
    flex-grow: 1;
  }
  .tabs .tab a {
    padding: 0 12px;
  }
}
.material-tooltip {
  padding: 10px 8px;
  font-size: 1rem;
  z-index: 2000;
  background-color: transparent;
  border-radius: 2px;
  color: #fff;
  min-height: 36px;
  line-height: 120%;
  opacity: 0;
  position: absolute;
  text-align: center;
  max-width: calc(100% - 4px);
  overflow: hidden;
  left: 0;
  top: 0;
  pointer-events: none;
  visibility: hidden;
  background-color: #323232;
}

.backdrop {
  position: absolute;
  opacity: 0;
  height: 7px;
  width: 14px;
  border-radius: 0 0 50% 50%;
  background-color: #323232;
  z-index: -1;
  transform-origin: 50% 0%;
  visibility: hidden;
}

.btn, .btn-small, .btn-large,
.btn-flat {
  border: none;
  border-radius: 2px;
  display: inline-block;
  height: 36px;
  line-height: 36px;
  padding: 0 16px;
  text-transform: uppercase;
  vertical-align: middle;
  -webkit-tap-highlight-color: transparent;
}

.btn.disabled,
.btn-floating.disabled,
.btn-large.disabled,
.btn-small.disabled,
.btn-flat.disabled,
.btn:disabled,
.btn-floating:disabled,
.btn-large:disabled,
.btn-small:disabled,
.btn-flat:disabled,
.btn[disabled],
.btn-floating[disabled],
.btn-large[disabled],
.btn-small[disabled],
.btn-flat[disabled] {
  pointer-events: none;
  background-color: #DFDFDF !important;
  box-shadow: none;
  color: #9F9F9F !important;
  cursor: default;
}
.btn.disabled:hover,
.btn-floating.disabled:hover,
.btn-large.disabled:hover,
.btn-small.disabled:hover,
.btn-flat.disabled:hover,
.btn:disabled:hover,
.btn-floating:disabled:hover,
.btn-large:disabled:hover,
.btn-small:disabled:hover,
.btn-flat:disabled:hover,
.btn[disabled]:hover,
.btn-floating[disabled]:hover,
.btn-large[disabled]:hover,
.btn-small[disabled]:hover,
.btn-flat[disabled]:hover {
  background-color: #DFDFDF !important;
  color: #9F9F9F !important;
}

.btn,
.btn-floating,
.btn-large,
.btn-small,
.btn-flat {
  font-size: 14px;
  outline: 0;
}
.btn i,
.btn-floating i,
.btn-large i,
.btn-small i,
.btn-flat i {
  font-size: 1.3rem;
  line-height: inherit;
}

.btn:focus, .btn-small:focus, .btn-large:focus,
.btn-floating:focus {
  background-color: #1d7d74;
}

.btn, .btn-small, .btn-large {
  text-decoration: none;
  color: #fff;
  background-color: #26a69a;
  text-align: center;
  letter-spacing: 0.5px;
  transition: background-color 0.2s ease-out;
  cursor: pointer;
}
.btn:hover, .btn-small:hover, .btn-large:hover {
  background-color: #2bbbad;
}

.btn-floating {
  display: inline-block;
  color: #fff;
  position: relative;
  overflow: hidden;
  z-index: 1;
  width: 40px;
  height: 40px;
  line-height: 40px;
  padding: 0;
  background-color: #26a69a;
  border-radius: 50%;
  transition: background-color 0.3s;
  cursor: pointer;
  vertical-align: middle;
}
.btn-floating:hover {
  background-color: #26a69a;
}
.btn-floating:before {
  border-radius: 0;
}
.btn-floating.btn-large {
  width: 56px;
  height: 56px;
  padding: 0;
}
.btn-floating.btn-large.halfway-fab {
  bottom: -28px;
}
.btn-floating.btn-large i {
  line-height: 56px;
}
.btn-floating.btn-small {
  width: 32.4px;
  height: 32.4px;
}
.btn-floating.btn-small.halfway-fab {
  bottom: -16.2px;
}
.btn-floating.btn-small i {
  line-height: 32.4px;
}
.btn-floating.halfway-fab {
  position: absolute;
  right: 24px;
  bottom: -20px;
}
.btn-floating.halfway-fab.left {
  right: auto;
  left: 24px;
}
.btn-floating i {
  width: inherit;
  display: inline-block;
  text-align: center;
  color: #fff;
  font-size: 1.6rem;
  line-height: 40px;
}

button.btn-floating {
  border: none;
}

.fixed-action-btn {
  position: fixed;
  right: 23px;
  bottom: 23px;
  padding-top: 15px;
  margin-bottom: 0;
  z-index: 997;
}
.fixed-action-btn.active ul {
  visibility: visible;
}
.fixed-action-btn.direction-left, .fixed-action-btn.direction-right {
  padding: 0 0 0 15px;
}
.fixed-action-btn.direction-left ul, .fixed-action-btn.direction-right ul {
  text-align: right;
  right: 64px;
  top: 50%;
  transform: translateY(-50%);
  height: 100%;
  left: auto;
  /*width 100% only goes to width of button container */
  width: 500px;
}
.fixed-action-btn.direction-left ul li, .fixed-action-btn.direction-right ul li {
  display: inline-block;
  margin: 7.5px 15px 0 0;
}
.fixed-action-btn.direction-right {
  padding: 0 15px 0 0;
}
.fixed-action-btn.direction-right ul {
  text-align: left;
  direction: rtl;
  left: 64px;
  right: auto;
}
.fixed-action-btn.direction-right ul li {
  margin: 7.5px 0 0 15px;
}
.fixed-action-btn.direction-bottom {
  padding: 0 0 15px 0;
}
.fixed-action-btn.direction-bottom ul {
  top: 64px;
  bottom: auto;
  display: flex;
  flex-direction: column-reverse;
}
.fixed-action-btn.direction-bottom ul li {
  margin: 15px 0 0 0;
}
.fixed-action-btn.toolbar {
  padding: 0;
  height: 56px;
}
.fixed-action-btn.toolbar.active > a i {
  opacity: 0;
}
.fixed-action-btn.toolbar ul {
  display: flex;
  top: 0;
  bottom: 0;
  z-index: 1;
}
.fixed-action-btn.toolbar ul li {
  flex: 1;
  display: inline-block;
  margin: 0;
  height: 100%;
  transition: none;
}
.fixed-action-btn.toolbar ul li a {
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%;
  background-color: transparent;
  box-shadow: none;
  color: #fff;
  line-height: 56px;
  z-index: 1;
}
.fixed-action-btn.toolbar ul li a i {
  line-height: inherit;
}
.fixed-action-btn ul {
  left: 0;
  right: 0;
  text-align: center;
  position: absolute;
  bottom: 64px;
  margin: 0;
  visibility: hidden;
}
.fixed-action-btn ul li {
  margin-bottom: 15px;
}
.fixed-action-btn ul a.btn-floating {
  opacity: 0;
}
.fixed-action-btn .fab-backdrop {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 40px;
  height: 40px;
  background-color: #26a69a;
  border-radius: 50%;
  transform: scale(0);
}

.btn-flat {
  box-shadow: none;
  background-color: transparent;
  color: #343434;
  cursor: pointer;
  transition: background-color 0.2s;
}
.btn-flat:focus, .btn-flat:hover {
  box-shadow: none;
}
.btn-flat:focus {
  background-color: rgba(0, 0, 0, 0.1);
}
.btn-flat.disabled, .btn-flat.btn-flat[disabled] {
  background-color: transparent !important;
  color: #b3b3b3 !important;
  cursor: default;
}

.btn-large {
  height: 54px;
  line-height: 54px;
  font-size: 15px;
  padding: 0 28px;
}
.btn-large i {
  font-size: 1.6rem;
}

.btn-small {
  height: 32.4px;
  line-height: 32.4px;
  font-size: 13px;
}
.btn-small i {
  font-size: 1.2rem;
}

.btn-block {
  display: block;
}

.dropdown-content {
  background-color: #fff;
  margin: 0;
  display: none;
  min-width: 100px;
  overflow-y: auto;
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 9999;
  transform-origin: 0 0;
}
.dropdown-content:focus {
  outline: 0;
}
.dropdown-content li {
  clear: both;
  color: rgba(0, 0, 0, 0.87);
  cursor: pointer;
  min-height: 36px;
  line-height: 1.5rem;
  width: 100%;
  text-align: left;
}
.dropdown-content li:hover, .dropdown-content li.active {
  background-color: #eee;
}
.dropdown-content li:focus {
  outline: none;
}
.dropdown-content li.divider {
  min-height: 0;
  height: 1px;
}
.dropdown-content li > a, .dropdown-content li > span {
  font-size: 16px;
  color: #26a69a;
  display: block;
  line-height: 22px;
  padding: 7px 16px;
}
.dropdown-content li > span > label {
  top: 1px;
  left: 0;
  height: 18px;
}
.dropdown-content li > a > i {
  height: inherit;
  line-height: inherit;
  float: left;
  margin: 0 24px 0 0;
  width: 24px;
}

body.keyboard-focused .dropdown-content li:focus {
  background-color: #dadada;
}

.input-field.col .dropdown-content [type=checkbox] + label {
  top: 1px;
  left: 0;
  height: 18px;
  transform: none;
}

.dropdown-trigger {
  cursor: pointer;
}

/*!
 * Waves v0.6.0
 * http://fian.my.id/Waves
 *
 * Copyright 2014 Alfiana E. Sibuea and other contributors
 * Released under the MIT license
 * https://github.com/fians/Waves/blob/master/LICENSE
 */
.waves-effect {
  position: relative;
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  vertical-align: middle;
  z-index: 1;
  transition: 0.3s ease-out;
}
.waves-effect .waves-ripple {
  position: absolute;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  margin-left: -10px;
  opacity: 0;
  background: rgba(0, 0, 0, 0.2);
  transition: all 0.7s ease-out;
  transition-property: transform, opacity;
  transform: scale(0);
  pointer-events: none;
}
.waves-effect.waves-light .waves-ripple {
  background-color: rgba(255, 255, 255, 0.45);
}
.waves-effect.waves-red .waves-ripple {
  background-color: rgba(244, 67, 54, 0.7);
}
.waves-effect.waves-yellow .waves-ripple {
  background-color: rgba(255, 235, 59, 0.7);
}
.waves-effect.waves-orange .waves-ripple {
  background-color: rgba(255, 152, 0, 0.7);
}
.waves-effect.waves-purple .waves-ripple {
  background-color: rgba(156, 39, 176, 0.7);
}
.waves-effect.waves-green .waves-ripple {
  background-color: rgba(76, 175, 80, 0.7);
}
.waves-effect.waves-teal .waves-ripple {
  background-color: rgba(0, 150, 136, 0.7);
}
.waves-effect input[type=button], .waves-effect input[type=reset], .waves-effect input[type=submit] {
  border: 0;
  font-style: normal;
  font-size: inherit;
  text-transform: inherit;
  background: none;
}
.waves-effect img {
  position: relative;
  z-index: -1;
}

.waves-notransition {
  transition: none !important;
}

.waves-circle {
  transform: translateZ(0);
  -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%);
}

.waves-input-wrapper {
  border-radius: 0.2em;
  vertical-align: bottom;
}
.waves-input-wrapper .waves-button-input {
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
}

.waves-circle {
  text-align: center;
  width: 2.5em;
  height: 2.5em;
  line-height: 2.5em;
  border-radius: 50%;
  -webkit-mask-image: none;
}

.waves-block {
  display: block;
}

/* Firefox Bug: link not triggered */
.waves-effect .waves-ripple {
  z-index: -1;
}

.modal {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  background-color: #fafafa;
  padding: 0;
  max-height: 70%;
  width: 55%;
  margin: auto;
  overflow-y: auto;
  border-radius: 2px;
  will-change: top, opacity;
}
.modal:focus {
  outline: none;
}
@media only screen and (max-width : 992px) {
  .modal {
    width: 80%;
  }
}
.modal h1, .modal h2, .modal h3, .modal h4 {
  margin-top: 0;
}
.modal .modal-content {
  padding: 24px;
}
.modal .modal-close {
  cursor: pointer;
}
.modal .modal-footer {
  border-radius: 0 0 2px 2px;
  background-color: #fafafa;
  padding: 4px 6px;
  height: 56px;
  width: 100%;
  text-align: right;
}
.modal .modal-footer .btn, .modal .modal-footer .btn-large, .modal .modal-footer .btn-small, .modal .modal-footer .btn-flat {
  margin: 6px 0;
}

.modal-overlay {
  position: fixed;
  z-index: 999;
  top: -25%;
  left: 0;
  bottom: 0;
  right: 0;
  height: 125%;
  width: 100%;
  background: #000;
  display: none;
  will-change: opacity;
}

.modal.modal-fixed-footer {
  padding: 0;
  height: 70%;
}
.modal.modal-fixed-footer .modal-content {
  position: absolute;
  height: calc(100% - 56px);
  max-height: 100%;
  width: 100%;
  overflow-y: auto;
}
.modal.modal-fixed-footer .modal-footer {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  position: absolute;
  bottom: 0;
}

.modal.bottom-sheet {
  top: auto;
  bottom: -100%;
  margin: 0;
  width: 100%;
  max-height: 45%;
  border-radius: 0;
  will-change: bottom, opacity;
}

.collapsible {
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd;
  border-left: 1px solid #ddd;
  margin: 0.5rem 0 1rem 0;
}

.collapsible-header {
  display: flex;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  line-height: 1.5;
  padding: 1rem;
  background-color: #fff;
  border-bottom: 1px solid #ddd;
}
.collapsible-header:focus {
  outline: 0;
}
.collapsible-header i {
  width: 2rem;
  font-size: 1.6rem;
  display: inline-block;
  text-align: center;
  margin-right: 1rem;
}

.keyboard-focused .collapsible-header:focus {
  background-color: #eee;
}

.collapsible-body {
  display: none;
  border-bottom: 1px solid #ddd;
  box-sizing: border-box;
  padding: 2rem;
}

.sidenav .collapsible,
.sidenav.fixed .collapsible {
  border: none;
  box-shadow: none;
}
.sidenav .collapsible li,
.sidenav.fixed .collapsible li {
  padding: 0;
}
.sidenav .collapsible-header,
.sidenav.fixed .collapsible-header {
  background-color: transparent;
  border: none;
  line-height: inherit;
  height: inherit;
  padding: 0 16px;
}
.sidenav .collapsible-header:hover,
.sidenav.fixed .collapsible-header:hover {
  background-color: rgba(0, 0, 0, 0.05);
}
.sidenav .collapsible-header i,
.sidenav.fixed .collapsible-header i {
  line-height: inherit;
}
.sidenav .collapsible-body,
.sidenav.fixed .collapsible-body {
  border: 0;
  background-color: #fff;
}
.sidenav .collapsible-body li a,
.sidenav.fixed .collapsible-body li a {
  padding: 0 23.5px 0 31px;
}

.collapsible.popout {
  border: none;
  box-shadow: none;
}
.collapsible.popout > li {
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  margin: 0 24px;
  transition: margin 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.collapsible.popout > li.active {
  box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
  margin: 16px 0;
}

.chip {
  display: inline-block;
  height: 32px;
  font-size: 13px;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.6);
  line-height: 32px;
  padding: 0 12px;
  border-radius: 16px;
  background-color: #e4e4e4;
  margin-bottom: 5px;
  margin-right: 5px;
}
.chip:focus {
  outline: none;
  background-color: #26a69a;
  color: #fff;
}
.chip > img {
  float: left;
  margin: 0 8px 0 -12px;
  height: 32px;
  width: 32px;
  border-radius: 50%;
}
.chip .close {
  cursor: pointer;
  float: right;
  font-size: 16px;
  line-height: 32px;
  padding-left: 8px;
}

.chips {
  border: none;
  border-bottom: 1px solid #9e9e9e;
  box-shadow: none;
  margin: 0 0 8px 0;
  min-height: 45px;
  outline: none;
  transition: all 0.3s;
}
.chips.focus {
  border-bottom: 1px solid #26a69a;
  box-shadow: 0 1px 0 0 #26a69a;
}
.chips:hover {
  cursor: text;
}
.chips .input {
  background: none;
  border: 0;
  color: rgba(0, 0, 0, 0.6);
  display: inline-block;
  font-size: 16px;
  height: 3rem;
  line-height: 32px;
  outline: 0;
  margin: 0;
  padding: 0 !important;
  width: 120px !important;
}
.chips .input:focus {
  border: 0 !important;
  box-shadow: none !important;
}
.chips .autocomplete-content {
  margin-top: 0;
  margin-bottom: 0;
}

.prefix ~ .chips {
  margin-left: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}

.chips:empty ~ label {
  font-size: 0.8rem;
  transform: translateY(-140%);
}

.materialboxed {
  display: block;
  cursor: zoom-in;
  position: relative;
  transition: opacity 0.4s;
  -webkit-backface-visibility: hidden;
}
.materialboxed:hover:not(.active) {
  opacity: 0.8;
}
.materialboxed.active {
  cursor: zoom-out;
}

#materialbox-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #292929;
  z-index: 1000;
  will-change: opacity;
}

.materialbox-caption {
  position: fixed;
  display: none;
  color: #fff;
  line-height: 50px;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
  padding: 0% 15%;
  height: 50px;
  z-index: 1000;
  -webkit-font-smoothing: antialiased;
}

select:focus {
  outline: 1px solid #c9f3ef;
}

button:focus {
  outline: none;
  background-color: #2ab7a9;
}

label {
  font-size: 0.8rem;
  color: #9e9e9e;
}

/* Text Inputs + Textarea
   ========================================================================== */
/* Style Placeholders */
::placeholder {
  color: #d1d1d1;
}

/* Text inputs */
input:not([type]),
input[type=text]:not(.browser-default),
input[type=password]:not(.browser-default),
input[type=email]:not(.browser-default),
input[type=url]:not(.browser-default),
input[type=time]:not(.browser-default),
input[type=date]:not(.browser-default),
input[type=datetime]:not(.browser-default),
input[type=datetime-local]:not(.browser-default),
input[type=tel]:not(.browser-default),
input[type=number]:not(.browser-default),
input[type=search]:not(.browser-default),
textarea.materialize-textarea {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #9e9e9e;
  border-radius: 0;
  outline: none;
  height: 3rem;
  width: 100%;
  font-size: 16px;
  margin: 0 0 8px 0;
  padding: 0;
  box-shadow: none;
  box-sizing: content-box;
  transition: box-shadow 0.3s, border 0.3s;
}
input:not([type]):disabled, input:not([type])[readonly=readonly],
input[type=text]:not(.browser-default):disabled,
input[type=text]:not(.browser-default)[readonly=readonly],
input[type=password]:not(.browser-default):disabled,
input[type=password]:not(.browser-default)[readonly=readonly],
input[type=email]:not(.browser-default):disabled,
input[type=email]:not(.browser-default)[readonly=readonly],
input[type=url]:not(.browser-default):disabled,
input[type=url]:not(.browser-default)[readonly=readonly],
input[type=time]:not(.browser-default):disabled,
input[type=time]:not(.browser-default)[readonly=readonly],
input[type=date]:not(.browser-default):disabled,
input[type=date]:not(.browser-default)[readonly=readonly],
input[type=datetime]:not(.browser-default):disabled,
input[type=datetime]:not(.browser-default)[readonly=readonly],
input[type=datetime-local]:not(.browser-default):disabled,
input[type=datetime-local]:not(.browser-default)[readonly=readonly],
input[type=tel]:not(.browser-default):disabled,
input[type=tel]:not(.browser-default)[readonly=readonly],
input[type=number]:not(.browser-default):disabled,
input[type=number]:not(.browser-default)[readonly=readonly],
input[type=search]:not(.browser-default):disabled,
input[type=search]:not(.browser-default)[readonly=readonly],
textarea.materialize-textarea:disabled,
textarea.materialize-textarea[readonly=readonly] {
  color: rgba(0, 0, 0, 0.42);
  border-bottom: 1px dotted rgba(0, 0, 0, 0.42);
}
input:not([type]):disabled + label, input:not([type])[readonly=readonly] + label,
input[type=text]:not(.browser-default):disabled + label,
input[type=text]:not(.browser-default)[readonly=readonly] + label,
input[type=password]:not(.browser-default):disabled + label,
input[type=password]:not(.browser-default)[readonly=readonly] + label,
input[type=email]:not(.browser-default):disabled + label,
input[type=email]:not(.browser-default)[readonly=readonly] + label,
input[type=url]:not(.browser-default):disabled + label,
input[type=url]:not(.browser-default)[readonly=readonly] + label,
input[type=time]:not(.browser-default):disabled + label,
input[type=time]:not(.browser-default)[readonly=readonly] + label,
input[type=date]:not(.browser-default):disabled + label,
input[type=date]:not(.browser-default)[readonly=readonly] + label,
input[type=datetime]:not(.browser-default):disabled + label,
input[type=datetime]:not(.browser-default)[readonly=readonly] + label,
input[type=datetime-local]:not(.browser-default):disabled + label,
input[type=datetime-local]:not(.browser-default)[readonly=readonly] + label,
input[type=tel]:not(.browser-default):disabled + label,
input[type=tel]:not(.browser-default)[readonly=readonly] + label,
input[type=number]:not(.browser-default):disabled + label,
input[type=number]:not(.browser-default)[readonly=readonly] + label,
input[type=search]:not(.browser-default):disabled + label,
input[type=search]:not(.browser-default)[readonly=readonly] + label,
textarea.materialize-textarea:disabled + label,
textarea.materialize-textarea[readonly=readonly] + label {
  color: rgba(0, 0, 0, 0.42);
}
input:not([type]):focus:not([readonly]),
input[type=text]:not(.browser-default):focus:not([readonly]),
input[type=password]:not(.browser-default):focus:not([readonly]),
input[type=email]:not(.browser-default):focus:not([readonly]),
input[type=url]:not(.browser-default):focus:not([readonly]),
input[type=time]:not(.browser-default):focus:not([readonly]),
input[type=date]:not(.browser-default):focus:not([readonly]),
input[type=datetime]:not(.browser-default):focus:not([readonly]),
input[type=datetime-local]:not(.browser-default):focus:not([readonly]),
input[type=tel]:not(.browser-default):focus:not([readonly]),
input[type=number]:not(.browser-default):focus:not([readonly]),
input[type=search]:not(.browser-default):focus:not([readonly]),
textarea.materialize-textarea:focus:not([readonly]) {
  border-bottom: 1px solid #26a69a;
  box-shadow: 0 1px 0 0 #26a69a;
}
input:not([type]):focus:not([readonly]) + label,
input[type=text]:not(.browser-default):focus:not([readonly]) + label,
input[type=password]:not(.browser-default):focus:not([readonly]) + label,
input[type=email]:not(.browser-default):focus:not([readonly]) + label,
input[type=url]:not(.browser-default):focus:not([readonly]) + label,
input[type=time]:not(.browser-default):focus:not([readonly]) + label,
input[type=date]:not(.browser-default):focus:not([readonly]) + label,
input[type=datetime]:not(.browser-default):focus:not([readonly]) + label,
input[type=datetime-local]:not(.browser-default):focus:not([readonly]) + label,
input[type=tel]:not(.browser-default):focus:not([readonly]) + label,
input[type=number]:not(.browser-default):focus:not([readonly]) + label,
input[type=search]:not(.browser-default):focus:not([readonly]) + label,
textarea.materialize-textarea:focus:not([readonly]) + label {
  color: #26a69a;
}
input:not([type]):focus.valid ~ label,
input[type=text]:not(.browser-default):focus.valid ~ label,
input[type=password]:not(.browser-default):focus.valid ~ label,
input[type=email]:not(.browser-default):focus.valid ~ label,
input[type=url]:not(.browser-default):focus.valid ~ label,
input[type=time]:not(.browser-default):focus.valid ~ label,
input[type=date]:not(.browser-default):focus.valid ~ label,
input[type=datetime]:not(.browser-default):focus.valid ~ label,
input[type=datetime-local]:not(.browser-default):focus.valid ~ label,
input[type=tel]:not(.browser-default):focus.valid ~ label,
input[type=number]:not(.browser-default):focus.valid ~ label,
input[type=search]:not(.browser-default):focus.valid ~ label,
textarea.materialize-textarea:focus.valid ~ label {
  color: #4CAF50;
}
input:not([type]):focus.invalid ~ label,
input[type=text]:not(.browser-default):focus.invalid ~ label,
input[type=password]:not(.browser-default):focus.invalid ~ label,
input[type=email]:not(.browser-default):focus.invalid ~ label,
input[type=url]:not(.browser-default):focus.invalid ~ label,
input[type=time]:not(.browser-default):focus.invalid ~ label,
input[type=date]:not(.browser-default):focus.invalid ~ label,
input[type=datetime]:not(.browser-default):focus.invalid ~ label,
input[type=datetime-local]:not(.browser-default):focus.invalid ~ label,
input[type=tel]:not(.browser-default):focus.invalid ~ label,
input[type=number]:not(.browser-default):focus.invalid ~ label,
input[type=search]:not(.browser-default):focus.invalid ~ label,
textarea.materialize-textarea:focus.invalid ~ label {
  color: #F44336;
}
input:not([type]).validate + label,
input[type=text]:not(.browser-default).validate + label,
input[type=password]:not(.browser-default).validate + label,
input[type=email]:not(.browser-default).validate + label,
input[type=url]:not(.browser-default).validate + label,
input[type=time]:not(.browser-default).validate + label,
input[type=date]:not(.browser-default).validate + label,
input[type=datetime]:not(.browser-default).validate + label,
input[type=datetime-local]:not(.browser-default).validate + label,
input[type=tel]:not(.browser-default).validate + label,
input[type=number]:not(.browser-default).validate + label,
input[type=search]:not(.browser-default).validate + label,
textarea.materialize-textarea.validate + label {
  width: 100%;
}
/* Validation Sass Placeholders */
.select-wrapper.valid > input.select-dropdown, input:not([type]).valid, input:not([type]):focus.valid,
input[type=text]:not(.browser-default).valid,
input[type=text]:not(.browser-default):focus.valid,
input[type=password]:not(.browser-default).valid,
input[type=password]:not(.browser-default):focus.valid,
input[type=email]:not(.browser-default).valid,
input[type=email]:not(.browser-default):focus.valid,
input[type=url]:not(.browser-default).valid,
input[type=url]:not(.browser-default):focus.valid,
input[type=time]:not(.browser-default).valid,
input[type=time]:not(.browser-default):focus.valid,
input[type=date]:not(.browser-default).valid,
input[type=date]:not(.browser-default):focus.valid,
input[type=datetime]:not(.browser-default).valid,
input[type=datetime]:not(.browser-default):focus.valid,
input[type=datetime-local]:not(.browser-default).valid,
input[type=datetime-local]:not(.browser-default):focus.valid,
input[type=tel]:not(.browser-default).valid,
input[type=tel]:not(.browser-default):focus.valid,
input[type=number]:not(.browser-default).valid,
input[type=number]:not(.browser-default):focus.valid,
input[type=search]:not(.browser-default).valid,
input[type=search]:not(.browser-default):focus.valid,
textarea.materialize-textarea.valid,
textarea.materialize-textarea:focus.valid {
  border-bottom: 1px solid #4CAF50;
  box-shadow: 0 1px 0 0 #4CAF50;
}

.select-wrapper.invalid > input.select-dropdown, .select-wrapper.invalid > input.select-dropdown:focus, input:not([type]).invalid, input:not([type]):focus.invalid,
input[type=text]:not(.browser-default).invalid,
input[type=text]:not(.browser-default):focus.invalid,
input[type=password]:not(.browser-default).invalid,
input[type=password]:not(.browser-default):focus.invalid,
input[type=email]:not(.browser-default).invalid,
input[type=email]:not(.browser-default):focus.invalid,
input[type=url]:not(.browser-default).invalid,
input[type=url]:not(.browser-default):focus.invalid,
input[type=time]:not(.browser-default).invalid,
input[type=time]:not(.browser-default):focus.invalid,
input[type=date]:not(.browser-default).invalid,
input[type=date]:not(.browser-default):focus.invalid,
input[type=datetime]:not(.browser-default).invalid,
input[type=datetime]:not(.browser-default):focus.invalid,
input[type=datetime-local]:not(.browser-default).invalid,
input[type=datetime-local]:not(.browser-default):focus.invalid,
input[type=tel]:not(.browser-default).invalid,
input[type=tel]:not(.browser-default):focus.invalid,
input[type=number]:not(.browser-default).invalid,
input[type=number]:not(.browser-default):focus.invalid,
input[type=search]:not(.browser-default).invalid,
input[type=search]:not(.browser-default):focus.invalid,
textarea.materialize-textarea.invalid,
textarea.materialize-textarea:focus.invalid {
  border-bottom: 1px solid #F44336;
  box-shadow: 0 1px 0 0 #F44336;
}

.select-wrapper.valid .helper-text[data-success], .select-wrapper.invalid ~ .helper-text[data-error], input:not([type]).valid ~ .helper-text[data-success], input:not([type]):focus.valid ~ .helper-text[data-success], input:not([type]).invalid ~ .helper-text[data-error], input:not([type]):focus.invalid ~ .helper-text[data-error],
input[type=text]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=text]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=password]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=password]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=email]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=email]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=url]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=url]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=time]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=time]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=date]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=date]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=datetime]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=datetime]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=datetime-local]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=datetime-local]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=tel]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=tel]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=number]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=number]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=search]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=search]:not(.browser-default).invalid ~ .helper-text[data-error],
textarea.materialize-textarea.valid ~ .helper-text[data-success],
textarea.materialize-textarea:focus.valid ~ .helper-text[data-success],
textarea.materialize-textarea.invalid ~ .helper-text[data-error],
textarea.materialize-textarea:focus.invalid ~ .helper-text[data-error] {
  color: transparent;
  user-select: none;
  pointer-events: none;
}

.select-wrapper.valid ~ .helper-text:after, input:not([type]).valid ~ .helper-text:after, input:not([type]):focus.valid ~ .helper-text:after,
input[type=text]:not(.browser-default).valid ~ .helper-text:after,
input[type=text]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=password]:not(.browser-default).valid ~ .helper-text:after,
input[type=password]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=email]:not(.browser-default).valid ~ .helper-text:after,
input[type=email]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=url]:not(.browser-default).valid ~ .helper-text:after,
input[type=url]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=time]:not(.browser-default).valid ~ .helper-text:after,
input[type=time]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=date]:not(.browser-default).valid ~ .helper-text:after,
input[type=date]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=datetime]:not(.browser-default).valid ~ .helper-text:after,
input[type=datetime]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=datetime-local]:not(.browser-default).valid ~ .helper-text:after,
input[type=datetime-local]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=tel]:not(.browser-default).valid ~ .helper-text:after,
input[type=tel]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=number]:not(.browser-default).valid ~ .helper-text:after,
input[type=number]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=search]:not(.browser-default).valid ~ .helper-text:after,
input[type=search]:not(.browser-default):focus.valid ~ .helper-text:after,
textarea.materialize-textarea.valid ~ .helper-text:after,
textarea.materialize-textarea:focus.valid ~ .helper-text:after {
  content: attr(data-success);
  color: #4CAF50;
}

.select-wrapper.invalid ~ .helper-text:after, input:not([type]).invalid ~ .helper-text:after, input:not([type]):focus.invalid ~ .helper-text:after,
input[type=text]:not(.browser-default).invalid ~ .helper-text:after,
input[type=text]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=password]:not(.browser-default).invalid ~ .helper-text:after,
input[type=password]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=email]:not(.browser-default).invalid ~ .helper-text:after,
input[type=email]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=url]:not(.browser-default).invalid ~ .helper-text:after,
input[type=url]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=time]:not(.browser-default).invalid ~ .helper-text:after,
input[type=time]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=date]:not(.browser-default).invalid ~ .helper-text:after,
input[type=date]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=datetime]:not(.browser-default).invalid ~ .helper-text:after,
input[type=datetime]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=datetime-local]:not(.browser-default).invalid ~ .helper-text:after,
input[type=datetime-local]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=tel]:not(.browser-default).invalid ~ .helper-text:after,
input[type=tel]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=number]:not(.browser-default).invalid ~ .helper-text:after,
input[type=number]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=search]:not(.browser-default).invalid ~ .helper-text:after,
input[type=search]:not(.browser-default):focus.invalid ~ .helper-text:after,
textarea.materialize-textarea.invalid ~ .helper-text:after,
textarea.materialize-textarea:focus.invalid ~ .helper-text:after {
  content: attr(data-error);
  color: #F44336;
}

.select-wrapper + label:after, input:not([type]) + label:after,
input[type=text]:not(.browser-default) + label:after,
input[type=password]:not(.browser-default) + label:after,
input[type=email]:not(.browser-default) + label:after,
input[type=url]:not(.browser-default) + label:after,
input[type=time]:not(.browser-default) + label:after,
input[type=date]:not(.browser-default) + label:after,
input[type=datetime]:not(.browser-default) + label:after,
input[type=datetime-local]:not(.browser-default) + label:after,
input[type=tel]:not(.browser-default) + label:after,
input[type=number]:not(.browser-default) + label:after,
input[type=search]:not(.browser-default) + label:after,
textarea.materialize-textarea + label:after {
  display: block;
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  opacity: 0;
  transition: 0.2s opacity ease-out, 0.2s color ease-out;
}

.input-field {
  position: relative;
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.input-field.inline {
  display: inline-block;
  vertical-align: middle;
  margin-left: 5px;
}
.input-field.inline input,
.input-field.inline .select-dropdown {
  margin-bottom: 1rem;
}
.input-field.col label {
  left: 0.75rem;
}
.input-field.col .prefix ~ label,
.input-field.col .prefix ~ .validate ~ label {
  width: calc(100% - 3rem - 1.5rem);
}
.input-field > label {
  color: #9e9e9e;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1rem;
  cursor: text;
  transition: transform 0.2s ease-out, color 0.2s ease-out;
  transform-origin: 0% 100%;
  text-align: initial;
  transform: translateY(12px);
}
.input-field > label:not(.label-icon).active {
  transform: translateY(-14px) scale(0.8);
  transform-origin: 0 0;
}
.input-field > input[type]:-webkit-autofill:not(.browser-default):not([type=search]) + label, .input-field > input[type=date]:not(.browser-default) + label, .input-field > input[type=time]:not(.browser-default) + label {
  transform: translateY(-14px) scale(0.8);
  transform-origin: 0 0;
}
.input-field .helper-text {
  position: relative;
  min-height: 18px;
  display: block;
  font-size: 12px;
  color: rgba(0, 0, 0, 0.54);
}
.input-field .helper-text::after {
  opacity: 1;
  position: absolute;
  top: 0;
  left: 0;
}
.input-field .prefix {
  position: absolute;
  width: 3rem;
  font-size: 2rem;
  transition: color 0.2s;
  top: 0.5rem;
}
.input-field .prefix.active {
  color: #26a69a;
}
.input-field .prefix ~ input,
.input-field .prefix ~ textarea,
.input-field .prefix ~ label,
.input-field .prefix ~ .validate ~ label,
.input-field .prefix ~ .helper-text,
.input-field .prefix ~ .autocomplete-content {
  margin-left: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}
.input-field .prefix ~ label {
  margin-left: 3rem;
}
@media only screen and (max-width : 992px) {
  .input-field .prefix ~ input {
    width: 86%;
    width: calc(100% - 3rem);
  }
}
@media only screen and (max-width : 600px) {
  .input-field .prefix ~ input {
    width: 80%;
    width: calc(100% - 3rem);
  }
}

/* Search Field */
.input-field input[type=search] {
  display: block;
  line-height: inherit;
  transition: 0.3s background-color;
}
.nav-wrapper .input-field input[type=search] {
  height: inherit;
  padding-left: 4rem;
  width: calc(100% - 4rem);
  border: 0;
  box-shadow: none;
}
.input-field input[type=search]:focus:not(.browser-default) {
  background-color: #fff;
  border: 0;
  box-shadow: none;
  color: #444;
}
.input-field input[type=search]:focus:not(.browser-default) + label i, .input-field input[type=search]:focus:not(.browser-default) ~ .mdi-navigation-close, .input-field input[type=search]:focus:not(.browser-default) ~ .material-icons {
  color: #444;
}
.input-field input[type=search] + .label-icon {
  transform: none;
  left: 1rem;
}
.input-field input[type=search] ~ .mdi-navigation-close, .input-field input[type=search] ~ .material-icons {
  position: absolute;
  top: 0;
  right: 1rem;
  color: transparent;
  cursor: pointer;
  font-size: 2rem;
  transition: 0.3s color;
}

/* Textarea */
textarea {
  width: 100%;
  height: 3rem;
  background-color: transparent;
}
textarea.materialize-textarea {
  line-height: normal;
  overflow-y: hidden;
  /* prevents scroll bar flash */
  padding: 0.8rem 0 0.8rem 0;
  /* prevents text jump on Enter keypress */
  resize: none;
  min-height: 3rem;
  box-sizing: border-box;
}

.hiddendiv {
  visibility: hidden;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow-wrap: break-word;
  /* future version of deprecated 'word-wrap' */
  padding-top: 1.2rem;
  /* prevents text jump on Enter keypress */
  position: absolute;
  top: 0;
  z-index: -1;
}

/* Autocomplete */
.autocomplete-content li .highlight {
  color: #444;
}
.autocomplete-content li img {
  height: 26px;
  width: 26px;
  margin: 5px 15px;
}

/* Character Counter */
.character-counter {
  min-height: 18px;
}

/* Radio Buttons
   ========================================================================== */
[type=radio]:not(:checked),
[type=radio]:checked {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

[type=radio]:not(:checked) + span,
[type=radio]:checked + span {
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  display: inline-block;
  height: 25px;
  line-height: 25px;
  font-size: 1rem;
  transition: 0.28s ease;
  user-select: none;
}

[type=radio] + span:before,
[type=radio] + span:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  margin: 4px;
  width: 16px;
  height: 16px;
  z-index: 0;
  transition: 0.28s ease;
}

/* Unchecked styles */
[type=radio]:not(:checked) + span:before,
[type=radio]:not(:checked) + span:after,
[type=radio]:checked + span:before,
[type=radio]:checked + span:after,
[type=radio].with-gap:checked + span:before,
[type=radio].with-gap:checked + span:after {
  border-radius: 50%;
}

[type=radio]:not(:checked) + span:before,
[type=radio]:not(:checked) + span:after {
  border: 2px solid #5a5a5a;
}

[type=radio]:not(:checked) + span:after {
  transform: scale(0);
}

/* Checked styles */
[type=radio]:checked + span:before {
  border: 2px solid transparent;
}

[type=radio]:checked + span:after,
[type=radio].with-gap:checked + span:before,
[type=radio].with-gap:checked + span:after {
  border: 2px solid #26a69a;
}

[type=radio]:checked + span:after,
[type=radio].with-gap:checked + span:after {
  background-color: #26a69a;
}

[type=radio]:checked + span:after {
  transform: scale(1.02);
}

/* Radio With gap */
[type=radio].with-gap:checked + span:after {
  transform: scale(0.5);
}

/* Focused styles */
[type=radio].tabbed:focus + span:before {
  box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1);
}

/* Disabled Radio With gap */
[type=radio].with-gap:disabled:checked + span:before {
  border: 2px solid rgba(0, 0, 0, 0.42);
}

[type=radio].with-gap:disabled:checked + span:after {
  border: none;
  background-color: rgba(0, 0, 0, 0.42);
}

/* Disabled style */
[type=radio]:disabled:not(:checked) + span:before,
[type=radio]:disabled:checked + span:before {
  background-color: transparent;
  border-color: rgba(0, 0, 0, 0.42);
}

[type=radio]:disabled + span {
  color: rgba(0, 0, 0, 0.42);
}

[type=radio]:disabled:not(:checked) + span:before {
  border-color: rgba(0, 0, 0, 0.42);
}

[type=radio]:disabled:checked + span:after {
  background-color: rgba(0, 0, 0, 0.42);
  border-color: #949494;
}

/* Checkboxes
   ========================================================================== */
/* Remove default checkbox */
[type=checkbox]:not(:checked),
[type=checkbox]:checked {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

[type=checkbox] {
  /* checkbox aspect */
}
[type=checkbox] + span:not(.lever) {
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  display: inline-block;
  height: 25px;
  line-height: 25px;
  font-size: 1rem;
  user-select: none;
}
[type=checkbox] + span:not(.lever):before, [type=checkbox]:not(.filled-in) + span:not(.lever):after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  height: 18px;
  z-index: 0;
  border: 2px solid #5a5a5a;
  border-radius: 1px;
  margin-top: 3px;
  transition: 0.2s;
}
[type=checkbox]:not(.filled-in) + span:not(.lever):after {
  border: 0;
  transform: scale(0);
}
[type=checkbox]:not(:checked):disabled + span:not(.lever):before {
  border: none;
  background-color: rgba(0, 0, 0, 0.42);
}
[type=checkbox].tabbed:focus + span:not(.lever):after {
  transform: scale(1);
  border: 0;
  border-radius: 50%;
  box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1);
  background-color: rgba(0, 0, 0, 0.1);
}

[type=checkbox]:checked + span:not(.lever):before {
  top: -4px;
  left: -5px;
  width: 12px;
  height: 22px;
  border-top: 2px solid transparent;
  border-left: 2px solid transparent;
  border-right: 2px solid #26a69a;
  border-bottom: 2px solid #26a69a;
  transform: rotate(40deg);
  backface-visibility: hidden;
  transform-origin: 100% 100%;
}
[type=checkbox]:checked:disabled + span:before {
  border-right: 2px solid rgba(0, 0, 0, 0.42);
  border-bottom: 2px solid rgba(0, 0, 0, 0.42);
}

/* Indeterminate checkbox */
[type=checkbox]:indeterminate + span:not(.lever):before {
  top: -11px;
  left: -12px;
  width: 10px;
  height: 22px;
  border-top: none;
  border-left: none;
  border-right: 2px solid #26a69a;
  border-bottom: none;
  transform: rotate(90deg);
  backface-visibility: hidden;
  transform-origin: 100% 100%;
}
[type=checkbox]:indeterminate:disabled + span:not(.lever):before {
  border-right: 2px solid rgba(0, 0, 0, 0.42);
  background-color: transparent;
}

[type=checkbox].filled-in + span:not(.lever):after {
  border-radius: 2px;
}
[type=checkbox].filled-in + span:not(.lever):before,
[type=checkbox].filled-in + span:not(.lever):after {
  content: "";
  left: 0;
  position: absolute;
  /* .1s delay is for check animation */
  transition: border 0.25s, background-color 0.25s, width 0.2s 0.1s, height 0.2s 0.1s, top 0.2s 0.1s, left 0.2s 0.1s;
  z-index: 1;
}
[type=checkbox].filled-in:not(:checked) + span:not(.lever):before {
  width: 0;
  height: 0;
  border: 3px solid transparent;
  left: 6px;
  top: 10px;
  transform: rotateZ(37deg);
  transform-origin: 100% 100%;
}
[type=checkbox].filled-in:not(:checked) + span:not(.lever):after {
  height: 20px;
  width: 20px;
  background-color: transparent;
  border: 2px solid #5a5a5a;
  top: 0px;
  z-index: 0;
}
[type=checkbox].filled-in:checked + span:not(.lever):before {
  top: 0;
  left: 1px;
  width: 8px;
  height: 13px;
  border-top: 2px solid transparent;
  border-left: 2px solid transparent;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotateZ(37deg);
  transform-origin: 100% 100%;
}
[type=checkbox].filled-in:checked + span:not(.lever):after {
  top: 0;
  width: 20px;
  height: 20px;
  border: 2px solid #26a69a;
  background-color: #26a69a;
  z-index: 0;
}
[type=checkbox].filled-in.tabbed:focus + span:not(.lever):after {
  border-radius: 2px;
  border-color: #5a5a5a;
  background-color: rgba(0, 0, 0, 0.1);
}
[type=checkbox].filled-in.tabbed:checked:focus + span:not(.lever):after {
  border-radius: 2px;
  background-color: #26a69a;
  border-color: #26a69a;
}
[type=checkbox].filled-in:disabled:not(:checked) + span:not(.lever):before {
  background-color: transparent;
  border: 2px solid transparent;
}
[type=checkbox].filled-in:disabled:not(:checked) + span:not(.lever):after {
  border-color: transparent;
  background-color: #949494;
}
[type=checkbox].filled-in:disabled:checked + span:not(.lever):before {
  background-color: transparent;
}
[type=checkbox].filled-in:disabled:checked + span:not(.lever):after {
  background-color: #949494;
  border-color: #949494;
}

/* Switch
   ========================================================================== */
.switch,
.switch * {
  -webkit-tap-highlight-color: transparent;
  user-select: none;
}

.switch label {
  cursor: pointer;
}

.switch label input[type=checkbox] {
  opacity: 0;
  width: 0;
  height: 0;
}
.switch label input[type=checkbox]:checked + .lever {
  background-color: #84c7c1;
}
.switch label input[type=checkbox]:checked + .lever:before, .switch label input[type=checkbox]:checked + .lever:after {
  left: 18px;
}
.switch label input[type=checkbox]:checked + .lever:after {
  background-color: #26a69a;
}

.switch label .lever {
  content: "";
  display: inline-block;
  position: relative;
  width: 36px;
  height: 14px;
  background-color: rgba(0, 0, 0, 0.38);
  border-radius: 15px;
  margin-right: 10px;
  transition: background 0.3s ease;
  vertical-align: middle;
  margin: 0 16px;
}
.switch label .lever:before, .switch label .lever:after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  left: 0;
  top: -3px;
  transition: left 0.3s ease, background 0.3s ease, box-shadow 0.1s ease, transform 0.1s ease;
}
.switch label .lever:before {
  background-color: rgba(38, 166, 154, 0.15);
}
.switch label .lever:after {
  background-color: #F1F1F1;
  box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
}

input[type=checkbox]:checked:not(:disabled) ~ .lever:active::before,
input[type=checkbox]:checked:not(:disabled).tabbed:focus ~ .lever::before {
  transform: scale(2.4);
  background-color: rgba(38, 166, 154, 0.15);
}

input[type=checkbox]:not(:disabled) ~ .lever:active:before,
input[type=checkbox]:not(:disabled).tabbed:focus ~ .lever::before {
  transform: scale(2.4);
  background-color: rgba(0, 0, 0, 0.08);
}

.switch input[type=checkbox][disabled] + .lever {
  cursor: default;
  background-color: rgba(0, 0, 0, 0.12);
}

.switch label input[type=checkbox][disabled] + .lever:after,
.switch label input[type=checkbox][disabled]:checked + .lever:after {
  background-color: #949494;
}

/* Select Field
   ========================================================================== */
select {
  display: none;
}

select.browser-default {
  display: block;
}

select {
  background-color: rgba(255, 255, 255, 0.9);
  width: 100%;
  padding: 5px;
  border: 1px solid #f2f2f2;
  border-radius: 2px;
  height: 3rem;
}

.select-label {
  position: absolute;
}

.select-wrapper {
  position: relative;
}
.select-wrapper.valid + label, .select-wrapper.invalid + label {
  width: 100%;
  pointer-events: none;
}
.select-wrapper input.select-dropdown {
  position: relative;
  cursor: pointer;
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #9e9e9e;
  outline: none;
  height: 3rem;
  line-height: 3rem;
  width: 100%;
  font-size: 16px;
  margin: 0 0 8px 0;
  padding: 0;
  display: block;
  user-select: none;
  z-index: 1;
}
.select-wrapper input.select-dropdown:focus {
  border-bottom: 1px solid #26a69a;
}
.select-wrapper .caret {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  z-index: 0;
  fill: rgba(0, 0, 0, 0.87);
}
.select-wrapper + label {
  position: absolute;
  top: -26px;
  font-size: 0.8rem;
}

select:disabled {
  color: rgba(0, 0, 0, 0.42);
}

.select-wrapper.disabled + label {
  color: rgba(0, 0, 0, 0.42);
}
.select-wrapper.disabled .caret {
  fill: rgba(0, 0, 0, 0.42);
}

.select-wrapper input.select-dropdown:disabled {
  color: rgba(0, 0, 0, 0.42);
  cursor: default;
  user-select: none;
}

.select-wrapper i {
  color: rgba(0, 0, 0, 0.3);
}

.select-dropdown li.disabled,
.select-dropdown li.disabled > span,
.select-dropdown li.optgroup {
  color: rgba(0, 0, 0, 0.3);
  background-color: transparent;
}

body.keyboard-focused .select-dropdown.dropdown-content li:focus {
  background-color: rgba(0, 0, 0, 0.08);
}

.select-dropdown.dropdown-content li:hover {
  background-color: rgba(0, 0, 0, 0.08);
}
.select-dropdown.dropdown-content li.selected {
  background-color: rgba(0, 0, 0, 0.03);
}

.prefix ~ .select-wrapper {
  margin-left: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}

.prefix ~ label {
  margin-left: 3rem;
}

.select-dropdown li img {
  height: 26px;
  width: 26px;
  margin: 5px 15px;
  float: right;
}

.select-dropdown li.optgroup {
  border-top: 1px solid #eee;
}
.select-dropdown li.optgroup.selected > span {
  color: rgba(0, 0, 0, 0.7);
}
.select-dropdown li.optgroup > span {
  color: rgba(0, 0, 0, 0.4);
}
.select-dropdown li.optgroup ~ li.optgroup-option {
  padding-left: 1rem;
}

/* File Input
   ========================================================================== */
.file-field {
  position: relative;
}
.file-field .file-path-wrapper {
  overflow: hidden;
  padding-left: 10px;
}
.file-field input.file-path {
  width: 100%;
}
.file-field .btn, .file-field .btn-large, .file-field .btn-small {
  float: left;
  height: 3rem;
  line-height: 3rem;
}
.file-field span {
  cursor: pointer;
}
.file-field input[type=file] {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  margin: 0;
  padding: 0;
  font-size: 20px;
  cursor: pointer;
  opacity: 0;
  filter: alpha(opacity=0);
}
.file-field input[type=file]::-webkit-file-upload-button {
  display: none;
}

/* Range
   ========================================================================== */
.range-field {
  position: relative;
}

input[type=range],
input[type=range] + .thumb {
  cursor: pointer;
}

input[type=range] {
  position: relative;
  background-color: transparent;
  border: none;
  outline: none;
  width: 100%;
  margin: 15px 0;
  padding: 0;
}
input[type=range]:focus {
  outline: none;
}

input[type=range] + .thumb {
  position: absolute;
  top: 10px;
  left: 0;
  border: none;
  height: 0;
  width: 0;
  border-radius: 50%;
  background-color: #26a69a;
  margin-left: 7px;
  transform-origin: 50% 50%;
  transform: rotate(-45deg);
}
input[type=range] + .thumb .value {
  display: block;
  width: 30px;
  text-align: center;
  color: #26a69a;
  font-size: 0;
  transform: rotate(45deg);
}
input[type=range] + .thumb.active {
  border-radius: 50% 50% 50% 0;
}
input[type=range] + .thumb.active .value {
  color: #fff;
  margin-left: -1px;
  margin-top: 8px;
  font-size: 10px;
}

input[type=range] {
  -webkit-appearance: none;
}

input[type=range]::-webkit-slider-runnable-track {
  height: 3px;
  background: #c2c0c2;
  border: none;
}

input[type=range]::-webkit-slider-thumb {
  border: none;
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background: #26a69a;
  transition: box-shadow 0.3s;
  -webkit-appearance: none;
  background-color: #26a69a;
  transform-origin: 50% 50%;
  margin: -5px 0 0 0;
}

.keyboard-focused input[type=range]:focus:not(.active)::-webkit-slider-thumb {
  box-shadow: 0 0 0 10px rgba(38, 166, 154, 0.26);
}

input[type=range] {
  /* fix for FF unable to apply focus style bug  */
  border: 1px solid white;
  /*required for proper track sizing in FF*/
}

input[type=range]::-moz-range-track {
  height: 3px;
  background: #c2c0c2;
  border: none;
}

input[type=range]::-moz-focus-inner {
  border: 0;
}

input[type=range]::-moz-range-thumb {
  border: none;
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background: #26a69a;
  transition: box-shadow 0.3s;
  margin-top: -5px;
}

input[type=range]:-moz-focusring {
  outline: 1px solid #fff;
  outline-offset: -1px;
}

.keyboard-focused input[type=range]:focus:not(.active)::-moz-range-thumb {
  box-shadow: 0 0 0 10px rgba(38, 166, 154, 0.26);
}

input[type=range]::-ms-track {
  height: 3px;
  background: transparent;
  border-color: transparent;
  border-width: 6px 0;
  /*remove default tick marks*/
  color: transparent;
}

input[type=range]::-ms-fill-lower {
  background: #777;
}

input[type=range]::-ms-fill-upper {
  background: #ddd;
}

input[type=range]::-ms-thumb {
  border: none;
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background: #26a69a;
  transition: box-shadow 0.3s;
}

.keyboard-focused input[type=range]:focus:not(.active)::-ms-thumb {
  box-shadow: 0 0 0 10px rgba(38, 166, 154, 0.26);
}

/***************
    Nav List
***************/
.table-of-contents.fixed {
  position: fixed;
}
.table-of-contents li {
  padding: 2px 0;
}
.table-of-contents a {
  display: inline-block;
  font-weight: 300;
  color: #757575;
  padding-left: 16px;
  height: 1.5rem;
  line-height: 1.5rem;
  letter-spacing: 0.4;
  display: inline-block;
}
.table-of-contents a:hover {
  color: #a8a8a8;
  padding-left: 15px;
  border-left: 1px solid #29b6f6;
}
.table-of-contents a.active {
  font-weight: 500;
  padding-left: 14px;
  border-left: 2px solid #29b6f6;
}

.sidenav {
  position: fixed;
  width: 300px;
  left: 0;
  top: 0;
  margin: 0;
  transform: translateX(-100%);
  height: 100%;
  height: calc(100% + 60px);
  height: -moz-calc(100%);
  padding-bottom: 60px;
  background-color: #fff;
  z-index: 999;
  overflow-y: auto;
  will-change: transform;
  backface-visibility: hidden;
  transform: translateX(-105%);
}
.sidenav.right-aligned {
  right: 0;
  transform: translateX(105%);
  left: auto;
  transform: translateX(100%);
}
.sidenav .collapsible {
  margin: 0;
}
.sidenav li {
  float: none;
  line-height: 48px;
}
.sidenav li.active {
  background-color: rgba(0, 0, 0, 0.05);
}
.sidenav li > a {
  color: rgba(0, 0, 0, 0.87);
  display: block;
  font-size: 14px;
  font-weight: 500;
  height: 48px;
  line-height: 48px;
  padding: 0 32px;
}
.sidenav li > a:hover {
  background-color: rgba(0, 0, 0, 0.05);
}
.sidenav li > a.btn, .sidenav li > a.btn-small, .sidenav li > a.btn-large, .sidenav li > a.btn-flat, .sidenav li > a.btn-floating {
  margin: 10px 15px;
}
.sidenav li > a.btn, .sidenav li > a.btn-small, .sidenav li > a.btn-large, .sidenav li > a.btn-floating {
  color: #fff;
}
.sidenav li > a.btn-flat {
  color: #343434;
}
.sidenav li > a.btn:hover, .sidenav li > a.btn-small:hover, .sidenav li > a.btn-large:hover {
  background-color: #2bbbad;
}
.sidenav li > a.btn-floating:hover {
  background-color: #26a69a;
}
.sidenav li > a > i, .sidenav li > a > [class^=mdi-], .sidenav li > a li > a > [class*=mdi-], .sidenav li > a > i.material-icons {
  float: left;
  height: 48px;
  line-height: 48px;
  margin: 0 32px 0 0;
  width: 24px;
  color: rgba(0, 0, 0, 0.54);
}
.sidenav .divider {
  margin: 8px 0 0 0;
}
.sidenav .subheader {
  cursor: initial;
  pointer-events: none;
  color: rgba(0, 0, 0, 0.54);
  font-size: 14px;
  font-weight: 500;
  line-height: 48px;
}
.sidenav .subheader:hover {
  background-color: transparent;
}
.sidenav .user-view {
  position: relative;
  padding: 32px 32px 0;
  margin-bottom: 8px;
}
.sidenav .user-view > a {
  height: auto;
  padding: 0;
}
.sidenav .user-view > a:hover {
  background-color: transparent;
}
.sidenav .user-view .background {
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.sidenav .user-view .circle, .sidenav .user-view .name, .sidenav .user-view .email {
  display: block;
}
.sidenav .user-view .circle {
  height: 64px;
  width: 64px;
}
.sidenav .user-view .name,
.sidenav .user-view .email {
  font-size: 14px;
  line-height: 24px;
}
.sidenav .user-view .name {
  margin-top: 16px;
  font-weight: 500;
}
.sidenav .user-view .email {
  padding-bottom: 16px;
  font-weight: 400;
}

.drag-target {
  height: 100%;
  width: 10px;
  position: fixed;
  top: 0;
  z-index: 998;
}
.drag-target.right-aligned {
  right: 0;
}

.sidenav.sidenav-fixed {
  left: 0;
  transform: translateX(0);
  position: fixed;
}
.sidenav.sidenav-fixed.right-aligned {
  right: 0;
  left: auto;
}

@media only screen and (max-width : 992px) {
  .sidenav.sidenav-fixed {
    transform: translateX(-105%);
  }
  .sidenav.sidenav-fixed.right-aligned {
    transform: translateX(105%);
  }
  .sidenav > a {
    padding: 0 16px;
  }
  .sidenav .user-view {
    padding: 16px 16px 0;
  }
}
.sidenav .collapsible-body > ul:not(.collapsible) > li.active,
.sidenav.sidenav-fixed .collapsible-body > ul:not(.collapsible) > li.active {
  background-color: #29b6f6;
}
.sidenav .collapsible-body > ul:not(.collapsible) > li.active a,
.sidenav.sidenav-fixed .collapsible-body > ul:not(.collapsible) > li.active a {
  color: #fff;
}

.sidenav .collapsible-body {
  padding: 0;
}

.sidenav-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  opacity: 0;
  height: 120vh;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 997;
  display: none;
}

/*
    @license
    Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
    This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
    The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
    The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
    Code distributed by Google as part of the polymer project is also
    subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
 */
/**************************/
/* STYLES FOR THE SPINNER */
/**************************/
/*
 * Constants:
 *      STROKEWIDTH = 3px
 *      ARCSIZE     = 270 degrees (amount of circle the arc takes up)
 *      ARCTIME     = 1333ms (time it takes to expand and contract arc)
 *      ARCSTARTROT = 216 degrees (how much the start location of the arc
 *                                should rotate each time, 216 gives us a
 *                                5 pointed star shape (it's 360/5 * 3).
 *                                For a 7 pointed star, we might do
 *                                360/7 * 3 = 154.286)
 *      CONTAINERWIDTH = 28px
 *      SHRINK_TIME = 400ms
 */
.preloader-wrapper {
  display: inline-block;
  position: relative;
  width: 50px;
  height: 50px;
}
.preloader-wrapper.small {
  width: 36px;
  height: 36px;
}
.preloader-wrapper.big {
  width: 64px;
  height: 64px;
}
.preloader-wrapper.active {
  /* duration: 360 * ARCTIME / (ARCSTARTROT + (360-ARCSIZE)) */
  -webkit-animation: container-rotate 1568ms linear infinite;
  animation: container-rotate 1568ms linear infinite;
}

@-webkit-keyframes container-rotate {
  to {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes container-rotate {
  to {
    transform: rotate(360deg);
  }
}
.spinner-layer {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  border-color: #26a69a;
}

.spinner-blue,
.spinner-blue-only {
  border-color: #4285f4;
}

.spinner-red,
.spinner-red-only {
  border-color: #db4437;
}

.spinner-yellow,
.spinner-yellow-only {
  border-color: #f4b400;
}

.spinner-green,
.spinner-green-only {
  border-color: #0f9d58;
}

/**
 * IMPORTANT NOTE ABOUT CSS ANIMATION PROPERTIES (keanulee):
 *
 * iOS Safari (tested on iOS 8.1) does not handle animation-delay very well - it doesn't
 * guarantee that the animation will start _exactly_ after that value. So we avoid using
 * animation-delay and instead set custom keyframes for each color (as redundant as it
 * seems).
 *
 * We write out each animation in full (instead of separating animation-name,
 * animation-duration, etc.) because under the polyfill, Safari does not recognize those
 * specific properties properly, treats them as -webkit-animation, and overrides the
 * other animation rules. See https://github.com/Polymer/platform/issues/53.
 */
.active .spinner-layer.spinner-blue {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, blue-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, blue-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer.spinner-red {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, red-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, red-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer.spinner-yellow {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, yellow-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, yellow-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer.spinner-green {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, green-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, green-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer,
.active .spinner-layer.spinner-blue-only,
.active .spinner-layer.spinner-red-only,
.active .spinner-layer.spinner-yellow-only,
.active .spinner-layer.spinner-green-only {
  /* durations: 4 * ARCTIME */
  opacity: 1;
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

@-webkit-keyframes fill-unfill-rotate {
  12.5% {
    -webkit-transform: rotate(135deg);
  }
  /* 0.5 * ARCSIZE */
  25% {
    -webkit-transform: rotate(270deg);
  }
  /* 1   * ARCSIZE */
  37.5% {
    -webkit-transform: rotate(405deg);
  }
  /* 1.5 * ARCSIZE */
  50% {
    -webkit-transform: rotate(540deg);
  }
  /* 2   * ARCSIZE */
  62.5% {
    -webkit-transform: rotate(675deg);
  }
  /* 2.5 * ARCSIZE */
  75% {
    -webkit-transform: rotate(810deg);
  }
  /* 3   * ARCSIZE */
  87.5% {
    -webkit-transform: rotate(945deg);
  }
  /* 3.5 * ARCSIZE */
  to {
    -webkit-transform: rotate(1080deg);
  }
  /* 4   * ARCSIZE */
}
@keyframes fill-unfill-rotate {
  12.5% {
    transform: rotate(135deg);
  }
  /* 0.5 * ARCSIZE */
  25% {
    transform: rotate(270deg);
  }
  /* 1   * ARCSIZE */
  37.5% {
    transform: rotate(405deg);
  }
  /* 1.5 * ARCSIZE */
  50% {
    transform: rotate(540deg);
  }
  /* 2   * ARCSIZE */
  62.5% {
    transform: rotate(675deg);
  }
  /* 2.5 * ARCSIZE */
  75% {
    transform: rotate(810deg);
  }
  /* 3   * ARCSIZE */
  87.5% {
    transform: rotate(945deg);
  }
  /* 3.5 * ARCSIZE */
  to {
    transform: rotate(1080deg);
  }
  /* 4   * ARCSIZE */
}
@-webkit-keyframes blue-fade-in-out {
  from {
    opacity: 1;
  }
  25% {
    opacity: 1;
  }
  26% {
    opacity: 0;
  }
  89% {
    opacity: 0;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes blue-fade-in-out {
  from {
    opacity: 1;
  }
  25% {
    opacity: 1;
  }
  26% {
    opacity: 0;
  }
  89% {
    opacity: 0;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes red-fade-in-out {
  from {
    opacity: 0;
  }
  15% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  51% {
    opacity: 0;
  }
}
@keyframes red-fade-in-out {
  from {
    opacity: 0;
  }
  15% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  51% {
    opacity: 0;
  }
}
@-webkit-keyframes yellow-fade-in-out {
  from {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  76% {
    opacity: 0;
  }
}
@keyframes yellow-fade-in-out {
  from {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  76% {
    opacity: 0;
  }
}
@-webkit-keyframes green-fade-in-out {
  from {
    opacity: 0;
  }
  65% {
    opacity: 0;
  }
  75% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes green-fade-in-out {
  from {
    opacity: 0;
  }
  65% {
    opacity: 0;
  }
  75% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/**
 * Patch the gap that appear between the two adjacent div.circle-clipper while the
 * spinner is rotating (appears on Chrome 38, Safari 7.1, and IE 11).
 */
.gap-patch {
  position: absolute;
  top: 0;
  left: 45%;
  width: 10%;
  height: 100%;
  overflow: hidden;
  border-color: inherit;
}

.gap-patch .circle {
  width: 1000%;
  left: -450%;
}

.circle-clipper {
  display: inline-block;
  position: relative;
  width: 50%;
  height: 100%;
  overflow: hidden;
  border-color: inherit;
}
.circle-clipper .circle {
  width: 200%;
  height: 100%;
  border-width: 3px;
  /* STROKEWIDTH */
  border-style: solid;
  border-color: inherit;
  border-bottom-color: transparent !important;
  border-radius: 50%;
  -webkit-animation: none;
  animation: none;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
}
.circle-clipper.left .circle {
  left: 0;
  border-right-color: transparent !important;
  -webkit-transform: rotate(129deg);
  transform: rotate(129deg);
}
.circle-clipper.right .circle {
  left: -100%;
  border-left-color: transparent !important;
  -webkit-transform: rotate(-129deg);
  transform: rotate(-129deg);
}

.active .circle-clipper.left .circle {
  /* duration: ARCTIME */
  -webkit-animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .circle-clipper.right .circle {
  /* duration: ARCTIME */
  -webkit-animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

@-webkit-keyframes left-spin {
  from {
    -webkit-transform: rotate(130deg);
  }
  50% {
    -webkit-transform: rotate(-5deg);
  }
  to {
    -webkit-transform: rotate(130deg);
  }
}
@keyframes left-spin {
  from {
    transform: rotate(130deg);
  }
  50% {
    transform: rotate(-5deg);
  }
  to {
    transform: rotate(130deg);
  }
}
@-webkit-keyframes right-spin {
  from {
    -webkit-transform: rotate(-130deg);
  }
  50% {
    -webkit-transform: rotate(5deg);
  }
  to {
    -webkit-transform: rotate(-130deg);
  }
}
@keyframes right-spin {
  from {
    transform: rotate(-130deg);
  }
  50% {
    transform: rotate(5deg);
  }
  to {
    transform: rotate(-130deg);
  }
}
#spinnerContainer.cooldown {
  /* duration: SHRINK_TIME */
  -webkit-animation: container-rotate 1568ms linear infinite, fade-out 400ms cubic-bezier(0.4, 0, 0.2, 1);
  animation: container-rotate 1568ms linear infinite, fade-out 400ms cubic-bezier(0.4, 0, 0.2, 1);
}

@-webkit-keyframes fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.slider {
  position: relative;
  height: 400px;
  width: 100%;
}
.slider.fullscreen {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.slider.fullscreen ul.slides {
  height: 100%;
}
.slider.fullscreen ul.indicators {
  z-index: 2;
  bottom: 30px;
}
.slider .slides {
  background-color: #9e9e9e;
  margin: 0;
  height: 400px;
}
.slider .slides li {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: inherit;
  overflow: hidden;
}
.slider .slides li img {
  height: 100%;
  width: 100%;
  background-size: cover;
  background-position: center;
}
.slider .slides li .caption {
  color: #fff;
  position: absolute;
  top: 15%;
  left: 15%;
  width: 70%;
  opacity: 0;
}
.slider .slides li .caption p {
  color: #e0e0e0;
}
.slider .slides li.active {
  z-index: 2;
}
.slider .indicators {
  position: absolute;
  text-align: center;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
}
.slider .indicators .indicator-item {
  display: inline-block;
  position: relative;
  cursor: pointer;
  height: 16px;
  width: 16px;
  margin: 0 12px;
  background-color: #e0e0e0;
  transition: background-color 0.3s;
  border-radius: 50%;
}
.slider .indicators .indicator-item.active {
  background-color: #4CAF50;
}

.carousel {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 400px;
  perspective: 500px;
  transform-style: preserve-3d;
  transform-origin: 0% 50%;
}
.carousel.carousel-slider {
  top: 0;
  left: 0;
}
.carousel.carousel-slider .carousel-fixed-item {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 20px;
  z-index: 1;
}
.carousel.carousel-slider .carousel-fixed-item.with-indicators {
  bottom: 68px;
}
.carousel.carousel-slider .carousel-item {
  width: 100%;
  height: 100%;
  min-height: 400px;
  position: absolute;
  top: 0;
  left: 0;
}
.carousel.carousel-slider .carousel-item h2 {
  font-size: 24px;
  font-weight: 500;
  line-height: 32px;
}
.carousel.carousel-slider .carousel-item p {
  font-size: 15px;
}
.carousel .carousel-item {
  visibility: hidden;
  width: 200px;
  height: 200px;
  position: absolute;
  top: 0;
  left: 0;
}
.carousel .carousel-item > img {
  width: 100%;
}
.carousel .indicators {
  position: absolute;
  text-align: center;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
}
.carousel .indicators .indicator-item {
  display: inline-block;
  position: relative;
  cursor: pointer;
  height: 8px;
  width: 8px;
  margin: 24px 4px;
  background-color: rgba(255, 255, 255, 0.5);
  transition: background-color 0.3s;
  border-radius: 50%;
}
.carousel .indicators .indicator-item.active {
  background-color: #fff;
}
.carousel.scrolling .carousel-item .materialboxed,
.carousel .carousel-item:not(.active) .materialboxed {
  pointer-events: none;
}

.tap-target-wrapper {
  width: 800px;
  height: 800px;
  position: fixed;
  z-index: 1000;
  visibility: hidden;
  transition: visibility 0s 0.3s;
}

.tap-target-wrapper.open {
  visibility: visible;
  transition: visibility 0s;
}
.tap-target-wrapper.open .tap-target {
  transform: scale(1);
  opacity: 0.95;
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1), opacity 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}
.tap-target-wrapper.open .tap-target-wave::before {
  transform: scale(1);
}
.tap-target-wrapper.open .tap-target-wave::after {
  visibility: visible;
  animation: pulse-animation 1s cubic-bezier(0.24, 0, 0.38, 1) infinite;
  transition: opacity 0.3s, transform 0.3s, visibility 0s 1s;
}

.tap-target {
  position: absolute;
  font-size: 1rem;
  border-radius: 50%;
  background-color: #29b6f6;
  box-shadow: 0 20px 20px 0 rgba(0, 0, 0, 0.14), 0 10px 50px 0 rgba(0, 0, 0, 0.12), 0 30px 10px -20px rgba(0, 0, 0, 0.2);
  width: 100%;
  height: 100%;
  opacity: 0;
  transform: scale(0);
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1), opacity 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

.tap-target-content {
  position: relative;
  display: table-cell;
}

.tap-target-wave {
  position: absolute;
  border-radius: 50%;
  z-index: 10001;
}
.tap-target-wave::before, .tap-target-wave::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #ffffff;
}
.tap-target-wave::before {
  transform: scale(0);
  transition: transform 0.3s;
}
.tap-target-wave::after {
  visibility: hidden;
  transition: opacity 0.3s, transform 0.3s, visibility 0s;
  z-index: -1;
}

.tap-target-origin {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10002;
  position: absolute !important;
}
.tap-target-origin:not(.btn):not(.btn-large):not(.btn-small), .tap-target-origin:not(.btn):not(.btn-large):not(.btn-small):hover {
  background: none;
}

@media only screen and (max-width: 600px) {
  .tap-target, .tap-target-wrapper {
    width: 600px;
    height: 600px;
  }
}
.pulse {
  overflow: visible;
  position: relative;
}
.pulse::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: inherit;
  border-radius: inherit;
  transition: opacity 0.3s, transform 0.3s;
  animation: pulse-animation 1s cubic-bezier(0.24, 0, 0.38, 1) infinite;
  z-index: -1;
}

@keyframes pulse-animation {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0;
    transform: scale(1.5);
  }
  100% {
    opacity: 0;
    transform: scale(1.5);
  }
}
/* Modal */
.datepicker-modal {
  max-width: 325px;
  min-width: 300px;
  max-height: none;
}

.datepicker-container.modal-content {
  display: flex;
  flex-direction: column;
  padding: 0;
}

.datepicker-controls {
  display: flex;
  justify-content: space-between;
  width: 280px;
  margin: 0 auto;
}
.datepicker-controls .selects-container {
  display: flex;
}
.datepicker-controls .select-wrapper input {
  border-bottom: none;
  text-align: center;
  margin: 0;
}
.datepicker-controls .select-wrapper input:focus {
  border-bottom: none;
}
.datepicker-controls .select-wrapper .caret {
  display: none;
}
.datepicker-controls .select-year input {
  width: 50px;
}
.datepicker-controls .select-month input {
  width: 70px;
}

.month-prev, .month-next {
  margin-top: 4px;
  cursor: pointer;
  background-color: transparent;
  border: none;
}

/* Date Display */
.datepicker-date-display {
  flex: 1 auto;
  background-color: #26a69a;
  color: #fff;
  padding: 20px 22px;
  font-weight: 500;
}
.datepicker-date-display .year-text {
  display: block;
  font-size: 1.5rem;
  line-height: 25px;
  color: rgba(255, 255, 255, 0.7);
}
.datepicker-date-display .date-text {
  display: block;
  font-size: 2.8rem;
  line-height: 47px;
  font-weight: 500;
}

/* Calendar */
.datepicker-calendar-container {
  flex: 2.5 auto;
}

.datepicker-table {
  width: 280px;
  font-size: 1rem;
  margin: 0 auto;
}
.datepicker-table thead {
  border-bottom: none;
}
.datepicker-table th {
  padding: 10px 5px;
  text-align: center;
}
.datepicker-table tr {
  border: none;
}
.datepicker-table abbr {
  text-decoration: none;
  color: #999;
}
.datepicker-table td {
  border-radius: 50%;
  padding: 0;
}
.datepicker-table td.is-today {
  color: #26a69a;
}
.datepicker-table td.is-selected {
  background-color: #26a69a;
  color: #fff;
}
.datepicker-table td.is-outside-current-month, .datepicker-table td.is-disabled {
  color: rgba(0, 0, 0, 0.3);
  pointer-events: none;
}

.datepicker-day-button {
  background-color: transparent;
  border: none;
  line-height: 38px;
  display: block;
  width: 100%;
  border-radius: 50%;
  padding: 0 5px;
  cursor: pointer;
  color: inherit;
}
.datepicker-day-button:focus {
  background-color: rgba(43, 161, 150, 0.25);
}

/* Footer */
.datepicker-footer {
  width: 280px;
  margin: 0 auto;
  padding-bottom: 5px;
  display: flex;
  justify-content: space-between;
}

.datepicker-cancel,
.datepicker-clear,
.datepicker-today,
.datepicker-done {
  color: #26a69a;
  padding: 0 1rem;
}

.datepicker-clear {
  color: #F44336;
}

/* Media Queries */
@media only screen and (min-width : 601px) {
  .datepicker-modal {
    max-width: 625px;
  }

  .datepicker-container.modal-content {
    flex-direction: row;
  }

  .datepicker-date-display {
    flex: 0 1 270px;
  }

  .datepicker-controls,
.datepicker-table,
.datepicker-footer {
    width: 320px;
  }

  .datepicker-day-button {
    line-height: 44px;
  }
}
/* Timepicker Containers */
.timepicker-modal {
  max-width: 325px;
  max-height: none;
}

.timepicker-container.modal-content {
  display: flex;
  flex-direction: column;
  padding: 0;
}

.text-primary {
  color: white;
}

/* Clock Digital Display */
.timepicker-digital-display {
  flex: 1 auto;
  background-color: #26a69a;
  padding: 10px;
  font-weight: 300;
}

.timepicker-text-container {
  font-size: 4rem;
  font-weight: bold;
  text-align: center;
  color: rgba(255, 255, 255, 0.6);
  font-weight: 400;
  position: relative;
  user-select: none;
}

.timepicker-span-hours,
.timepicker-span-minutes,
.timepicker-span-am-pm div {
  cursor: pointer;
}

.timepicker-span-hours {
  margin-right: 3px;
}

.timepicker-span-minutes {
  margin-left: 3px;
}

.timepicker-display-am-pm {
  font-size: 1.3rem;
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  font-weight: 400;
}

/* Analog Clock Display */
.timepicker-analog-display {
  flex: 2.5 auto;
}

.timepicker-plate {
  background-color: #eee;
  border-radius: 50%;
  width: 270px;
  height: 270px;
  overflow: visible;
  position: relative;
  margin: auto;
  margin-top: 25px;
  margin-bottom: 5px;
  user-select: none;
}

.timepicker-canvas,
.timepicker-dial {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.timepicker-minutes {
  visibility: hidden;
}

.timepicker-tick {
  border-radius: 50%;
  color: rgba(0, 0, 0, 0.87);
  line-height: 40px;
  text-align: center;
  width: 40px;
  height: 40px;
  position: absolute;
  cursor: pointer;
  font-size: 15px;
}

.timepicker-tick.active,
.timepicker-tick:hover {
  background-color: rgba(38, 166, 154, 0.25);
}

.timepicker-dial {
  transition: transform 350ms, opacity 350ms;
}

.timepicker-dial-out {
  opacity: 0;
}
.timepicker-dial-out.timepicker-hours {
  transform: scale(1.1, 1.1);
}
.timepicker-dial-out.timepicker-minutes {
  transform: scale(0.8, 0.8);
}

.timepicker-canvas {
  transition: opacity 175ms;
}
.timepicker-canvas line {
  stroke: #26a69a;
  stroke-width: 4;
  stroke-linecap: round;
}

.timepicker-canvas-out {
  opacity: 0.25;
}

.timepicker-canvas-bearing {
  stroke: none;
  fill: #26a69a;
}

.timepicker-canvas-bg {
  stroke: none;
  fill: #26a69a;
}

/* Footer */
.timepicker-footer {
  margin: 0 auto;
  padding: 5px 1rem;
  display: flex;
  justify-content: space-between;
}

.timepicker-clear {
  color: #F44336;
}

.timepicker-close {
  color: #26a69a;
}

.timepicker-clear,
.timepicker-close {
  padding: 0 20px;
}

/* Media Queries */
@media only screen and (min-width : 601px) {
  .timepicker-modal {
    max-width: 600px;
  }

  .timepicker-container.modal-content {
    flex-direction: row;
  }

  .timepicker-text-container {
    top: 32%;
  }

  .timepicker-display-am-pm {
    position: relative;
    right: auto;
    bottom: auto;
    text-align: center;
    margin-top: 1.2rem;
  }
}
input:not([type]), input[type=text]:not(.browser-default), input[type=password]:not(.browser-default), input[type=email]:not(.browser-default), input[type=url]:not(.browser-default), input[type=time]:not(.browser-default), input[type=date]:not(.browser-default), input[type=datetime]:not(.browser-default), input[type=datetime-local]:not(.browser-default), input[type=tel]:not(.browser-default), input[type=number]:not(.browser-default), input[type=search]:not(.browser-default), textarea.materialize-textarea {
  padding-left: 4px;
}

label {
  padding-left: 4px;
}

.input-field > label:not(.label-icon).active {
  transform: translateY(-22px) scale(1) !important;
}

.select-wrapper + label {
  top: -32px;
  font-size: 1rem;
}

.black-text {
  color: rgba(0, 0, 0, 0.87) !important;
}

nav {
  background-color: white;
}

.sidenav {
  background-color: transparent;
  height: calc(100vh - 64px);
  overflow: auto;
}

html {
  font-size: 14px;
}

body {
  background-color: white;
  height: 100vh;
  overflow: hidden;
}

main, footer {
  padding-left: 300px;
}

main {
  height: calc(100vh - 64px);
  margin-right: 0;
  margin-top: 0;
  overflow: auto;
  padding-top: 20px;
  margin-bottom: 0;
  position: relative;
}

.sidenav {
  top: 64px;
  margin-top: 12px;
}

.login-box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100vh;
}
body .login-box {
  background-image: url(/build/images/pattern.9c875ce1.png);
}

div.table-list.empty {
  background-image: url(/build/images/empty_user_list.775fb052.png);
  background-repeat: no-repeat;
  background-position: center center;
}

#toast-container {
  bottom: 20px;
  top: auto;
}

.noselect {
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Safari */
  -khtml-user-select: none;
  /* Konqueror HTML */
  -moz-user-select: none;
  /* Old versions of Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  /* Non-prefixed version, currently
             supported by Chrome, Edge, Opera and Firefox */
}

table.highlight > tbody > tr:hover {
  background-color: rgba(38, 166, 154, 0.3) !important;
}

.login-box_holder {
  border: 1px solid #dadce0;
  padding: 40px;
  border-radius: 5px;
  background-color: white;
}

label.flex {
  display: flex;
  justify-content: center;
  align-items: center;
}

label.flex > span {
  display: block;
}

input {
  background-color: #cccccc22 !important;
}

td, th {
  padding: 10px 5px;
}

tr > th:first-child, tr > td:first-child {
  display: none;
}

.datepicker-table tr > th:first-child,
.datepicker-table tr > td:first-child {
  display: table-cell;
}

@media only screen and (max-width: 992px) {
  .sidenav {
    margin-top: 0;
  }

  .modal.bottom-sheet.modal-mobile {
    top: auto;
    bottom: -100%;
    margin: 0;
    width: 100%;
    max-height: 100%;
    min-height: 100%;
    border-radius: 0;
    will-change: bottom, opacity;
  }

  .login-box {
    display: flex;
    justify-content: center;
    align-items: start;
    height: 100vh;
    margin: 0 10px 0 10px;
  }

  .login-box_holder {
    border: 0;
    padding: 20px;
    background-color: transparent;
  }

  .login-box_header > span:after {
    content: "";
    display: block;
  }

  html {
    font-size: 14px;
  }

  main, footer {
    padding-left: 0;
  }

  .sidenav {
    top: 0;
    background-color: white;
    height: 100vh;
  }
}
.ql-editor strong,
.ql-editor b {
  font-weight: 700;
}

.ql-editor {
  min-height: 80px;
}

[draggable=true] {
  cursor: move;
}

.dad-hover-target-before li {
  box-shadow: 0px 6px 3px -4px rgba(41, 182, 246, 0.75) inset;
}

.dad-hover-target-after li {
  box-shadow: 0px -6px 3px -4px rgba(41, 182, 246, 0.75) inset;
}

.btn-block {
  width: 100%;
  text-align: left;
}

.dropzone .dz-preview .dz-image {
  border: 1px solid #26a69a;
  border-radius: 0;
}

.material-tooltip {
  padding: 1px !important;
  -webkit-box-shadow: 0 24px 38px 3px rgba(0, 0, 0, 0.14), 0 9px 46px 8px rgba(0, 0, 0, 0.12), 0 11px 15px -7px rgba(0, 0, 0, 0.2);
  box-shadow: 0 24px 38px 3px rgba(0, 0, 0, 0.14), 0 9px 46px 8px rgba(0, 0, 0, 0.12), 0 11px 15px -7px rgba(0, 0, 0, 0.2);
}

.material-tooltip .tooltip-content {
  background-color: white;
  color: black;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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RXBkTTtFQUNFO0FGdWRSOztBRTNkTTtFQUNFO0FGOGRSOztBRTVkTTtFQUNFO0FGK2RSOztBRW5lTTtFQUNFO0FGc2VSOztBRXBlTTtFQUNFO0FGdWVSOztBRTNlTTtFQUNFO0FGOGVSOztBRTVlTTtFQUNFO0FGK2VSOztBRW5mTTtFQUNFO0FGc2ZSOztBRXBmTTtFQUNFO0FGdWZSOztBRTNmTTtFQUNFO0FGOGZSOztBRTVmTTtFQUNFO0FGK2ZSOztBRW5nQk07RUFDRTtBRnNnQlI7O0FFcGdCTTtFQUNFO0FGdWdCUjs7QUUzZ0JNO0VBQ0U7QUY4Z0JSOztBRTVnQk07RUFDRTtBRitnQlI7O0FFbmhCTTtFQUNFO0FGc2hCUjs7QUVwaEJNO0VBQ0U7QUZ1aEJSOztBRW5pQk07RUFDRTtBRnNpQlI7O0FFcGlCTTtFQUNFO0FGdWlCUjs7QUVuaUJNO0VBQ0U7QUZzaUJSOztBRXBpQk07RUFDRTtBRnVpQlI7O0FFM2lCTTtFQUNFO0FGOGlCUjs7QUU1aUJNO0VBQ0U7QUYraUJSOztBRW5qQk07RUFDRTtBRnNqQlI7O0FFcGpCTTtFQUNFO0FGdWpCUjs7QUUzakJNO0VBQ0U7QUY4akJSOztBRTVqQk07RUFDRTtBRitqQlI7O0FFbmtCTTtFQUNFO0FGc2tCUjs7QUVwa0JNO0VBQ0U7QUZ1a0JSOztBRTNrQk07RUFDRTtBRjhrQlI7O0FFNWtCTTtFQUNFO0FGK2tCUjs7QUVubEJNO0VBQ0U7QUZzbEJSOztBRXBsQk07RUFDRTtBRnVsQlI7O0FFM2xCTTtFQUNFO0FGOGxCUjs7QUU1bEJNO0VBQ0U7QUYrbEJSOztBRW5tQk07RUFDRTtBRnNtQlI7O0FFcG1CTTtFQUNFO0FGdW1CUjs7QUUzbUJNO0VBQ0U7QUY4bUJSOztBRTVtQk07RUFDRTtBRittQlI7O0FFbm5CTTtFQUNFO0FGc25CUjs7QUVwbkJNO0VBQ0U7QUZ1bkJSOztBRTNuQk07RUFDRTtBRjhuQlI7O0FFNW5CTTtFQUNFO0FGK25CUjs7QUVub0JNO0VBQ0U7QUZzb0JSOztBRXBvQk07RUFDRTtBRnVvQlI7O0FFbnBCTTtFQUNFO0FGc3BCUjs7QUVwcEJNO0VBQ0U7QUZ1cEJSOztBRW5wQk07RUFDRTtBRnNwQlI7O0FFcHBCTTtFQUNFO0FGdXBCUjs7QUUzcEJNO0VBQ0U7QUY4cEJSOztBRTVwQk07RUFDRTtBRitwQlI7O0FFbnFCTTtFQUNFO0FGc3FCUjs7QUVwcUJNO0VBQ0U7QUZ1cUJSOztBRTNxQk07RUFDRTtBRjhxQlI7O0FFNXFCTTtFQUNFO0FGK3FCUjs7QUVuckJNO0VBQ0U7QUZzckJSOztBRXByQk07RUFDRTtBRnVyQlI7O0FFM3JCTTtFQUNFO0FGOHJCUjs7QUU1ckJNO0VBQ0U7QUYrckJSOztBRW5zQk07RUFDRTtBRnNzQlI7O0FFcHNCTTtFQUNFO0FGdXNCUjs7QUUzc0JNO0VBQ0U7QUY4c0JSOztBRTVzQk07RUFDRTtBRitzQlI7O0FFbnRCTTtFQUNFO0FGc3RCUjs7QUVwdEJNO0VBQ0U7QUZ1dEJSOztBRTN0Qk07RUFDRTtBRjh0QlI7O0FFNXRCTTtFQUNFO0FGK3RCUjs7QUVudUJNO0VBQ0U7QUZzdUJSOztBRXB1Qk07RUFDRTtBRnV1QlI7O0FFM3VCTTtFQUNFO0FGOHVCUjs7QUU1dUJNO0VBQ0U7QUYrdUJSOztBRW52Qk07RUFDRTtBRnN2QlI7O0FFcHZCTTtFQUNFO0FGdXZCUjs7QUVud0JNO0VBQ0U7QUZzd0JSOztBRXB3Qk07RUFDRTtBRnV3QlI7O0FFbndCTTtFQUNFO0FGc3dCUjs7QUVwd0JNO0VBQ0U7QUZ1d0JSOztBRTN3Qk07RUFDRTtBRjh3QlI7O0FFNXdCTTtFQUNFO0FGK3dCUjs7QUVueEJNO0VBQ0U7QUZzeEJSOztBRXB4Qk07RUFDRTtBRnV4QlI7O0FFM3hCTTtFQUNFO0FGOHhCUjs7QUU1eEJNO0VBQ0U7QUYreEJSOztBRW55Qk07RUFDRTtBRnN5QlI7O0FFcHlCTTtFQUNFO0FGdXlCUjs7QUUzeUJNO0VBQ0U7QUY4eUJSOztBRTV5Qk07RUFDRTtBRit5QlI7O0FFbnpCTTtFQUNFO0FGc3pCUjs7QUVwekJNO0VBQ0U7QUZ1ekJSOztBRTN6Qk07RUFDRTtBRjh6QlI7O0FFNXpCTTtFQUNFO0FGK3pCUjs7QUVuMEJNO0VBQ0U7QUZzMEJSOztBRXAwQk07RUFDRTtBRnUwQlI7O0FFMzBCTTtFQUNFO0FGODBCUjs7QUU1MEJNO0VBQ0U7QUYrMEJSOztBRW4xQk07RUFDRTtBRnMxQlI7O0FFcDFCTTtFQUNFO0FGdTFCUjs7QUUzMUJNO0VBQ0U7QUY4MUJSOztBRTUxQk07RUFDRTtBRisxQlI7O0FFbjJCTTtFQUNFO0FGczJCUjs7QUVwMkJNO0VBQ0U7QUZ1MkJSOztBRW4zQk07RUFDRTtBRnMzQlI7O0FFcDNCTTtFQUNFO0FGdTNCUjs7QUVuM0JNO0VBQ0U7QUZzM0JSOztBRXAzQk07RUFDRTtBRnUzQlI7O0FFMzNCTTtFQUNFO0FGODNCUjs7QUU1M0JNO0VBQ0U7QUYrM0JSOztBRW40Qk07RUFDRTtBRnM0QlI7O0FFcDRCTTtFQUNFO0FGdTRCUjs7QUUzNEJNO0VBQ0U7QUY4NEJSOztBRTU0Qk07RUFDRTtBRis0QlI7O0FFbjVCTTtFQUNFO0FGczVCUjs7QUVwNUJNO0VBQ0U7QUZ1NUJSOztBRTM1Qk07RUFDRTtBRjg1QlI7O0FFNTVCTTtFQUNFO0FGKzVCUjs7QUVuNkJNO0VBQ0U7QUZzNkJSOztBRXA2Qk07RUFDRTtBRnU2QlI7O0FFMzZCTTtFQUNFO0FGODZCUjs7QUU1NkJNO0VBQ0U7QUYrNkJSOztBRW43Qk07RUFDRTtBRnM3QlI7O0FFcDdCTTtFQUNFO0FGdTdCUjs7QUUzN0JNO0VBQ0U7QUY4N0JSOztBRTU3Qk07RUFDRTtBRis3QlI7O0FFbjhCTTtFQUNFO0FGczhCUjs7QUVwOEJNO0VBQ0U7QUZ1OEJSOztBRTM4Qk07RUFDRTtBRjg4QlI7O0FFNThCTTtFQUNFO0FGKzhCUjs7QUVuOUJNO0VBQ0U7QUZzOUJSOztBRXA5Qk07RUFDRTtBRnU5QlI7O0FFbitCTTtFQUNFO0FGcytCUjs7QUVwK0JNO0VBQ0U7QUZ1K0JSOztBRW4rQk07RUFDRTtBRnMrQlI7O0FFcCtCTTtFQUNFO0FGdStCUjs7QUUzK0JNO0VBQ0U7QUY4K0JSOztBRTUrQk07RUFDRTtBRisrQlI7O0FFbi9CTTtFQUNFO0FGcy9CUjs7QUVwL0JNO0VBQ0U7QUZ1L0JSOztBRTMvQk07RUFDRTtBRjgvQlI7O0FFNS9CTTtFQUNFO0FGKy9CUjs7QUVuZ0NNO0VBQ0U7QUZzZ0NSOztBRXBnQ007RUFDRTtBRnVnQ1I7O0FFM2dDTTtFQUNFO0FGOGdDUjs7QUU1Z0NNO0VBQ0U7QUYrZ0NSOztBRW5oQ007RUFDRTtBRnNoQ1I7O0FFcGhDTTtFQUNFO0FGdWhDUjs7QUUzaENNO0VBQ0U7QUY4aENSOztBRTVoQ007RUFDRTtBRitoQ1I7O0FFbmlDTTtFQUNFO0FGc2lDUjs7QUVwaUNNO0VBQ0U7QUZ1aUNSOztBRTNpQ007RUFDRTtBRjhpQ1I7O0FFNWlDTTtFQUNFO0FGK2lDUjs7QUVuakNNO0VBQ0U7QUZzakNSOztBRXBqQ007RUFDRTtBRnVqQ1I7O0FFM2pDTTtFQUNFO0FGOGpDUjs7QUU1akNNO0VBQ0U7QUYrakNSOztBRW5rQ007RUFDRTtBRnNrQ1I7O0FFcGtDTTtFQUNFO0FGdWtDUjs7QUVubENNO0VBQ0U7QUZzbENSOztBRXBsQ007RUFDRTtBRnVsQ1I7O0FFbmxDTTtFQUNFO0FGc2xDUjs7QUVwbENNO0VBQ0U7QUZ1bENSOztBRTNsQ007RUFDRTtBRjhsQ1I7O0FFNWxDTTtFQUNFO0FGK2xDUjs7QUVubUNNO0VBQ0U7QUZzbUNSOztBRXBtQ007RUFDRTtBRnVtQ1I7O0FFM21DTTtFQUNFO0FGOG1DUjs7QUU1bUNNO0VBQ0U7QUYrbUNSOztBRW5uQ007RUFDRTtBRnNuQ1I7O0FFcG5DTTtFQUNFO0FGdW5DUjs7QUUzbkNNO0VBQ0U7QUY4bkNSOztBRTVuQ007RUFDRTtBRituQ1I7O0FFbm9DTTtFQUNFO0FGc29DUjs7QUVwb0NNO0VBQ0U7QUZ1b0NSOztBRTNvQ007RUFDRTtBRjhvQ1I7O0FFNW9DTTtFQUNFO0FGK29DUjs7QUVucENNO0VBQ0U7QUZzcENSOztBRXBwQ007RUFDRTtBRnVwQ1I7O0FFM3BDTTtFQUNFO0FGOHBDUjs7QUU1cENNO0VBQ0U7QUYrcENSOztBRW5xQ007RUFDRTtBRnNxQ1I7O0FFcHFDTTtFQUNFO0FGdXFDUjs7QUUzcUNNO0VBQ0U7QUY4cUNSOztBRTVxQ007RUFDRTtBRitxQ1I7O0FFbnJDTTtFQUNFO0FGc3JDUjs7QUVwckNNO0VBQ0U7QUZ1ckNSOztBRW5zQ007RUFDRTtBRnNzQ1I7O0FFcHNDTTtFQUNFO0FGdXNDUjs7QUVuc0NNO0VBQ0U7QUZzc0NSOztBRXBzQ007RUFDRTtBRnVzQ1I7O0FFM3NDTTtFQUNFO0FGOHNDUjs7QUU1c0NNO0VBQ0U7QUYrc0NSOztBRW50Q007RUFDRTtBRnN0Q1I7O0FFcHRDTTtFQUNFO0FGdXRDUjs7QUUzdENNO0VBQ0U7QUY4dENSOztBRTV0Q007RUFDRTtBRit0Q1I7O0FFbnVDTTtFQUNFO0FGc3VDUjs7QUVwdUNNO0VBQ0U7QUZ1dUNSOztBRTN1Q007RUFDRTtBRjh1Q1I7O0FFNXVDTTtFQUNFO0FGK3VDUjs7QUVudkNNO0VBQ0U7QUZzdkNSOztBRXB2Q007RUFDRTtBRnV2Q1I7O0FFM3ZDTTtFQUNFO0FGOHZDUjs7QUU1dkNNO0VBQ0U7QUYrdkNSOztBRW53Q007RUFDRTtBRnN3Q1I7O0FFcHdDTTtFQUNFO0FGdXdDUjs7QUUzd0NNO0VBQ0U7QUY4d0NSOztBRTV3Q007RUFDRTtBRit3Q1I7O0FFbnhDTTtFQUNFO0FGc3hDUjs7QUVweENNO0VBQ0U7QUZ1eENSOztBRTN4Q007RUFDRTtBRjh4Q1I7O0FFNXhDTTtFQUNFO0FGK3hDUjs7QUVueUNNO0VBQ0U7QUZzeUNSOztBRXB5Q007RUFDRTtBRnV5Q1I7O0FFbnpDTTtFQUNFO0FGc3pDUjs7QUVwekNNO0VBQ0U7QUZ1ekNSOztBRW56Q007RUFDRTtBRnN6Q1I7O0FFcHpDTTtFQUNFO0FGdXpDUjs7QUUzekNNO0VBQ0U7QUY4ekNSOztBRTV6Q007RUFDRTtBRit6Q1I7O0FFbjBDTTtFQUNFO0FGczBDUjs7QUVwMENNO0VBQ0U7QUZ1MENSOztBRTMwQ007RUFDRTtBRjgwQ1I7O0FFNTBDTTtFQUNFO0FGKzBDUjs7QUVuMUNNO0VBQ0U7QUZzMUNSOztBRXAxQ007RUFDRTtBRnUxQ1I7O0FFMzFDTTtFQUNFO0FGODFDUjs7QUU1MUNNO0VBQ0U7QUYrMUNSOztBRW4yQ007RUFDRTtBRnMyQ1I7O0FFcDJDTTtFQUNFO0FGdTJDUjs7QUUzMkNNO0VBQ0U7QUY4MkNSOztBRTUyQ007RUFDRTtBRisyQ1I7O0FFbjNDTTtFQUNFO0FGczNDUjs7QUVwM0NNO0VBQ0U7QUZ1M0NSOztBRTMzQ007RUFDRTtBRjgzQ1I7O0FFNTNDTTtFQUNFO0FGKzNDUjs7QUVuNENNO0VBQ0U7QUZzNENSOztBRXA0Q007RUFDRTtBRnU0Q1I7O0FFMzRDTTtFQUNFO0FGODRDUjs7QUU1NENNO0VBQ0U7QUYrNENSOztBRW41Q007RUFDRTtBRnM1Q1I7O0FFcDVDTTtFQUNFO0FGdTVDUjs7QUVuNkNNO0VBQ0U7QUZzNkNSOztBRXA2Q007RUFDRTtBRnU2Q1I7O0FFbjZDTTtFQUNFO0FGczZDUjs7QUVwNkNNO0VBQ0U7QUZ1NkNSOztBRTM2Q007RUFDRTtBRjg2Q1I7O0FFNTZDTTtFQUNFO0FGKzZDUjs7QUVuN0NNO0VBQ0U7QUZzN0NSOztBRXA3Q007RUFDRTtBRnU3Q1I7O0FFMzdDTTtFQUNFO0FGODdDUjs7QUU1N0NNO0VBQ0U7QUYrN0NSOztBRW44Q007RUFDRTtBRnM4Q1I7O0FFcDhDTTtFQUNFO0FGdThDUjs7QUUzOENNO0VBQ0U7QUY4OENSOztBRTU4Q007RUFDRTtBRis4Q1I7O0FFbjlDTTtFQUNFO0FGczlDUjs7QUVwOUNNO0VBQ0U7QUZ1OUNSOztBRTM5Q007RUFDRTtBRjg5Q1I7O0FFNTlDTTtFQUNFO0FGKzlDUjs7QUVuK0NNO0VBQ0U7QUZzK0NSOztBRXArQ007RUFDRTtBRnUrQ1I7O0FFMytDTTtFQUNFO0FGOCtDUjs7QUU1K0NNO0VBQ0U7QUYrK0NSOztBRW4vQ007RUFDRTtBRnMvQ1I7O0FFcC9DTTtFQUNFO0FGdS9DUjs7QUUzL0NNO0VBQ0U7QUY4L0NSOztBRTUvQ007RUFDRTtBRisvQ1I7O0FFbmdETTtFQUNFO0FGc2dEUjs7QUVwZ0RNO0VBQ0U7QUZ1Z0RSOztBRW5oRE07RUFDRTtBRnNoRFI7O0FFcGhETTtFQUNFO0FGdWhEUjs7QUVuaERNO0VBQ0U7QUZzaERSOztBRXBoRE07RUFDRTtBRnVoRFI7O0FFM2hETTtFQUNFO0FGOGhEUjs7QUU1aERNO0VBQ0U7QUYraERSOztBRW5pRE07RUFDRTtBRnNpRFI7O0FFcGlETTtFQUNFO0FGdWlEUjs7QUUzaURNO0VBQ0U7QUY4aURSOztBRTVpRE07RUFDRTtBRitpRFI7O0FFbmpETTtFQUNFO0FGc2pEUjs7QUVwakRNO0VBQ0U7QUZ1akRSOztBRTNqRE07RUFDRTtBRjhqRFI7O0FFNWpETTtFQUNFO0FGK2pEUjs7QUVua0RNO0VBQ0U7QUZza0RSOztBRXBrRE07RUFDRTtBRnVrRFI7O0FFM2tETTtFQUNFO0FGOGtEUjs7QUU1a0RNO0VBQ0U7QUYra0RSOztBRW5sRE07RUFDRTtBRnNsRFI7O0FFcGxETTtFQUNFO0FGdWxEUjs7QUUzbERNO0VBQ0U7QUY4bERSOztBRTVsRE07RUFDRTtBRitsRFI7O0FFbm1ETTtFQUNFO0FGc21EUjs7QUVwbURNO0VBQ0U7QUZ1bURSOztBRTNtRE07RUFDRTtBRjhtRFI7O0FFNW1ETTtFQUNFO0FGK21EUjs7QUVubkRNO0VBQ0U7QUZzbkRSOztBRXBuRE07RUFDRTtBRnVuRFI7O0FFbm9ETTtFQUNFO0FGc29EUjs7QUVwb0RNO0VBQ0U7QUZ1b0RSOztBRW5vRE07RUFDRTtBRnNvRFI7O0FFcG9ETTtFQUNFO0FGdW9EUjs7QUUzb0RNO0VBQ0U7QUY4b0RSOztBRTVvRE07RUFDRTtBRitvRFI7O0FFbnBETTtFQUNFO0FGc3BEUjs7QUVwcERNO0VBQ0U7QUZ1cERSOztBRTNwRE07RUFDRTtBRjhwRFI7O0FFNXBETTtFQUNFO0FGK3BEUjs7QUVucURNO0VBQ0U7QUZzcURSOztBRXBxRE07RUFDRTtBRnVxRFI7O0FFM3FETTtFQUNFO0FGOHFEUjs7QUU1cURNO0VBQ0U7QUYrcURSOztBRW5yRE07RUFDRTtBRnNyRFI7O0FFcHJETTtFQUNFO0FGdXJEUjs7QUUzckRNO0VBQ0U7QUY4ckRSOztBRTVyRE07RUFDRTtBRityRFI7O0FFbnNETTtFQUNFO0FGc3NEUjs7QUVwc0RNO0VBQ0U7QUZ1c0RSOztBRTNzRE07RUFDRTtBRjhzRFI7O0FFNXNETTtFQUNFO0FGK3NEUjs7QUVudERNO0VBQ0U7QUZzdERSOztBRXB0RE07RUFDRTtBRnV0RFI7O0FFM3RETTtFQUNFO0FGOHREUjs7QUU1dERNO0VBQ0U7QUYrdERSOztBRW51RE07RUFDRTtBRnN1RFI7O0FFcHVETTtFQUNFO0FGdXVEUjs7QUVudkRNO0VBQ0U7QUZzdkRSOztBRXB2RE07RUFDRTtBRnV2RFI7O0FFbnZETTtFQUNFO0FGc3ZEUjs7QUVwdkRNO0VBQ0U7QUZ1dkRSOztBRTN2RE07RUFDRTtBRjh2RFI7O0FFNXZETTtFQUNFO0FGK3ZEUjs7QUVud0RNO0VBQ0U7QUZzd0RSOztBRXB3RE07RUFDRTtBRnV3RFI7O0FFM3dETTtFQUNFO0FGOHdEUjs7QUU1d0RNO0VBQ0U7QUYrd0RSOztBRW54RE07RUFDRTtBRnN4RFI7O0FFcHhETTtFQUNFO0FGdXhEUjs7QUUzeERNO0VBQ0U7QUY4eERSOztBRTV4RE07RUFDRTtBRit4RFI7O0FFbnlETTtFQUNFO0FGc3lEUjs7QUVweURNO0VBQ0U7QUZ1eURSOztBRTN5RE07RUFDRTtBRjh5RFI7O0FFNXlETTtFQUNFO0FGK3lEUjs7QUVuekRNO0VBQ0U7QUZzekRSOztBRXB6RE07RUFDRTtBRnV6RFI7O0FFM3pETTtFQUNFO0FGOHpEUjs7QUU1ekRNO0VBQ0U7QUYrekRSOztBRW4wRE07RUFDRTtBRnMwRFI7O0FFcDBETTtFQUNFO0FGdTBEUjs7QUUzMERNO0VBQ0U7QUY4MERSOztBRTUwRE07RUFDRTtBRiswRFI7O0FFbjFETTtFQUNFO0FGczFEUjs7QUVwMURNO0VBQ0U7QUZ1MURSOztBRW4yRE07RUFDRTtBRnMyRFI7O0FFcDJETTtFQUNFO0FGdTJEUjs7QUVuMkRNO0VBQ0U7QUZzMkRSOztBRXAyRE07RUFDRTtBRnUyRFI7O0FFMzJETTtFQUNFO0FGODJEUjs7QUU1MkRNO0VBQ0U7QUYrMkRSOztBRW4zRE07RUFDRTtBRnMzRFI7O0FFcDNETTtFQUNFO0FGdTNEUjs7QUUzM0RNO0VBQ0U7QUY4M0RSOztBRTUzRE07RUFDRTtBRiszRFI7O0FFbjRETTtFQUNFO0FGczREUjs7QUVwNERNO0VBQ0U7QUZ1NERSOztBRTM0RE07RUFDRTtBRjg0RFI7O0FFNTRETTtFQUNFO0FGKzREUjs7QUVuNURNO0VBQ0U7QUZzNURSOztBRXA1RE07RUFDRTtBRnU1RFI7O0FFMzVETTtFQUNFO0FGODVEUjs7QUU1NURNO0VBQ0U7QUYrNURSOztBRW42RE07RUFDRTtBRnM2RFI7O0FFcDZETTtFQUNFO0FGdTZEUjs7QUUzNkRNO0VBQ0U7QUY4NkRSOztBRTU2RE07RUFDRTtBRis2RFI7O0FFbjdETTtFQUNFO0FGczdEUjs7QUVwN0RNO0VBQ0U7QUZ1N0RSOztBRTM3RE07RUFDRTtBRjg3RFI7O0FFNTdETTtFQUNFO0FGKzdEUjs7QUVuOERNO0VBQ0U7QUZzOERSOztBRXA4RE07RUFDRTtBRnU4RFI7O0FFbjlETTtFQUNFO0FGczlEUjs7QUVwOURNO0VBQ0U7QUZ1OURSOztBRW45RE07RUFDRTtBRnM5RFI7O0FFcDlETTtFQUNFO0FGdTlEUjs7QUUzOURNO0VBQ0U7QUY4OURSOztBRTU5RE07RUFDRTtBRis5RFI7O0FFbitETTtFQUNFO0FGcytEUjs7QUVwK0RNO0VBQ0U7QUZ1K0RSOztBRTMrRE07RUFDRTtBRjgrRFI7O0FFNStETTtFQUNFO0FGKytEUjs7QUVuL0RNO0VBQ0U7QUZzL0RSOztBRXAvRE07RUFDRTtBRnUvRFI7O0FFMy9ETTtFQUNFO0FGOC9EUjs7QUU1L0RNO0VBQ0U7QUYrL0RSOztBRW5nRU07RUFDRTtBRnNnRVI7O0FFcGdFTTtFQUNFO0FGdWdFUjs7QUUzZ0VNO0VBQ0U7QUY4Z0VSOztBRTVnRU07RUFDRTtBRitnRVI7O0FFbmhFTTtFQUNFO0FGc2hFUjs7QUVwaEVNO0VBQ0U7QUZ1aEVSOztBRTNoRU07RUFDRTtBRjhoRVI7O0FFNWhFTTtFQUNFO0FGK2hFUjs7QUVuaUVNO0VBQ0U7QUZzaUVSOztBRXBpRU07RUFDRTtBRnVpRVI7O0FFM2lFTTtFQUNFO0FGOGlFUjs7QUU1aUVNO0VBQ0U7QUYraUVSOztBRW5qRU07RUFDRTtBRnNqRVI7O0FFcGpFTTtFQUNFO0FGdWpFUjs7QUVua0VNO0VBQ0U7QUZza0VSOztBRXBrRU07RUFDRTtBRnVrRVI7O0FFbmtFTTtFQUNFO0FGc2tFUjs7QUVwa0VNO0VBQ0U7QUZ1a0VSOztBRTNrRU07RUFDRTtBRjhrRVI7O0FFNWtFTTtFQUNFO0FGK2tFUjs7QUVubEVNO0VBQ0U7QUZzbEVSOztBRXBsRU07RUFDRTtBRnVsRVI7O0FFM2xFTTtFQUNFO0FGOGxFUjs7QUU1bEVNO0VBQ0U7QUYrbEVSOztBRW5tRU07RUFDRTtBRnNtRVI7O0FFcG1FTTtFQUNFO0FGdW1FUjs7QUUzbUVNO0VBQ0U7QUY4bUVSOztBRTVtRU07RUFDRTtBRittRVI7O0FFbm5FTTtFQUNFO0FGc25FUjs7QUVwbkVNO0VBQ0U7QUZ1bkVSOztBRTNuRU07RUFDRTtBRjhuRVI7O0FFNW5FTTtFQUNFO0FGK25FUjs7QUVub0VNO0VBQ0U7QUZzb0VSOztBRXBvRU07RUFDRTtBRnVvRVI7O0FFM29FTTtFQUNFO0FGOG9FUjs7QUU1b0VNO0VBQ0U7QUYrb0VSOztBRW5wRU07RUFDRTtBRnNwRVI7O0FFcHBFTTtFQUNFO0FGdXBFUjs7QUUzcEVNO0VBQ0U7QUY4cEVSOztBRTVwRU07RUFDRTtBRitwRVI7O0FFbnFFTTtFQUNFO0FGc3FFUjs7QUVwcUVNO0VBQ0U7QUZ1cUVSOztBRW5yRU07RUFDRTtBRnNyRVI7O0FFcHJFTTtFQUNFO0FGdXJFUjs7QUVuckVNO0VBQ0U7QUZzckVSOztBRXByRU07RUFDRTtBRnVyRVI7O0FFM3JFTTtFQUNFO0FGOHJFUjs7QUU1ckVNO0VBQ0U7QUYrckVSOztBRW5zRU07RUFDRTtBRnNzRVI7O0FFcHNFTTtFQUNFO0FGdXNFUjs7QUUzc0VNO0VBQ0U7QUY4c0VSOztBRTVzRU07RUFDRTtBRitzRVI7O0FFbnRFTTtFQUNFO0FGc3RFUjs7QUVwdEVNO0VBQ0U7QUZ1dEVSOztBRTN0RU07RUFDRTtBRjh0RVI7O0FFNXRFTTtFQUNFO0FGK3RFUjs7QUVudUVNO0VBQ0U7QUZzdUVSOztBRXB1RU07RUFDRTtBRnV1RVI7O0FFM3VFTTtFQUNFO0FGOHVFUjs7QUU1dUVNO0VBQ0U7QUYrdUVSOztBRW52RU07RUFDRTtBRnN2RVI7O0FFcHZFTTtFQUNFO0FGdXZFUjs7QUUzdkVNO0VBQ0U7QUY4dkVSOztBRTV2RU07RUFDRTtBRit2RVI7O0FFbndFTTtFQUNFO0FGc3dFUjs7QUVwd0VNO0VBQ0U7QUZ1d0VSOztBRTN3RU07RUFDRTtBRjh3RVI7O0FFNXdFTTtFQUNFO0FGK3dFUjs7QUVueEVNO0VBQ0U7QUZzeEVSOztBRXB4RU07RUFDRTtBRnV4RVI7O0FFbnlFTTtFQUNFO0FGc3lFUjs7QUVweUVNO0VBQ0U7QUZ1eUVSOztBRW55RU07RUFDRTtBRnN5RVI7O0FFcHlFTTtFQUNFO0FGdXlFUjs7QUUzeUVNO0VBQ0U7QUY4eUVSOztBRTV5RU07RUFDRTtBRit5RVI7O0FFbnpFTTtFQUNFO0FGc3pFUjs7QUVwekVNO0VBQ0U7QUZ1ekVSOztBRTN6RU07RUFDRTtBRjh6RVI7O0FFNXpFTTtFQUNFO0FGK3pFUjs7QUVuMEVNO0VBQ0U7QUZzMEVSOztBRXAwRU07RUFDRTtBRnUwRVI7O0FFMzBFTTtFQUNFO0FGODBFUjs7QUU1MEVNO0VBQ0U7QUYrMEVSOztBRW4xRU07RUFDRTtBRnMxRVI7O0FFcDFFTTtFQUNFO0FGdTFFUjs7QUUzMUVNO0VBQ0U7QUY4MUVSOztBRTUxRU07RUFDRTtBRisxRVI7O0FFbjJFTTtFQUNFO0FGczJFUjs7QUVwMkVNO0VBQ0U7QUZ1MkVSOztBRW4zRU07RUFDRTtBRnMzRVI7O0FFcDNFTTtFQUNFO0FGdTNFUjs7QUVuM0VNO0VBQ0U7QUZzM0VSOztBRXAzRU07RUFDRTtBRnUzRVI7O0FFMzNFTTtFQUNFO0FGODNFUjs7QUU1M0VNO0VBQ0U7QUYrM0VSOztBRW40RU07RUFDRTtBRnM0RVI7O0FFcDRFTTtFQUNFO0FGdTRFUjs7QUUzNEVNO0VBQ0U7QUY4NEVSOztBRTU0RU07RUFDRTtBRis0RVI7O0FFbjVFTTtFQUNFO0FGczVFUjs7QUVwNUVNO0VBQ0U7QUZ1NUVSOztBRTM1RU07RUFDRTtBRjg1RVI7O0FFNTVFTTtFQUNFO0FGKzVFUjs7QUVuNkVNO0VBQ0U7QUZzNkVSOztBRXA2RU07RUFDRTtBRnU2RVI7O0FFMzZFTTtFQUNFO0FGODZFUjs7QUU1NkVNO0VBQ0U7QUYrNkVSOztBRW43RU07RUFDRTtBRnM3RVI7O0FFcDdFTTtFQUNFO0FGdTdFUjs7QUVuOEVNO0VBQ0U7QUZzOEVSOztBRXA4RU07RUFDRTtBRnU4RVI7O0FFbjhFTTtFQUNFO0FGczhFUjs7QUVwOEVNO0VBQ0U7QUZ1OEVSOztBRTM4RU07RUFDRTtBRjg4RVI7O0FFNThFTTtFQUNFO0FGKzhFUjs7QUVuOUVNO0VBQ0U7QUZzOUVSOztBRXA5RU07RUFDRTtBRnU5RVI7O0FFMzlFTTtFQUNFO0FGODlFUjs7QUU1OUVNO0VBQ0U7QUYrOUVSOztBRW4rRU07RUFDRTtBRnMrRVI7O0FFcCtFTTtFQUNFO0FGdStFUjs7QUUzK0VNO0VBQ0U7QUY4K0VSOztBRTUrRU07RUFDRTtBRisrRVI7O0FFbi9FTTtFQUNFO0FGcy9FUjs7QUVwL0VNO0VBQ0U7QUZ1L0VSOztBRTMvRU07RUFDRTtBRjgvRVI7O0FFNS9FTTtFQUNFO0FGKy9FUjs7QUVuZ0ZNO0VBQ0U7QUZzZ0ZSOztBRXBnRk07RUFDRTtBRnVnRlI7O0FFLy9FRTtFQUNFO0FGa2dGSjs7QUVoZ0ZFO0VBQ0U7QUZtZ0ZKOztBRXZnRkU7RUFDRTtBRjBnRko7O0FFeGdGRTtFQUNFO0FGMmdGSjs7QUUvZ0ZFO0VBQ0U7QUZraEZKOztBRWhoRkU7RUFDRTtBRm1oRko7O0FHaGpGQTtBQUVBOytFQUFBO0FBR0E7Ozs7RUFBQTtBQU1BO0VBQ0U7RUFBbUI7RUFDbkI7RUFBNEI7RUFDNUI7RUFBZ0M7QUhtakZsQzs7QUdoakZBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFO0FIaWpGRjs7QUc5aUZBOztFQUFBO0FBSUE7Ozs7OztFQU1FO0FIZ2pGRjs7QUc3aUZBOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQTtBSCtpRkY7O0FHNWlGQTsr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O0VBQ0UsMENDcklnQjtBTDRpR3RCO0FJbDZGSTtFQUNFO0FKbzZGTjs7QUkvNUZBO0VBQ0U7QUprNkZGOztBSS81RkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FKazZGRjs7QUk5NUZBO0VBRUU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBb0RBO0VKNjJGRjtFSS81RkU7SUFDRTtFSmk2Rko7RUk5NUZFOztJQUVFO0lBQ0E7RUpnNkZKO0VJNzVGRTtJQUFLO0VKZzZGUDtFSS81RkU7SUFDRTtJQUNBO0VKaTZGSjtFSS81Rkk7SUFDRTtJQUNBO0VKaTZGTjtFSS81Rk07SUFDRTtFSmk2RlI7RUk3NUZFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFSis1Rko7RUk3NUZJO0lBQ0U7SUFDQTtFSis1Rk47RUk1NUZFO0lBQ0U7SUFDQTtFSjg1Rko7RUk1NUZFO0lBQ0U7SUFDQTtJQUNBO0VKODVGSjtFSTU1RkU7SUFDRTtJQUNBO0VKODVGSjtFSTE1RkU7SUFDRTtJQUNBO0VKNDVGSjtBQUNGO0FJcjVGQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUp1NUZGO0FJcjVGRTtFQUNFLHNCQzVMa0I7RUQ2TGxCLG1CQ3hMcUI7RUR5THJCO0VBQ0E7RUFDQTtBSnU1Rko7QUlwNUZJO0VBQ0U7RUFDQTtFQUNBO0FKczVGTjtBSW41Rk07O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUpxNUZSO0FJbjVGTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUpxNUZSO0FJajVGTTtFQUNFO0FKbTVGUjtBSWg1Rk07RUFDRTtBSms1RlI7QUkvNEZNO0VBQ0U7RUFDQTtFQUNBO0FKaTVGUjtBSTM0Rkk7RUFDRTtBSjY0Rk47QUkxNEZJO0VBQ0UseUJDM2hCWTtFRDRoQlosY0NqUG9CO0FMNm5HMUI7QUkxNEZNO0VBQ0U7QUo0NEZSO0FJeDRGRTtFQUNFO0VBQ0E7RUFDQSxjQ3RpQmM7QUxnN0dsQjtBSXg0Rk07RUFDRSxzQkM3UG9CO0FMdW9HNUI7QUlwNEZJO0VBQ0Usc0JDdlFnQjtFRHdRaEI7RUFDQTtBSnM0Rk47QUlwNEZJO0VBQ0U7QUpzNEZOO0FJcDRGSTtFQUNFO0FKczRGTjs7QUloNEZBO0VBQ0U7RUFDQSxjQ2hrQmdCO0FMbThHbEI7O0FJajRGQTtFQUNFO0VBQ0E7QUpvNEZGOztBSTkzRkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBSmk0Rko7QUkvM0ZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSmk0Rk47O0FJNTNGQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUorM0ZKO0FJOTNGRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJDeG1CYztFRHltQmQ7QUpnNEZKO0FJOTNGRTtFQUNFLHlCQzVtQmM7QUw0K0dsQjtBSS8zRkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0FKZzRGTjtBSTczRkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QUo4M0ZOOztBSTEzRkE7RUFDSTtJQUNFO0lBQ0E7RUo2M0ZKO0VJMzNGRTtJQUNFO0lBQ0E7RUo2M0ZKO0VJMzNGRTtJQUNFO0lBQ0E7RUo2M0ZKO0FBQ0Y7QUkxM0ZBO0VBQ0k7SUFDRTtJQUNBO0VKNDNGSjtFSTEzRkU7SUFDRTtJQUNBO0VKNDNGSjtFSTEzRkU7SUFDRTtJQUNBO0VKNDNGSjtBQUNGO0FJeDNGQTs7bUJBQUE7QUFJQTtFQUNFO0FKeTNGRjs7QUlyM0ZBO0VBQ0U7QUp3M0ZGOztBSXQzRkE7RUFDRTtBSnkzRkY7O0FJdjNGQTtFQUNFO0FKMDNGRjs7QUl2M0ZBO0VBQ0U7QUowM0ZGOztBSXgzRkE7RUFDRTtBSjIzRkY7O0FJdjNGQTs7RUFDRTtBSjIzRkY7O0FJeDNGQTtFQUNFO0FKMjNGRjs7QUl4M0ZBO0VBQ0U7RUFDQTtFQUNBO0FKMjNGRjs7QUl4M0ZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUoyM0ZGOztBSXgzRkE7RUFDRTtBSjIzRkY7O0FNem5IQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxpQkQyQ2E7RUMxQ2IsWUQwQ2E7RUN6Q2I7RUFDQTtFQUNBO0FONG5IRjtBTTFuSEU7RUFDRTtFQUNBO0VBQ0E7RUFDQSx5QkR1QmM7RUN0QmQ7QU40bkhKO0FNMW5IRTtFQUNFO0FONG5ISjtBTXpuSEU7RUFDRTtBTjJuSEo7O0FNdG5IQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGlCRGdCYTtFQ2ZiLFlEZWE7RUNkYjtBTnluSEY7O0FNcm5IQTtFQUNFO0FOd25IRjs7QU10bkhBO0VBQ0U7QU55bkhGOztBTXZuSEE7RUFDRTtBTjBuSEY7O0FNdm5IQTtFQUNFO0VBQ0E7RUFDQTtBTjBuSEY7O0FPL3FIQTtBQUNBO0VBQ0U7RUFDQTtBUGtySEY7O0FRcnJIQTtFQUNFO0VBQ0E7RUFDQTtBUndySEY7O0FRdHJIQTtFQUNFO0lBQ0U7RVJ5ckhGO0FBQ0Y7QVF2ckhBO0VBQ0U7SUFDRTtFUnlySEY7QUFDRjtBUXZySEE7RUFDRTtFQUNBO0FSeXJIRjs7QVF0ckhBO0VBQ0U7RUFDQTtBUnlySEY7QVF2ckhFO0VBQ0U7QVJ5ckhKO0FRdnJIRTtFQUNFO0FSeXJISjtBUXZySEU7RUFDRTtBUnlySEo7O0FRanFIQTtFQUNFO0VBQ0E7RUFDQTtBUm9xSEY7QVFqcUhFO0VBQ0U7RUFDQTtFQUNBO0FSbXFISjtBUWhxSEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBUmtxSEo7QVFocUhJO0VBRUU7QVJpcUhOO0FRM3BITTtFQUNFLG9CQUZLO0VBMUNYO0VBQ0E7RUFDQTtBUjBzSEY7QVFqcUhNO0VBQ0UscUJBRks7RUExQ1g7RUFDQTtFQUNBO0FSZ3RIRjtBUXZxSE07RUFDRSxVQUZLO0VBMUNYO0VBQ0E7RUFDQTtBUnN0SEY7QVE3cUhNO0VBQ0UscUJBRks7RUExQ1g7RUFDQTtFQUNBO0FSNHRIRjtBUW5ySE07RUFDRSxxQkFGSztFQTFDWDtFQUNBO0VBQ0E7QVJrdUhGO0FRenJITTtFQUNFLFVBRks7RUExQ1g7RUFDQTtFQUNBO0FSd3VIRjtBUS9ySE07RUFDRSxxQkFGSztFQTFDWDtFQUNBO0VBQ0E7QVI4dUhGO0FRcnNITTtFQUNFLHFCQUZLO0VBMUNYO0VBQ0E7RUFDQTtBUm92SEY7QVEzc0hNO0VBQ0UsVUFGSztFQTFDWDtFQUNBO0VBQ0E7QVIwdkhGO0FRanRITTtFQUNFLHFCQUZLO0VBMUNYO0VBQ0E7RUFDQTtBUmd3SEY7QVF2dEhNO0VBQ0UscUJBRks7RUExQ1g7RUFDQTtFQUNBO0FSc3dIRjtBUTd0SE07RUFDRSxXQUZLO0VBMUNYO0VBQ0E7RUFDQTtBUjR3SEY7QVF6d0hFO0VBQ0UsMEJBOENTO0FSNnRIYjtBUXp3SEU7RUFDRSxvQkEyQ1M7QVJndUhiO0FRendIRTtFQUNFLG1CQXdDUztBUm11SGI7QVFseEhFO0VBQ0UsMkJBOENTO0FSc3VIYjtBUWx4SEU7RUFDRSxxQkEyQ1M7QVJ5dUhiO0FRbHhIRTtFQUNFLG9CQXdDUztBUjR1SGI7QVEzeEhFO0VBQ0UsZ0JBOENTO0FSK3VIYjtBUTN4SEU7RUFDRSxVQTJDUztBUmt2SGI7QVEzeEhFO0VBQ0UsU0F3Q1M7QVJxdkhiO0FRcHlIRTtFQUNFLDJCQThDUztBUnd2SGI7QVFweUhFO0VBQ0UscUJBMkNTO0FSMnZIYjtBUXB5SEU7RUFDRSxvQkF3Q1M7QVI4dkhiO0FRN3lIRTtFQUNFLDJCQThDUztBUml3SGI7QVE3eUhFO0VBQ0UscUJBMkNTO0FSb3dIYjtBUTd5SEU7RUFDRSxvQkF3Q1M7QVJ1d0hiO0FRdHpIRTtFQUNFLGdCQThDUztBUjB3SGI7QVF0ekhFO0VBQ0UsVUEyQ1M7QVI2d0hiO0FRdHpIRTtFQUNFLFNBd0NTO0FSZ3hIYjtBUS96SEU7RUFDRSwyQkE4Q1M7QVJteEhiO0FRL3pIRTtFQUNFLHFCQTJDUztBUnN4SGI7QVEvekhFO0VBQ0Usb0JBd0NTO0FSeXhIYjtBUXgwSEU7RUFDRSwyQkE4Q1M7QVI0eEhiO0FReDBIRTtFQUNFLHFCQTJDUztBUit4SGI7QVF4MEhFO0VBQ0Usb0JBd0NTO0FSa3lIYjtBUWoxSEU7RUFDRSxnQkE4Q1M7QVJxeUhiO0FRajFIRTtFQUNFLFVBMkNTO0FSd3lIYjtBUWoxSEU7RUFDRSxTQXdDUztBUjJ5SGI7QVExMUhFO0VBQ0UsMkJBOENTO0FSOHlIYjtBUTExSEU7RUFDRSxxQkEyQ1M7QVJpekhiO0FRMTFIRTtFQUNFLG9CQXdDUztBUm96SGI7QVFuMkhFO0VBQ0UsMkJBOENTO0FSdXpIYjtBUW4ySEU7RUFDRSxxQkEyQ1M7QVIwekhiO0FRbjJIRTtFQUNFLG9CQXdDUztBUjZ6SGI7QVE1MkhFO0VBQ0UsaUJBOENTO0FSZzBIYjtBUTUySEU7RUFDRSxXQTJDUztBUm0wSGI7QVE1MkhFO0VBQ0UsVUF3Q1M7QVJzMEhiO0FRajBISTtFQUtJO0lBQ0Usb0JBRks7SUE3RGI7SUFDQTtJQUNBO0VSKzNIQTtFUW4wSE07SUFDRSxxQkFGSztJQTdEYjtJQUNBO0lBQ0E7RVJxNEhBO0VRejBITTtJQUNFLFVBRks7SUE3RGI7SUFDQTtJQUNBO0VSMjRIQTtFUS8wSE07SUFDRSxxQkFGSztJQTdEYjtJQUNBO0lBQ0E7RVJpNUhBO0VRcjFITTtJQUNFLHFCQUZLO0lBN0RiO0lBQ0E7SUFDQTtFUnU1SEE7RVEzMUhNO0lBQ0UsVUFGSztJQTdEYjtJQUNBO0lBQ0E7RVI2NUhBO0VRajJITTtJQUNFLHFCQUZLO0lBN0RiO0lBQ0E7SUFDQTtFUm02SEE7RVF2MkhNO0lBQ0UscUJBRks7SUE3RGI7SUFDQTtJQUNBO0VSeTZIQTtFUTcySE07SUFDRSxVQUZLO0lBN0RiO0lBQ0E7SUFDQTtFUis2SEE7RVFuM0hNO0lBQ0UscUJBRks7SUE3RGI7SUFDQTtJQUNBO0VScTdIQTtFUXozSE07SUFDRSxxQkFGSztJQTdEYjtJQUNBO0lBQ0E7RVIyN0hBO0VRLzNITTtJQUNFLFdBRks7SUE3RGI7SUFDQTtJQUNBO0VSaThIQTtFUTk3SEE7SUFDRSwwQkFpRVc7RVIrM0hiO0VROTdIQTtJQUNFLG9CQThEVztFUms0SGI7RVE5N0hBO0lBQ0UsbUJBMkRXO0VScTRIYjtFUXY4SEE7SUFDRSwyQkFpRVc7RVJ3NEhiO0VRdjhIQTtJQUNFLHFCQThEVztFUjI0SGI7RVF2OEhBO0lBQ0Usb0JBMkRXO0VSODRIYjtFUWg5SEE7SUFDRSxnQkFpRVc7RVJpNUhiO0VRaDlIQTtJQUNFLFVBOERXO0VSbzVIYjtFUWg5SEE7SUFDRSxTQTJEVztFUnU1SGI7RVF6OUhBO0lBQ0UsMkJBaUVXO0VSMDVIYjtFUXo5SEE7SUFDRSxxQkE4RFc7RVI2NUhiO0VRejlIQTtJQUNFLG9CQTJEVztFUmc2SGI7RVFsK0hBO0lBQ0UsMkJBaUVXO0VSbTZIYjtFUWwrSEE7SUFDRSxxQkE4RFc7RVJzNkhiO0VRbCtIQTtJQUNFLG9CQTJEVztFUnk2SGI7RVEzK0hBO0lBQ0UsZ0JBaUVXO0VSNDZIYjtFUTMrSEE7SUFDRSxVQThEVztFUis2SGI7RVEzK0hBO0lBQ0UsU0EyRFc7RVJrN0hiO0VRcC9IQTtJQUNFLDJCQWlFVztFUnE3SGI7RVFwL0hBO0lBQ0UscUJBOERXO0VSdzdIYjtFUXAvSEE7SUFDRSxvQkEyRFc7RVIyN0hiO0VRNy9IQTtJQUNFLDJCQWlFVztFUjg3SGI7RVE3L0hBO0lBQ0UscUJBOERXO0VSaThIYjtFUTcvSEE7SUFDRSxvQkEyRFc7RVJvOEhiO0VRdGdJQTtJQUNFLGdCQWlFVztFUnU4SGI7RVF0Z0lBO0lBQ0UsVUE4RFc7RVIwOEhiO0VRdGdJQTtJQUNFLFNBMkRXO0VSNjhIYjtFUS9nSUE7SUFDRSwyQkFpRVc7RVJnOUhiO0VRL2dJQTtJQUNFLHFCQThEVztFUm05SGI7RVEvZ0lBO0lBQ0Usb0JBMkRXO0VSczlIYjtFUXhoSUE7SUFDRSwyQkFpRVc7RVJ5OUhiO0VReGhJQTtJQUNFLHFCQThEVztFUjQ5SGI7RVF4aElBO0lBQ0Usb0JBMkRXO0VSKzlIYjtFUWppSUE7SUFDRSxpQkFpRVc7RVJrK0hiO0VRamlJQTtJQUNFLFdBOERXO0VScStIYjtFUWppSUE7SUFDRSxVQTJEVztFUncrSGI7QUFDRjtBUW4rSEk7RUFLSTtJQUNFLG9CQUZLO0lBakZiO0lBQ0E7SUFDQTtFUnFqSUE7RVFyK0hNO0lBQ0UscUJBRks7SUFqRmI7SUFDQTtJQUNBO0VSMmpJQTtFUTMrSE07SUFDRSxVQUZLO0lBakZiO0lBQ0E7SUFDQTtFUmlrSUE7RVFqL0hNO0lBQ0UscUJBRks7SUFqRmI7SUFDQTtJQUNBO0VSdWtJQTtFUXYvSE07SUFDRSxxQkFGSztJQWpGYjtJQUNBO0lBQ0E7RVI2a0lBO0VRNy9ITTtJQUNFLFVBRks7SUFqRmI7SUFDQTtJQUNBO0VSbWxJQTtFUW5nSU07SUFDRSxxQkFGSztJQWpGYjtJQUNBO0lBQ0E7RVJ5bElBO0VRemdJTTtJQUNFLHFCQUZLO0lBakZiO0lBQ0E7SUFDQTtFUitsSUE7RVEvZ0lNO0lBQ0UsVUFGSztJQWpGYjtJQUNBO0lBQ0E7RVJxbUlBO0VRcmhJTTtJQUNFLHFCQUZLO0lBakZiO0lBQ0E7SUFDQTtFUjJtSUE7RVEzaElNO0lBQ0UscUJBRks7SUFqRmI7SUFDQTtJQUNBO0VSaW5JQTtFUWppSU07SUFDRSxXQUZLO0lBakZiO0lBQ0E7SUFDQTtFUnVuSUE7RVFwbklBO0lBQ0UsMEJBcUZXO0VSaWlJYjtFUXBuSUE7SUFDRSxvQkFrRlc7RVJvaUliO0VRcG5JQTtJQUNFLG1CQStFVztFUnVpSWI7RVE3bklBO0lBQ0UsMkJBcUZXO0VSMGlJYjtFUTduSUE7SUFDRSxxQkFrRlc7RVI2aUliO0VRN25JQTtJQUNFLG9CQStFVztFUmdqSWI7RVF0b0lBO0lBQ0UsZ0JBcUZXO0VSbWpJYjtFUXRvSUE7SUFDRSxVQWtGVztFUnNqSWI7RVF0b0lBO0lBQ0UsU0ErRVc7RVJ5akliO0VRL29JQTtJQUNFLDJCQXFGVztFUjRqSWI7RVEvb0lBO0lBQ0UscUJBa0ZXO0VSK2pJYjtFUS9vSUE7SUFDRSxvQkErRVc7RVJra0liO0VReHBJQTtJQUNFLDJCQXFGVztFUnFrSWI7RVF4cElBO0lBQ0UscUJBa0ZXO0VSd2tJYjtFUXhwSUE7SUFDRSxvQkErRVc7RVIya0liO0VRanFJQTtJQUNFLGdCQXFGVztFUjhrSWI7RVFqcUlBO0lBQ0UsVUFrRlc7RVJpbEliO0VRanFJQTtJQUNFLFNBK0VXO0VSb2xJYjtFUTFxSUE7SUFDRSwyQkFxRlc7RVJ1bEliO0VRMXFJQTtJQUNFLHFCQWtGVztFUjBsSWI7RVExcUlBO0lBQ0Usb0JBK0VXO0VSNmxJYjtFUW5ySUE7SUFDRSwyQkFxRlc7RVJnbUliO0VRbnJJQTtJQUNFLHFCQWtGVztFUm1tSWI7RVFucklBO0lBQ0Usb0JBK0VXO0VSc21JYjtFUTVySUE7SUFDRSxnQkFxRlc7RVJ5bUliO0VRNXJJQTtJQUNFLFVBa0ZXO0VSNG1JYjtFUTVySUE7SUFDRSxTQStFVztFUittSWI7RVFyc0lBO0lBQ0UsMkJBcUZXO0VSa25JYjtFUXJzSUE7SUFDRSxxQkFrRlc7RVJxbkliO0VRcnNJQTtJQUNFLG9CQStFVztFUnduSWI7RVE5c0lBO0lBQ0UsMkJBcUZXO0VSMm5JYjtFUTlzSUE7SUFDRSxxQkFrRlc7RVI4bkliO0VROXNJQTtJQUNFLG9CQStFVztFUmlvSWI7RVF2dElBO0lBQ0UsaUJBcUZXO0VSb29JYjtFUXZ0SUE7SUFDRSxXQWtGVztFUnVvSWI7RVF2dElBO0lBQ0UsVUErRVc7RVIwb0liO0FBQ0Y7QVFyb0lJO0VBS0k7SUFDRSxvQkFGSztJQXJHYjtJQUNBO0lBQ0E7RVIydUlBO0VRdm9JTTtJQUNFLHFCQUZLO0lBckdiO0lBQ0E7SUFDQTtFUml2SUE7RVE3b0lNO0lBQ0UsVUFGSztJQXJHYjtJQUNBO0lBQ0E7RVJ1dklBO0VRbnBJTTtJQUNFLHFCQUZLO0lBckdiO0lBQ0E7SUFDQTtFUjZ2SUE7RVF6cElNO0lBQ0UscUJBRks7SUFyR2I7SUFDQTtJQUNBO0VSbXdJQTtFUS9wSU07SUFDRSxVQUZLO0lBckdiO0lBQ0E7SUFDQTtFUnl3SUE7RVFycUlNO0lBQ0UscUJBRks7SUFyR2I7SUFDQTtJQUNBO0VSK3dJQTtFUTNxSU07SUFDRSxxQkFGSztJQXJHYjtJQUNBO0lBQ0E7RVJxeElBO0VRanJJTTtJQUNFLFVBRks7SUFyR2I7SUFDQTtJQUNBO0VSMnhJQTtFUXZySU07SUFDRSxxQkFGSztJQXJHYjtJQUNBO0lBQ0E7RVJpeUlBO0VRN3JJTTtJQUNFLHFCQUZLO0lBckdiO0lBQ0E7SUFDQTtFUnV5SUE7RVFuc0lNO0lBQ0UsV0FGSztJQXJHYjtJQUNBO0lBQ0E7RVI2eUlBO0VRMXlJQTtJQUNFLDBCQXlHVztFUm1zSWI7RVExeUlBO0lBQ0Usb0JBc0dXO0VSc3NJYjtFUTF5SUE7SUFDRSxtQkFtR1c7RVJ5c0liO0VRbnpJQTtJQUNFLDJCQXlHVztFUjRzSWI7RVFueklBO0lBQ0UscUJBc0dXO0VSK3NJYjtFUW56SUE7SUFDRSxvQkFtR1c7RVJrdEliO0VRNXpJQTtJQUNFLGdCQXlHVztFUnF0SWI7RVE1eklBO0lBQ0UsVUFzR1c7RVJ3dEliO0VRNXpJQTtJQUNFLFNBbUdXO0VSMnRJYjtFUXIwSUE7SUFDRSwyQkF5R1c7RVI4dEliO0VRcjBJQTtJQUNFLHFCQXNHVztFUml1SWI7RVFyMElBO0lBQ0Usb0JBbUdXO0VSb3VJYjtFUTkwSUE7SUFDRSwyQkF5R1c7RVJ1dUliO0VROTBJQTtJQUNFLHFCQXNHVztFUjB1SWI7RVE5MElBO0lBQ0Usb0JBbUdXO0VSNnVJYjtFUXYxSUE7SUFDRSxnQkF5R1c7RVJndkliO0VRdjFJQTtJQUNFLFVBc0dXO0VSbXZJYjtFUXYxSUE7SUFDRSxTQW1HVztFUnN2SWI7RVFoMklBO0lBQ0UsMkJBeUdXO0VSeXZJYjtFUWgySUE7SUFDRSxxQkFzR1c7RVI0dkliO0VRaDJJQTtJQUNFLG9CQW1HVztFUit2SWI7RVF6MklBO0lBQ0UsMkJBeUdXO0VSa3dJYjtFUXoySUE7SUFDRSxxQkFzR1c7RVJxd0liO0VRejJJQTtJQUNFLG9CQW1HVztFUnd3SWI7RVFsM0lBO0lBQ0UsZ0JBeUdXO0VSMndJYjtFUWwzSUE7SUFDRSxVQXNHVztFUjh3SWI7RVFsM0lBO0lBQ0UsU0FtR1c7RVJpeEliO0VRMzNJQTtJQUNFLDJCQXlHVztFUm94SWI7RVEzM0lBO0lBQ0UscUJBc0dXO0VSdXhJYjtFUTMzSUE7SUFDRSxvQkFtR1c7RVIweEliO0VRcDRJQTtJQUNFLDJCQXlHVztFUjZ4SWI7RVFwNElBO0lBQ0UscUJBc0dXO0VSZ3lJYjtFUXA0SUE7SUFDRSxvQkFtR1c7RVJteUliO0VRNzRJQTtJQUNFLGlCQXlHVztFUnN5SWI7RVE3NElBO0lBQ0UsV0FzR1c7RVJ5eUliO0VRNzRJQTtJQUNFLFVBbUdXO0VSNHlJYjtBQUNGOztBU2w4SUE7RUFlRSxnQlRUa0I7RVNXbEIseUJUYmM7RVNjZDtFQUNBLFlKbU9xQjtFSWxPckIsaUJKa09xQjtBTG90SXZCO0FTejhJRTtFQUNFO0FUMjhJSjtBU3o4SUk7RUFDRSxnQkppUGlCO0VJaFBqQjtBVDI4SU47QVN4OElJO0VBQ0U7RUFDQTtBVDA4SU47QVMvN0lFO0VBQUksZ0JUaEJjO0FBazlJcEI7QVNoOElFOzs7RUFHRTtFQUNBO0VBQ0EsWUp5Tm1CO0VJeE5uQixpQkp3Tm1CO0FMMHVJdkI7QVMvN0lFO0VBQ0U7RUFDQTtBVGk4SUo7QVM5N0lFO0VBQ0U7SUFBb0I7RVRpOEl0QjtBQUNGO0FTNzdJRTtFQUNFO0VBQ0E7RUFDQTtFQUNBLFlKc01tQjtFSXJNbkI7QVQrN0lKO0FTNzdJSTtFQUNFLFlKa01pQjtFSWpNakIsaUJKaU1pQjtBTDh2SXZCO0FTejdJRTtFQUNFO0VBQ0EsZ0JUdkRnQjtFU3dEaEI7RUFDQSxpQkoyTHFCO0VJMUxyQjtBVDI3SUo7QVN6N0lJO0VBQ0U7RUFDQTtBVDI3SU47QVN4N0lJO0VBWkY7SUFhSTtJQUNBO0VUMjdJSjtFU3o3SUk7SUFDRTtJQUNBO0VUMjdJTjtFU3g3SUk7SUFBUztFVDI3SWI7RVMxN0lJO0lBQ0U7SUFDQTtFVDQ3SU47QUFDRjtBU3o3SUk7RUFDRTtFQUNBO0FUMjdJTjtBU3g3SUk7OztFQUdFO0VBQ0E7QVQwN0lOO0FTcDdJRTtFQUNFO0VBQ0E7RUFDQTtBVHM3SUo7QVNqN0lFO0VBQ0U7QVRtN0lKO0FTajdJSTtFQUNFO0VBQ0E7RUFDQTtBVG03SU47QVNqN0lNO0VBQ0U7QVRtN0lSO0FTaDdJSTtFQUNFO0VBQ0EsZUo0SGE7RUkzSGIsZ0JUdkhjO0VTd0hkO0VBQ0E7RUFDQTtBVGs3SU47QVNoN0lNO0VBQ0U7RUFDQTtFQUNBO0FUazdJUjtBU2g3SVE7RUFDRTtFQUNBO0FUazdJVjtBUzk2SU07RUFDRTtBVGc3SVI7QVM1NklJO0VBQ0U7QVQ4NklOO0FTejZJRTtFQUNFO0FUMjZJSjtBU3g2SUU7RUFDRTtFQUNBO0FUMDZJSjtBU3g2SUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBVDA2SU47QVN4NklNO0VBRUU7RUFDQTtBVHk2SVI7QVNyNklJO0VBQ0U7RUFDQTtBVHU2SU47QVNyNklNO0VBQ0U7RUFDQTtBVHU2SVI7QVNyNklNO0VBQWEsZ0JUL0tDO0FBdWxKcEI7O0FTbDZJQTtFQUNFO0VBQ0EsWUp5RHFCO0VJeERyQjtBVHE2SUY7QVNuNklFO0VBQ0U7QVRxNklKOztBU2w2SUE7RUFDRTtJQUNFLGdCSjhDWTtFTHUzSWQ7O0VTbjZJQTtJQUNFLFlKMkNZO0lJMUNaLGlCSjBDWTtFTDQzSWQ7O0VTcDZJQTtJQUNFLFlKdUNZO0VMZzRJZDtBQUNGO0FVcG5KQTtFQUNFO0FWc25KRjs7QVVubkpBO0VBQ0U7RUFjQSxnSUw2Ulc7RUs1Ulg7RUFDQSwwQkw0UlU7QUw2MElaO0FVdm5KRTtFQUhGO0lBSUk7RVYwbkpGO0FBQ0Y7QVV4bkpFO0VBUEY7SUFRSTtFVjJuSkY7QUFDRjtBVXpuSkU7RUFYRjtJQVlJO0VWNG5KRjtBQUNGOztBVXRuSkE7RUFDQztFQUNBO0FWeW5KRDs7QVVybkpBO0VBQXFDO0FWeW5KckM7O0FVeG5KQTtFQUFLLGlCTHFSUztFS3JSZ0I7RUFBbUI7QVY4bkpqRDs7QVU3bkpBO0VBQUssa0JMcVJTO0VLclJnQjtFQUFtQjtBVm1vSmpEOztBVWxvSkE7RUFBSyxrQkxxUlM7RUtyUmdCO0VBQW1CO0FWd29KakQ7O0FVdm9KQTtFQUFLLGtCTHFSUztFS3JSZ0I7RUFBbUI7QVY2b0pqRDs7QVU1b0pBO0VBQUssa0JMcVJTO0VLclJnQjtFQUFtQjtBVmtwSmpEOztBVWpwSkE7RUFBSyxrQkxxUlM7RUtyUmdCO0VBQW1CO0FWdXBKakQ7O0FVcHBKQTtFQUFLO0FWd3BKTDs7QVV2cEpBO0VBQVM7QVYycEpUOztBVTFwSkE7RUFBUTtBVjhwSlI7O0FVN3BKQTtFQUFTO0FWaXFKVDs7QVVocUpBO0VBQVE7QVZvcUpSOztBVTlwSkk7RUFISjtJQUlNO0VWa3FKSjtBQUNGO0FVcHFKSTtFQUhKO0lBSU07RVZ1cUpKO0FBQ0Y7QVV6cUpJO0VBSEo7SUFJTTtFVjRxSko7QUFDRjtBVTlxSkk7RUFISjtJQUlNO0VWaXJKSjtBQUNGO0FVbnJKSTtFQUhKO0lBSU07RVZzckpKO0FBQ0Y7QVV4ckpJO0VBSEo7SUFJTTtFVjJySko7QUFDRjtBVTdySkk7RUFISjtJQUlNO0VWZ3NKSjtBQUNGO0FVbHNKSTtFQUhKO0lBSU07RVZxc0pKO0FBQ0Y7QVV2c0pJO0VBSEo7SUFJTTtFVjBzSko7QUFDRjtBVTVzSkk7RUFISjtJQUlNO0VWK3NKSjtBQUNGO0FVanRKSTtFQUhKO0lBSU07RVZvdEpKO0FBQ0Y7QVV0dEpJO0VBSEo7SUFJTTtFVnl0Sko7QUFDRjtBVTN0Skk7RUFISjtJQUlNO0VWOHRKSjtBQUNGO0FVaHVKSTtFQUhKO0lBSU07RVZtdUpKO0FBQ0Y7QVVydUpJO0VBSEo7SUFJTTtFVnd1Sko7QUFDRjtBVTF1Skk7RUFISjtJQUlNO0VWNnVKSjtBQUNGO0FVL3VKSTtFQUhKO0lBSU07RVZrdkpKO0FBQ0Y7QVVwdkpJO0VBSEo7SUFJTTtFVnV2Sko7QUFDRjtBVXp2Skk7RUFISjtJQUlNO0VWNHZKSjtBQUNGO0FVOXZKSTtFQUhKO0lBSU07RVZpd0pKO0FBQ0Y7QVVud0pJO0VBSEo7SUFJTTtFVnN3Sko7QUFDRjtBVWp3SkU7RUFWRjtJQVdJO0VWb3dKRjtBQUNGOztBVzd6SkE7RUFVRTtBWHV6SkY7QVdoMEpFO0VBQ0U7RUFDQTtBWGswSko7QVcvekpFO0VBQ0U7QVhpMEpKOztBWXYwSkE7RUFDRTtFQUNBLGFQaUdhO0VPaEdiO0VBQ0E7RUFFQSxzQlA4RmM7QUwydUpoQjs7QVl0MEpBO0VBQ0U7RUFDQTtFQUNBLHNCUHdGYztFT3ZGZDtFQUNBO0FaeTBKRjtBWXIwSkU7RUFDRTtFQUNBO0FadTBKSjtBWXQwSkk7RUFDRTtBWncwSk47QVluMEpFO0VBQ0U7QVpxMEpKO0FZbjBKSTtFQUNFO0VBQ0E7QVpxMEpOO0FZbjBKSTtFQUNFO0FacTBKTjtBWW4wSkk7RUFDRTtFQUNBO0FacTBKTjtBWW4wSkk7RUFDRTtFQUNBO0VBQ0E7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QUNBLFlYdURjO0VXdERkLGlCWHNEYztFV3JEZCxlWHNEZTtFV3JEZjtFQUNBO0VBQ0E7QWhCeXBLRjs7QWdCcnBLQTs7Ozs7Ozs7Ozs7Ozs7O0VBZUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEJ3cEtGO0FnQnZwS0U7Ozs7Ozs7Ozs7Ozs7OztFQUNFO0VBQ0E7QWhCdXFLSjs7QWdCbHFLQTs7Ozs7RUFLRSxlWFlpQjtFV1hqQjtBaEJxcUtGO0FnQnBxS0U7Ozs7O0VBQ0UsaUJYVW9CO0VXVHBCO0FoQjBxS0o7O0FnQm5xS0U7O0VBQ0U7QWhCdXFLSjs7QWdCbHFLQTtFQUNFO0VBQ0EsV1hNb0I7RVdMcEIseUJYM0JnQjtFVzRCaEI7RUFDQTtFQUVBO0VBQ0E7QWhCb3FLRjtBZ0JucUtFO0VBQ0UseUJYSDZCO0FMd3FLakM7O0FnQi9wS0E7RUF3Q0U7RUFDQSxXWDVCc0I7RVc2QnRCO0VBQ0E7RUFDQTtFQUNBLFdYL0JxQjtFV2dDckIsWVhoQ3FCO0VXaUNyQixpQlhqQ3FCO0VXa0NyQjtFQUNBLHlCWHpGZ0I7RVcwRmhCLGtCWG5DdUI7RVdxQ3ZCO0VBQ0E7RUFDQTtBaEIwbktGO0FnQi9xS0U7RUFDRSx5QlgxQ2M7QUwydEtsQjtBZ0I5cUtFO0VBQ0U7QWhCZ3JLSjtBZ0I5cUtFO0VBSUUsV1hkeUI7RVdlekIsWVhmeUI7RVdnQnpCO0FoQjZxS0o7QWdCbHJLSTtFQUNFO0FoQm9yS047QWdCL3FLSTtFQUNFLGlCWGxCdUI7QUxtc0s3QjtBZ0I3cUtFO0VBSUUsYVhwQnlCO0VXcUJ6QixjWHJCeUI7QUxpc0s3QjtBZ0JocktJO0VBQ0U7QWhCa3JLTjtBZ0I5cUtJO0VBQ0UsbUJYdkJ1QjtBTHVzSzdCO0FnQjVxS0U7RUFLRTtFQUNBO0VBQ0E7QWhCMHFLSjtBZ0JocktJO0VBQ0U7RUFDQTtBaEJrcktOO0FnQjdwS0U7RUFDRTtFQUNBO0VBQ0E7RUFDQSxXWDlDb0I7RVcrQ3BCLGlCWGhFMEI7RVdpRTFCLGlCWC9DbUI7QUw4c0t2Qjs7QWdCMXBLQTtFQUNFLFlYMUZjO0FMdXZLaEI7O0FnQnpwS0E7RUF1RkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQnNrS0Y7QWdCaHFLSTtFQUNFO0FoQmtxS047QWdCN3BLRTtFQUVFO0FoQjhwS0o7QWdCN3BLSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhCK3BLTjtBZ0I5cEtNO0VBQ0U7RUFDQTtBaEJncUtSO0FnQjVwS0U7RUFDRTtBaEI4cEtKO0FnQjdwS0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEIrcEtOO0FnQjlwS007RUFDRTtBaEJncUtSO0FnQjVwS0U7RUFDRTtBaEI4cEtKO0FnQjdwS0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEIrcEtOO0FnQjlwS007RUFDRTtBaEJncUtSO0FnQjVwS0U7RUFNRTtFQUNBLFlYbEl5QjtBTDJ4SzdCO0FnQjlwS007RUFDRTtBaEJncUtSO0FnQjNwS0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEI2cEtOO0FnQjVwS007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQjhwS1I7QWdCN3BLUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxpQlh2Sm1CO0VXd0puQjtBaEIrcEtWO0FnQjlwS1U7RUFDRTtBaEJncUtaO0FnQnBwS0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEJzcEtKO0FnQnJwS0k7RUFDRTtBaEJ1cEtOO0FnQnJwS0k7RUFDRTtBaEJ1cEtOO0FnQnBwS0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdYMUttQjtFVzJLbkIsWVgzS21CO0VXNEtuQix5QlhsT2M7RVdtT2Qsa0JYNUtxQjtFVzZLckI7QWhCc3BLSjs7QWdCanBLQTtFQUNFO0VBQ0E7RUFDQSxjWDdMa0I7RVc4TGxCO0VBQ0E7QWhCb3BLRjtBZ0JucEtFO0VBRUU7QWhCb3BLSjtBZ0JscEtFO0VBQ0U7QWhCb3BLSjtBZ0JscEtFO0VBRUU7RUFDQTtFQUNBO0FoQm1wS0o7O0FnQjlvS0E7RUFFRSxZWDVOb0I7RVc2TnBCLGlCWDdOb0I7RVc4TnBCLGVYaE91QjtFV2lPdkI7QWhCZ3BLRjtBZ0I5b0tFO0VBQ0UsaUJYbk8wQjtBTG0zSzlCOztBZ0Izb0tBO0VBRUUsY1huT29CO0VXb09wQixtQlhwT29CO0VXcU9wQixlWHZPdUI7QUxvM0t6QjtBZ0I1b0tFO0VBQ0UsaUJYeE8wQjtBTHMzSzlCOztBZ0J6b0tBO0VBQ0U7QWhCNG9LRjs7QWlCNThLQTtFQU9FLHNCWm9Ka0I7RVluSmxCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQnk4S0Y7QWlCejlLRTtFQUNFO0FqQjI5S0o7QWlCejhLRTtFQXNDRTtFQUNBLDBCWnVQUTtFWXRQUjtFQUNBLGdCakJ0RG1CO0VpQnVEbkI7RUFDQTtFQUNBO0FqQnM2S0o7QWlCajlLSTtFQUNFLHNCWnNJb0I7QUw2MEsxQjtBaUJoOUtJO0VBQ0U7QWpCazlLTjtBaUIvOEtJO0VBQ0U7RUFDQTtBakJpOUtOO0FpQjk4S0k7RUFDRTtFQUNBLGNaSVk7RVlIWjtFQUNBO0VBQ0E7QWpCZzlLTjtBaUI3OEtJO0VBQ0U7RUFDQTtFQUNBO0FqQis4S047QWlCMzhLSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpCNjhLTjs7QWlCOTdLRTtFQUNFO0FqQmk4S0o7O0FpQjU3S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBakIrN0tGOztBaUI1N0tBO0VBQ0U7QWpCKzdLRjs7QWtCamhMQTs7Ozs7OztFQUFBO0FBVUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxCa2hMRjtBa0JoaExFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQmloTEo7QWtCN2dMRTtFQUNFO0FsQitnTEo7QWtCN2dMRTtFQUNFO0FsQitnTEo7QWtCN2dMRTtFQUNFO0FsQitnTEo7QWtCN2dMRTtFQUNFO0FsQitnTEo7QWtCN2dMRTtFQUNFO0FsQitnTEo7QWtCN2dMRTtFQUNFO0FsQitnTEo7QWtCN2dMRTtFQUNFO0FsQitnTEo7QWtCM2dMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxCNmdMSjtBa0IxZ0xFO0VBQ0U7RUFDQTtBbEI0Z0xKOztBa0J4Z0xBO0VBQ0U7QWxCMmdMRjs7QWtCeGdMQTtFQUNFO0VBQ0E7QWxCMmdMRjs7QWtCeGdMQTtFQUNFO0VBQ0E7QWxCMmdMRjtBa0J6Z0xFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxCMmdMSjs7QWtCdmdMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEIwZ0xGOztBa0J2Z0xBO0VBQ0U7QWxCMGdMRjs7QWtCdmdMQTtBQUNBO0VBQ0U7QWxCMGdMRjs7QW1CMW5MQTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBbkJzbkxGO0FtQnhvTEU7RUFDRTtBbkIwb0xKO0FtQnZuTEU7RUFyQkY7SUFzQkc7RW5CMG5MRDtBQUNGO0FtQnhuTEU7RUFDRTtBbkIwbkxKO0FtQnZuTEU7RUFDRTtBbkJ5bkxKO0FtQnZuTEU7RUFDRTtBbkJ5bkxKO0FtQnRuTEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5Cd25MSjtBbUJ0bkxJO0VBQ0U7QW5Cd25MTjs7QW1CcG5MQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7QW5Cc25MRjs7QW1CbG5MQTtFQUNFO0VBQ0E7QW5CcW5MRjtBbUJubkxFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkJxbkxKO0FtQmxuTEU7RUFDRTtFQUNBO0VBQ0E7QW5Cb25MSjs7QW1CL21MQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuQmtuTEY7O0FvQjlzTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEJpdExGOztBb0I3c0xBO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCZnNHeUI7RWVyR3pCO0FwQjRzTEY7QW9CdHRMRTtFQUNFO0FwQnd0TEo7QW9CN3NMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCK3NMSjs7QW9CNXNMQTtFQUNFO0FwQitzTEY7O0FvQjVzTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEIrc0xGOztBb0J4c0xFOztFQUNFO0VBQ0E7QXBCNHNMSjtBb0Ixc0xJOztFQUFLO0FwQjhzTFQ7QW9CM3NMRTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQjhzTEo7QW9CNXNMSTs7RUFBVTtBcEJndExkO0FvQi9zTEk7O0VBQUk7QXBCbXRMUjtBb0JodExFOztFQUNFO0VBQ0Esc0Jmd0R1QjtBTDJwTDNCO0FvQmp0TEk7O0VBQ0U7QXBCb3RMTjs7QW9CM3NMQTtFQUNFO0VBQ0E7QXBCOHNMRjtBb0I3c0xFO0VBQ0U7RUFFQTtFQUNBO0FwQjhzTEo7QW9CNXNMRTtFQUNFO0VBQ0E7QXBCOHNMSjs7QXFCcnlMQTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QmhCZ0hjO0VnQi9HZCxrQmhCa0hZO0VnQmpIWixpQmhCaUhZO0FMaXJMZDtBcUJsekxFO0VBQ0U7RUFDQSx5QmhCOEhrQjtFZ0I3SGxCO0FyQm96TEo7QXFCcnlMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJCdXlMSjtBcUJweUxFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckJzeUxKOztBcUJseUxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsaUJoQnNJYTtFZ0JySWI7RUFDQTtFQUNBO0FyQnF5TEY7QXFCbnlMRTtFQUNFO0VBQ0E7QXJCcXlMSjtBcUJseUxFO0VBQ0U7QXJCb3lMSjtBcUJqeUxFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxlaEJpSGM7RWdCaEhkLFloQnlHVztFZ0J4R1g7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckJteUxKO0FxQmh5TEU7RUFDRTtFQUNBO0FyQmt5TEo7QXFCOXhMRTtFQUNFO0VBQ0E7QXJCZ3lMSjs7QXFCM3hMQTtFQUNFO0VBQ0E7RUFDQTtBckI4eExGOztBcUI1eExBO0VBQ0U7RUFDQTtBckIreExGOztBc0J2M0xBO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEJvM0xGO0FzQjczTEk7RUFDRTtBdEIrM0xOO0FzQnIzTEU7RUFDRTtBdEJ1M0xKOztBc0JuM0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEJzM0xGOztBc0JuM0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0QnMzTEY7O0F1Qjk1TEE7RUFDRSwwQmxCbU1hO0FMOHRMZjs7QXVCOTVMQTtFQUNFO0VBQ0EseUJsQm1Ed0I7QUw4MkwxQjs7QXVCOTVMQTtFQUNFLGlCbEJxS2dCO0VrQnBLaEIsY2xCMEptQjtBTHV3THJCOztBd0I3NkxBOytFQUFBO0FBR0E7QUFFQTtFQUNFLGNuQmdMdUI7QUw4dkx6Qjs7QXdCMzZMQTtBQUVBOzs7Ozs7Ozs7Ozs7O0VBZUU7RUFDQTtFQUNBLGdDbkIySWE7RW1CMUliO0VBQ0E7RUFDQSxZbkJzSWE7RW1CckliO0VBQ0EsZW5CMklnQjtFbUIxSWhCLGlCbkI0SWE7RW1CM0liLFVuQjRJYztFbUIzSWQ7RUFDQTtFQUNBO0F4QjI2TEY7QXdCeDZMRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUVFLDBCbkJzSW1CO0VtQnJJbkIsNkNuQnVJb0I7QUwwekx4QjtBd0I3N0xFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBRUUsMEJuQitIbUI7QUx1MUx2QjtBd0JsOUxFOzs7Ozs7Ozs7Ozs7O0VBQ0U7RUFDQTtBeEJnK0xKO0F3QjU5TEU7Ozs7Ozs7Ozs7Ozs7RUFDRSxjbkJyQmM7QUwrL0xsQjtBd0JwOUxFOzs7Ozs7Ozs7Ozs7O0VBQ0UsY25CM0NZO0FMNmdNaEI7QXdCcDlMRTs7Ozs7Ozs7Ozs7OztFQUNFLGNuQnpEVTtBTDJoTWQ7QXdCOTlMRTs7Ozs7Ozs7Ozs7OztFQUNFO0F4QjQrTEo7QXdCbCtMQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQ0U7RUFDQTtBeEI0L0xGOztB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QTtFQUNFO0VBQ0EscUNwQm9GcUI7QUxzMU12Qjs7QXlCdjZNQTtBQUNBOztFQUVFO0VBQ0EsaUNwQjZFcUI7QUw2MU12Qjs7QXlCdjZNQTtFQUNFLDBCcEJ5RXFCO0FMaTJNdkI7O0F5QnY2TUE7RUFDRSxpQ3BCcUVxQjtBTHEyTXZCOztBeUJ2Nk1BO0VBQ0UscUNwQmlFcUI7RW9CaEVyQixxQnBCaUUyQjtBTHkyTTdCOztBMEIzaE5BOytFQUFBO0FBR0E7QUFDQTs7RUFFRTtFQUNBO0VBQ0E7QTFCNmhORjs7QTBCemhOQTtFQWFFO0ExQmdoTkY7QTBCM2hORTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFCNmhOSjtBMEJ6aE5FO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUIwaE5KO0EwQnZoTkU7RUFDRTtFQUNBO0ExQnloTko7QTBCdGhORTtFQUNFO0VBQ0EscUNyQmlJbUI7QUx1NU12QjtBMEJwaE5FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUJzaE5KOztBMEJqaE5FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsK0JyQnNIVztFcUJySFgsZ0NyQnFIVztFcUJwSFg7RUFDQTtFQUNBO0ExQm9oTko7QTBCamhORTtFQUNFO0VBQ0E7QTFCbWhOSjs7QTBCL2dOQTtBQUVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsK0JyQmdHVztFcUIvRlg7RUFDQTtFQUNBO0VBQ0E7QTFCaWhOSjtBMEI3Z05FO0VBQ0U7RUFDQTtBMUIrZ05KOztBMEJ4Z05FO0VBQ0U7QTFCMmdOSjtBMEJ4Z05FOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUIwZ05KO0EwQnRnTkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUJ3Z05KO0EwQnJnTkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFCdWdOSjtBMEJsZ05JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFCb2dOTjtBMEJqZ05JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QnJCMUhZO0VxQjJIWjtBMUJtZ05OO0EwQjkvTUU7RUFDRTtFQUNBLHFCckJnQmdCO0VxQmZoQjtBMUJnZ05KO0EwQjcvTUU7RUFDRTtFQUNBLHlCckJ4SWM7RXFCeUlkLHFCckJ6SWM7QUx3b05sQjtBMEIzL01FO0VBQ0U7RUFDQTtBMUI2L01KO0EwQjEvTUU7RUFDRTtFQUNBLHlCckJWeUI7QUxzZ043QjtBMEJ6L01FO0VBQ0U7QTFCMi9NSjtBMEJ4L01FO0VBQ0UseUJyQmxCeUI7RXFCbUJ6QixxQnJCbkJ5QjtBTDZnTjdCOztBMkIvck5BOytFQUFBO0FBR0E7O0VBRUU7RUFDQTtBM0Jpc05GOztBMkI5ck5BO0VBQ0U7QTNCaXNORjs7QTJCOXJOQTtFQUNFO0VBQ0E7RUFDQTtBM0Jpc05GO0EyQi9yTkU7RUFDRSx5QnRCNExzQjtBTHFnTjFCO0EyQi9yTkk7RUFDRTtBM0Jpc05OO0EyQjlyTkk7RUFDRSx5QnRCY1k7QUxrck5sQjs7QTJCM3JOQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxxQ3RCNEswQjtFc0IzSzFCLG1CdEI0S2M7RXNCM0tkO0VBQ0E7RUFDQTtFQUNBO0EzQjhyTkY7QTJCNXJORTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0I4ck5KO0EyQjNyTkU7RUFDRTtBM0I2ck5KO0EyQjFyTkU7RUFDRSx5QnRCbUprQjtFc0JsSmxCO0EzQjRyTko7O0EyQnZyTkE7O0VBRUU7RUFDQTtBM0Iwck5GOztBMkJ2ck5BOztFQUVFO0VBQ0E7QTNCMHJORjs7QTJCdHJOQTtFQUNFO0VBQ0E7QTNCeXJORjs7QTJCdHJOQTs7RUFFRSx5QnRCMkYyQjtBTDhsTjdCOztBNEJoeE5BOytFQUFBO0FBR0E7RUFBUztBNUJteE5UOztBNEJseE5BO0VBQXlCO0E1QnN4TnpCOztBNEJweE5BO0VBQ0UsMEN2QjZMa0I7RXVCNUxsQjtFQUNBLFl2QmdNZTtFdUIvTGYseUJ2QnlMYztFdUJ4TGQsa0J2QitMYztFdUI5TGQsWXZCeUphO0FMOG5OZjs7QTRCcHhOQTtFQUNFO0E1QnV4TkY7O0E0QnB4TkE7RUFxQ0U7QTVCbXZORjtBNEI3dk5FO0VBRUU7RUFDQTtBNUI4dk5KO0E0QnJ2TkU7RUFJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdDdkJxR1c7RXVCcEdYO0VBQ0EsWXZCaUdXO0V1QmhHWCxpQnZCZ0dXO0V1Qi9GWDtFQUNBLGV2QnFHYztFdUJwR2QsaUJ2QnNHVztFdUJyR1g7RUFDQTtFQUNBO0VBQ0E7QTVCb3ZOSjtBNEJyd05JO0VBQ0U7QTVCdXdOTjtBNEJwdk5FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVCc3ZOSjtBNEJudk5FO0VBQ0U7RUFDQTtFQUNBLGlCdkJvRmM7QUxpcU5sQjs7QTRCaHZOQTtFQUNFLDBCdkIrRXFCO0FMb3FOdkI7O0E0Qi91TkU7RUFDRSwwQnZCMEVtQjtBTHdxTnZCO0E0Qmh2TkU7RUFDRSx5QnZCdUVtQjtBTDJxTnZCOztBNEI5dU5BO0VBQ0UsMEJ2QmtFcUI7RXVCakVyQjtFQUNBO0E1Qml2TkY7O0E0Qjl1TkE7RUFDRSx5QnZCc0ZzQjtBTDJwTnhCOztBNEI5dU5BOzs7RUFHRSx5QnZCZ0ZzQjtFdUIvRXRCO0E1Qml2TkY7O0E0Qjd1TkU7RUFDRSxxQ3ZCc0VrQjtBTDBxTnRCOztBNEIxdU5JO0VBQ0UscUN2QjhEZ0I7QUwrcU50QjtBNEIxdU5JO0VBQ0UscUN2QjREbUI7QUxnck56Qjs7QTRCdHVOQTtFQUNFO0VBQ0E7RUFDQTtBNUJ5dU5GOztBNEJ0dU5BO0VBQWtCO0E1QjB1TmxCOztBNEJ0dU5FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVCeXVOSjs7QTRCcHVOQTtFQUNFO0E1QnV1TkY7QTRCcnVORTtFQUNFO0E1QnV1Tko7QTRCcHVORTtFQUNFO0E1QnN1Tko7QTRCbnVORTtFQUNFO0E1QnF1Tko7O0E2QnQ1TkE7K0VBQUE7QUFHQTtFQUNFO0E3Qnc1TkY7QTZCdDVORTtFQUNFO0VBQ0E7QTdCdzVOSjtBNkJyNU5FO0VBQWtCO0E3Qnc1TnBCO0E2QnQ1TkU7RUFDRTtFQUNBLFl4QnNKVztFd0JySlgsaUJ4QnFKVztBTG13TmY7QTZCcjVORTtFQUNFO0E3QnU1Tko7QTZCcDVORTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0JnNU5KO0E2Qi81Tkk7RUFDRTtBN0JpNk5OOztBOEI1N05BOytFQUFBO0FBR0E7RUFDRTtBOUI4N05GOztBOEIzN05BOztFQUdFO0E5QjY3TkY7O0E4QjE3TkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUI2N05GO0E4QjM3TkU7RUFDRTtBOUI2N05KOztBOEJ6N05BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QnpCS2dCO0V5QkpoQjtFQUVBO0VBQ0E7QTlCMjdORjtBOEJ6N05FO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY3pCTGM7RXlCTWQ7RUFDQTtBOUIyN05KO0E4Qng3TkU7RUFDRTtBOUIwN05KO0E4Qng3Tkk7RUFDRSxXekJrSGE7RXlCakhiO0VBQ0E7RUFDQTtBOUIwN05OOztBOEJwNk5BO0VBQ0U7QTlCdTZORjs7QThCcDZOQTtFQW5CRSxXekJnSWE7RXlCL0hiO0VBQ0E7QTlCMjdORjs7QThCdDZOQTtFQWpCRTtFQUNBLFl6QnVIYTtFeUJ0SGIsV3pCdUhZO0V5QnRIWjtFQUNBLG1CekJsQ2dCO0V5Qm1DaEI7RUFjQTtFQUNBLHlCekJsRGdCO0V5Qm1EaEI7RUFDQTtBOUI4Nk5GOztBOEIxNk5BO0VBQ0U7QTlCNjZORjs7QThCejZOQTtFQUNFO0VBQ0E7RUFFQTtBOUIyNk5GOztBOEJ4Nk5BO0VBNUNFLFd6QmdJYTtFeUIvSGI7RUFDQTtBOUJ3OU5GOztBOEIxNk5BO0VBQ0U7QTlCNjZORjs7QThCMTZOQTtFQTlDRTtFQUNBLFl6QnVIYTtFeUJ0SGIsV3pCdUhZO0V5QnRIWjtFQUNBLG1CekJsQ2dCO0V5Qm1DaEI7RUEyQ0E7QTlCazdORjs7QThCOTZOQTtFQUNFO0VBQ0E7QTlCaTdORjs7QThCOTZOQTtFQUNFO0E5Qmk3TkY7O0E4Qjc2TkE7RUFDRSxXekIyRGE7RXlCeERiO0VBR0E7RUFDQTtFQUVBO0VBQ0E7QTlCMjZORjs7QThCeDZOQTtFQUNFO0E5QjI2TkY7O0E4Qng2TkE7RUFDRTtBOUIyNk5GOztBOEJ4Nk5BO0VBcEZFO0VBQ0EsWXpCdUhhO0V5QnRIYixXekJ1SFk7RXlCdEhaO0VBQ0EsbUJ6QmxDZ0I7RXlCbUNoQjtBOUJnZ09GOztBOEI3Nk5BO0VBQ0U7QTlCZzdORjs7QStCL2tPQTs7ZUFBQTtBQUlFO0VBQ0k7QS9CaWxPTjtBK0I5a09FO0VBQ0U7QS9CZ2xPSjtBK0I5a09FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0JnbE9KO0ErQjlrT0k7RUFDRTtFQUNBO0VBQ0E7QS9CZ2xPTjtBK0I5a09JO0VBQ0U7RUFDQTtFQUNBO0EvQmdsT047O0FnQzdtT0E7RUFDRTtFQUNBLFkzQjZQYztFMkI1UGQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCM0J1UGlCO0UyQnRQakI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaENnbk9GO0FnQzNtT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEM2bU9KO0FnQzFtT0U7RUFDRTtBaEM0bU9KO0FnQ3htT0U7RUFDRTtFQUNBLGlCM0JpT2tCO0FMeTROdEI7QWdDeG1PSTtFQUFXO0FoQzJtT2Y7QWdDeG1PRTtFQUNFLDBCM0J3TmlCO0UyQnZOakI7RUFDQSxlM0JxTmdCO0UyQnBOaEI7RUFDQSxZM0J1TmtCO0UyQnRObEIsaUIzQnNOa0I7RTJCck5sQjtBaEMwbU9KO0FnQ3htT0k7RUFBVTtBaEMybU9kO0FnQ3ptT0k7RUFDRTtBaEMybU9OO0FnQ3htT0k7RUFFaUIsVzNCZUM7QUwwbE90QjtBZ0N4bU9JO0VBQWEsYzNCNkJHO0FMOGtPcEI7QWdDem1PSTtFQUNvQjtBaEMybU94QjtBZ0MxbU9J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aUMzME9zQztFQUN0QztJQUFRO0VqQzgwT1I7RWlDOTBPc0M7RUFDdEM7SUFBUTtFakNpMU9SO0VpQ2oxT3NDO0FqQ20xT3hDO0FpQ2gxT0E7RUFDRTtJQUFPO0VqQ20xT1A7RWlDbDFPQTtJQUFNO0VqQ3ExT047RWlDcDFPQTtJQUFNO0VqQ3UxT047RWlDdDFPQTtJQUFNO0VqQ3kxT047RWlDeDFPQTtJQUFNO0VqQzIxT047RWlDMTFPQTtJQUFPO0VqQzYxT1A7QUFDRjtBaUMzMU9BO0VBQ0U7SUFBTztFakM4MU9QO0VpQzcxT0E7SUFBTTtFakNnMk9OO0VpQy8xT0E7SUFBTTtFakNrMk9OO0VpQ2oyT0E7SUFBTTtFakNvMk9OO0VpQ24yT0E7SUFBTTtFakNzMk9OO0VpQ3IyT0E7SUFBTztFakN3Mk9QO0FBQ0Y7QWlDdDJPQTtFQUNFO0lBQU87RWpDeTJPUDtFaUN4Mk9BO0lBQU07RWpDMjJPTjtFaUMxMk9BO0lBQU07RWpDNjJPTjtFaUM1Mk9BO0lBQU07RWpDKzJPTjtFaUM5Mk9BO0lBQU07RWpDaTNPTjtBQUNGO0FpQy8yT0E7RUFDRTtJQUFPO0VqQ2szT1A7RWlDajNPQTtJQUFNO0VqQ28zT047RWlDbjNPQTtJQUFNO0VqQ3MzT047RWlDcjNPQTtJQUFNO0VqQ3czT047RWlDdjNPQTtJQUFNO0VqQzAzT047QUFDRjtBaUN4M09BO0VBQ0U7SUFBTztFakMyM09QO0VpQzEzT0E7SUFBTTtFakM2M09OO0VpQzUzT0E7SUFBTTtFakMrM09OO0VpQzkzT0E7SUFBTTtFakNpNE9OO0VpQ2g0T0E7SUFBTTtFakNtNE9OO0FBQ0Y7QWlDajRPQTtFQUNFO0lBQU87RWpDbzRPUDtFaUNuNE9BO0lBQU07RWpDczRPTjtFaUNyNE9BO0lBQU07RWpDdzRPTjtFaUN2NE9BO0lBQU07RWpDMDRPTjtFaUN6NE9BO0lBQU07RWpDNDRPTjtBQUNGO0FpQzE0T0E7RUFDRTtJQUFPO0VqQzY0T1A7RWlDNTRPQTtJQUFNO0VqQys0T047RWlDOTRPQTtJQUFNO0VqQ2k1T047RWlDaDVPQTtJQUFNO0VqQ201T047RWlDbDVPQTtJQUFPO0VqQ3E1T1A7QUFDRjtBaUNuNU9BO0VBQ0U7SUFBTztFakNzNU9QO0VpQ3I1T0E7SUFBTTtFakN3NU9OO0VpQ3Y1T0E7SUFBTTtFakMwNU9OO0VpQ3o1T0E7SUFBTTtFakM0NU9OO0VpQzM1T0E7SUFBTztFakM4NU9QO0FBQ0Y7QWlDNTVPQTs7O0VBQUE7QUFJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQzg1T0Y7O0FpQzM1T0E7RUFDRTtFQUNBO0FqQzg1T0Y7O0FpQzM1T0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDODVPRjtBaUM1NU9FO0VBQ0U7RUFDQTtFQUNBO0VBQW1CO0VBQ25CO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQys1T0o7QWlDNTVPRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FqQzg1T0o7QWlDNTVPRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FqQzg1T0o7O0FpQ3g1T0E7RUFDRTtFQUNBO0VBQ0E7QWpDMjVPRjs7QWlDeDVPQTtFQUNFO0VBQ0E7RUFDQTtBakMyNU9GOztBaUN4NU9BO0VBQ0U7SUFBTztFakM0NU9QO0VpQzM1T0E7SUFBTTtFakM4NU9OO0VpQzc1T0E7SUFBSztFakNnNk9MO0FBQ0Y7QWlDOTVPQTtFQUNFO0lBQU87RWpDaTZPUDtFaUNoNk9BO0lBQU07RWpDbTZPTjtFaUNsNk9BO0lBQUs7RWpDcTZPTDtBQUNGO0FpQ242T0E7RUFDRTtJQUFPO0VqQ3M2T1A7RWlDcjZPQTtJQUFNO0VqQ3c2T047RWlDdjZPQTtJQUFLO0VqQzA2T0w7QUFDRjtBaUN4Nk9BO0VBQ0U7SUFBTztFakMyNk9QO0VpQzE2T0E7SUFBTTtFakM2Nk9OO0VpQzU2T0E7SUFBSztFakMrNk9MO0FBQ0Y7QWlDNzZPQTtFQUNFO0VBQ0E7RUFDQTtBakMrNk9GOztBaUM1Nk9BO0VBQ0U7SUFBTztFakNnN09QO0VpQy82T0E7SUFBSztFakNrN09MO0FBQ0Y7QWlDaDdPQTtFQUNFO0lBQU87RWpDbTdPUDtFaUNsN09BO0lBQUs7RWpDcTdPTDtBQUNGO0FrQ2x3UEE7RUFDRTtFQUNBO0VBQ0E7QWxDb3dQRjtBa0Nqd1BFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDbXdQSjtBa0Nqd1BJO0VBQ0U7QWxDbXdQTjtBa0Nod1BJO0VBQ0U7RUFDQTtBbENrd1BOO0FrQzl2UEU7RUFDRSx5QjdCaVBjO0U2QmhQZDtFQUNBO0FsQ2d3UEo7QWtDOXZQSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDZ3dQTjtBa0M5dlBNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxDZ3dQUjtBa0M3dlBNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQyt2UFI7QWtDN3ZQUTtFQUFJLGM3QnFOWTtBTDJpUHhCO0FrQzd2UE07RUFDRTtBbEMrdlBSO0FrQ3p2UEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDMnZQSjtBa0N6dlBJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUI3QjRMa0I7RTZCMUxsQjtFQUNBO0FsQzB2UE47QWtDeHZQTTtFQUNFLHlCN0J1TGlCO0FMbWtQekI7O0FtQ2gxUEE7RUFxQ0U7RUFDQTtFQUNBO0VBQ0EsYTlCc0VnQjtFOEJyRWhCO0VBQ0E7RUFDQTtBbkMreVBGO0FtQ3oxUEU7RUFDRTtFQUNBO0FuQzIxUEo7QW1DejFQSTtFQUtFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5DdTFQTjtBbUMvMVBNO0VBQ0U7QW5DaTJQUjtBbUN2MVBJO0VBQ0U7RUFDQTtFQUNBLGlCOUIwRlk7RThCekZaO0VBQ0E7RUFDQTtBbkN5MVBOO0FtQ3YxUE07RUFDRTtFQUNBO0VBQ0E7QW5DeTFQUjtBbUN0MVBNO0VBQ0U7QW5DdzFQUjtBbUMzMFBFO0VBQ0U7RUFDQSxZOUJnRW1CO0U4Qi9EbkIsYTlCK0RtQjtFOEI5RG5CO0VBQ0E7RUFDQTtBbkM2MFBKO0FtQzMwUEk7RUFDRTtBbkM2MFBOO0FtQ3owUEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5DMjBQSjtBbUN6MFBJO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FuQ3MwUE47QW1DbjFQTTtFQUNFO0FuQ3ExUFI7QW1DcDBQRTs7RUFFRTtBbkNzMFBKOztBb0M3NVBBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQ2c2UEY7O0FvQzc1UEE7RUFDRTtFQUNBO0FwQ2c2UEY7QW9DOTVQRTtFQUNFO0VBQ0E7RUFDQSxzR0FDRTtBcEMrNVBOO0FvQzM1UEU7RUFDRTtBcEM2NVBKO0FvQzM1UEU7RUFDRTtFQUNBO0VBQ0EsMERBQ0U7QXBDNDVQTjs7QW9DdDVQQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHlCcENsQ2M7RW9DbUNkO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzR0FDRTtBcEN3NVBKOztBb0NwNVBBO0VBQ0U7RUFDQTtBcEN1NVBGOztBb0NwNVBBO0VBd0JFO0VBQ0E7RUFDQTtBcENnNFBGO0FvQ3o1UEU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEMwNVBKO0FvQ3g1UEU7RUFDRTtFQUNBO0FwQzA1UEo7QW9DeDVQRTtFQUNFO0VBQ0EsdURBQ0U7RUFHRjtBcEN1NVBKOztBb0MvNFBBO0VBTUU7RUFDQTtFQUNBO0VBRUE7RUFDQTtBcEM0NFBGO0FvQ3Q1UEU7RUFFRTtBcEN1NVBKOztBb0M1NFBBO0VBQ0U7SUFDRTtJQUNBO0VwQys0UEY7QUFDRjtBcUNwL1BBO0VBZ0JFO0VBQ0E7QXJDdStQRjtBcUN2L1BFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyQ3kvUEo7O0FxQ2wvUEE7RUFDRTtJQUNFO0lBQ0E7RXJDcS9QRjtFcUNuL1BBO0lBQ0U7SUFDQTtFckNxL1BGO0VxQ24vUEE7SUFDRTtJQUNBO0VyQ3EvUEY7QUFDRjtBc0NyaFFBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7QXRDdWhRRjs7QXNDcGhRQTtFQUNFO0VBQ0E7RUFDQTtBdEN1aFFGOztBc0NwaFFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRDdWhRRjtBc0NyaFFFO0VBQ0U7QXRDdWhRSjtBc0NuaFFJO0VBSUU7RUFDQTtFQUNBO0F0Q2toUU47QXNDdmhRTTtFQUNFO0F0Q3loUVI7QXNDbGhRSTtFQUNFO0F0Q29oUU47QXNDaGhRRTtFQUNFO0F0Q2toUUo7QXNDL2dRRTtFQUNFO0F0Q2loUUo7O0FzQzdnUUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdENnaFFGOztBc0M1Z1FBO0FBQ0E7RUFDRTtFQUNBLHlCakNsQmdCO0VpQ21CaEI7RUFDQTtFQUNBO0F0QytnUUY7QXNDN2dRRTtFQUNFO0VBQ0E7RUFDQTtFQUNBLCtCakMwRWM7QUxxOFBsQjtBc0M1Z1FFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRDOGdRSjs7QXNDemdRQTtBQUNBO0VBQ0U7QXRDNGdRRjs7QXNDemdRQTtFQUNFO0VBQ0E7RUFDQTtBdEM0Z1FGO0FzQzFnUUU7RUFDRTtBdEM0Z1FKO0FzQ3pnUUU7RUFDRTtFQUNBO0F0QzJnUUo7QXNDeGdRRTtFQUNFO0F0QzBnUUo7QXNDdmdRRTtFQUNFO0VBQ0EsV2pDaUMrQjtBTHcrUG5DO0FzQ3RnUUU7RUFnQkU7RUFDQTtBdEN5L1BKO0FzQ3pnUUk7RUFDRSxjakNyRVk7QUxnbFFsQjtBc0N4Z1FJO0VBQ0UseUJqQ3pFWTtFaUMwRVo7QXRDMGdRTjtBc0N2Z1FJO0VBRUUseUJqQzJCMEI7RWlDMUIxQjtBdEN3Z1FOOztBc0NoZ1FBO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0QysvUEY7QXNDM2dRRTtFQUNFLDBDakNlbUI7QUw4L1B2Qjs7QXNDOS9QQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdENpZ1FGOztBc0M5L1BBOzs7O0VBSUUsY2pDdEhnQjtFaUN1SGhCO0F0Q2lnUUY7O0FzQzkvUEE7RUFDRSxjakN6SFk7QUwwblFkOztBc0M3L1BBO0FBQ0E7RUFDRTtJQUNFO0V0Q2dnUUY7O0VzQzcv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UUE7RUFDSTtBQTYzUUo7O0FBMzNRQTs7RUFFSTtBQTgzUUo7O0FBeDNRQTtFQUNJO0lBQ0k7RUEyM1FOOztFQXozUUU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VBNDNRTjs7RUExM1FFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFQTYzUU47O0VBMzNRRTtJQUNJO0lBQ0E7SUFDQTtFQTgzUU47O0VBNTNRRTtJQUNJO0lBQ0E7RUErM1FOOztFQTczUUU7SUFDSTtFQWc0UU47O0VBOTNRRTtJQUNJO0VBaTRRTjs7RUEvM1FFO0lBQ0k7SUFDQTtJQUNBO0VBazRRTjtBQUNGO0FBLzNRQTs7RUFFSTtBQWk0UUo7O0FBLzNRQTtFQUNJO0FBazRRSjs7QUEvM1FBO0VBQ0k7QUFrNFFKOztBQTUzUUE7RUFDSTtBQSszUUo7O0FBNzNRQTtFQUNJO0FBZzRRSjs7QUE3M1FBO0VBQ0k7RUFDQTtBQWc0UUo7O0FBOTNRQTtFQUNJO0VBQ0E7QUFpNFFKOztBQTkzUUE7RUFDSTtFQUNBO0VBQ0E7QUFpNFFKOztBQS8zUUE7RUFDSTtFQUNBO0FBazRRSixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vYXBwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9kcm9wem9uZS9zcmMvZHJvcHpvbmUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX2NvbG9yLWNsYXNzZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX25vcm1hbGl6ZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9fZ2xvYmFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX2JhZGdlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9faWNvbnMtbWF0ZXJpYWwtZGVzaWduLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX3R5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX3RyYW5zaXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19jYXJkcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9fdG9hc3Quc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX3RhYnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL193YXZlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX2NvbGxhcHNpYmxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19jaGlwcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9fbWF0ZXJpYWxib3guc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvZm9ybXMvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL2Zvcm1zL19pbnB1dC1maWVsZHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvZm9ybXMvX3JhZGlvLWJ1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvZm9ybXMvX2NoZWNrYm94ZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvZm9ybXMvX3N3aXRjaGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvZm9ybXMvX2ZpbGUtaW5wdXQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvZm9ybXMvX3JhbmdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL190YWJsZV9vZl9jb250ZW50cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9fc2lkZW5hdi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9fcHJlbG9hZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX2Nhcm91c2VsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL190YXBUYXJnZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX3B1bHNlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19kYXRlcGlja2VyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL190aW1lcGlja2VyLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiJGltYWdlLWJvcmRlci1yYWRpdXM6IDA7XG5AaW1wb3J0IFwifmRyb3B6b25lL3NyYy9kcm9wem9uZVwiO1xuXG5AaW1wb3J0IFwifm1hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvY29sb3ItdmFyaWFibGVzXCI7XG4kcHJpbWFyeS1jb2xvcjogY29sb3IoXCJsaWdodC1ibHVlXCIsIFwibGlnaHRlbi0xXCIpO1xuLy8kc2Vjb25kYXJ5LWNvbG9yOiBjb2xvcihcImJyb3duXCIsIFwibGlnaHRlbi0yXCIpO1xuJG5hdmJhci1mb250LWNvbG9yOiAjMDAwMDAwZGU7XG4kZHJvcGRvd24taXRlbS1oZWlnaHQ6IDM2cHg7XG4kdGFicy10ZXh0LWNvbG9yOiAjMDAwMDAwZGU7XG4kdGFicy11bmRlcmxpbmUtY29sb3I6ICMyNmE2OWE7XG5ibG9ja3F1b3RlLmVycm9yIHtcbiAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkIGNvbG9yKCdtYXRlcmlhbGl6ZS1yZWQnLCAnYmFzZScpO1xufVxuQGltcG9ydCBcIn5tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9tYXRlcmlhbGl6ZVwiO1xuXG5pbnB1dDpub3QoW3R5cGVdKSwgaW5wdXRbdHlwZT10ZXh0XTpub3QoLmJyb3dzZXItZGVmYXVsdCksIGlucHV0W3R5cGU9cGFzc3dvcmRdOm5vdCguYnJvd3Nlci1kZWZhdWx0KSwgaW5wdXRbdHlwZT1lbWFpbF06bm90KC5icm93c2VyLWRlZmF1bHQpLCBpbnB1dFt0eXBlPXVybF06bm90KC5icm93c2VyLWRlZmF1bHQpLCBpbnB1dFt0eXBlPXRpbWVdOm5vdCguYnJvd3Nlci1kZWZhdWx0KSwgaW5wdXRbdHlwZT1kYXRlXTpub3QoLmJyb3dzZXItZGVmYXVsdCksIGlucHV0W3R5cGU9ZGF0ZXRpbWVdOm5vdCguYnJvd3Nlci1kZWZhdWx0KSwgaW5wdXRbdHlwZT1kYXRldGltZS1sb2NhbF06bm90KC5icm93c2VyLWRlZmF1bHQpLCBpbnB1dFt0eXBlPXRlbF06bm90KC5icm93c2VyLWRlZmF1bHQpLCBpbnB1dFt0eXBlPW51bWJlcl06bm90KC5icm93c2VyLWRlZmF1bHQpLCBpbnB1dFt0eXBlPXNlYXJjaF06bm90KC5icm93c2VyLWRlZmF1bHQpLCB0ZXh0YXJlYS5tYXRlcmlhbGl6ZS10ZXh0YXJlYSB7XG4gICAgcGFkZGluZy1sZWZ0OiA0cHg7XG59XG5sYWJlbCB7XG4gICAgcGFkZGluZy1sZWZ0OjRweDtcbn1cbi5pbnB1dC1maWVsZCA+IGxhYmVsOm5vdCgubGFiZWwtaWNvbikuYWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIycHgpIHNjYWxlKDEpICFpbXBvcnRhbnQ7XG59XG4uc2VsZWN0LXdyYXBwZXIgKyBsYWJlbCB7XG4gICAgdG9wOiAtMzJweDtcbiAgICBmb250LXNpemU6IDEuMHJlbTtcbn1cbi5ibGFjay10ZXh0e1xuICAgIGNvbG9yOiAkb2ZmLWJsYWNrICFpbXBvcnRhbnQ7XG59XG5uYXYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIEBleHRlbmQgLnotZGVwdGgtMDtcbn1cbi5zaWRlbmF2IHtcbiAgICBAZXh0ZW5kIC56LWRlcHRoLTA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNjRweCk7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG59XG5odG1sIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG59XG5ib2R5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5tYWluLCBmb290ZXIge1xuICAgIHBhZGRpbmctbGVmdDogMzAwcHg7XG59XG5tYWluIHtcbiAgICAvL21hcmdpbjogMjBweDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA2NHB4KTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNpZGVuYXYge1xuICAgIHRvcDo2NHB4O1xuICAgIG1hcmdpbi10b3A6IDEycHg7XG59XG4ubG9naW4tYm94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIGJvZHkgJiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL3B1YmxpYy9pbWFnZXMvcGF0dGVybi5wbmdcIik7XG4gICAgfVxufVxuZGl2LnRhYmxlLWxpc3QuZW1wdHkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL3B1YmxpYy9pbWFnZXMvYWNjb3VudHMvZW1wdHlfdXNlcl9saXN0LnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG59XG4jdG9hc3QtY29udGFpbmVyIHtcbiAgICBib3R0b206MjBweDtcbiAgICB0b3A6IGF1dG87XG59XG4ubm9zZWxlY3Qge1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTsgLyogaU9TIFNhZmFyaSAqL1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7IC8qIFNhZmFyaSAqL1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTsgLyogS29ucXVlcm9yIEhUTUwgKi9cbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lOyAvKiBPbGQgdmVyc2lvbnMgb2YgRmlyZWZveCAqL1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTsgLyogSW50ZXJuZXQgRXhwbG9yZXIvRWRnZSAqL1xuICAgIHVzZXItc2VsZWN0OiBub25lOyAvKiBOb24tcHJlZml4ZWQgdmVyc2lvbiwgY3VycmVudGx5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydGVkIGJ5IENocm9tZSwgRWRnZSwgT3BlcmEgYW5kIEZpcmVmb3ggKi9cbn1cblxudGFibGUuaGlnaGxpZ2h0ID4gdGJvZHkgPiB0cjpob3ZlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM4LCAxNjYsIDE1NCwgMC4zKSAhaW1wb3J0YW50O1xufVxuXG5cbi5sb2dpbi1ib3hfaG9sZGVyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGFkY2UwO1xuICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxubGFiZWwuZmxleHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5sYWJlbC5mbGV4ID4gc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5pbnB1dCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYzIyICFpbXBvcnRhbnQ7XG59XG50ZCwgdGgge1xuICAgIHBhZGRpbmc6IDEwcHggNXB4O1xufVxudHIgPiB0aDpmaXJzdC1jaGlsZCwgdHIgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5kYXRlcGlja2VyLXRhYmxlIHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4uZGF0ZXBpY2tlci10YWJsZSB0ciA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xufVxudGFibGUgdGJvZHkgdHI6aG92ZXIge1xuICAgIC8vYm94LXNoYWRvdzogMCAycHggMnB4IDAgcmdiKDAgMCAwIC8gMTQlKSwgMCAzcHggMXB4IC0ycHggcmdiKDAgMCAwIC8gMTIlKSwgMCAxcHggNXB4IDAgcmdiKDAgMCAwIC8gMjAlKTtcbiAgICAvL2JveC1zaGFkb3c6IDAgNHB4IDVweCAwIHJnYigwIDAgMCAvIDE0JSksIDAgMXB4IDEwcHggMCByZ2IoMCAwIDAgLyAxMiUpLCAwIDJweCA0cHggLTFweCByZ2IoMCAwIDAgLyAzMCUpO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogOTkycHgpIHtcbiAgICAuc2lkZW5hdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgIC5tb2RhbC5ib3R0b20tc2hlZXQubW9kYWwtbW9iaWxlIHtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBib3R0b206IC0xMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICB3aWxsLWNoYW5nZTogYm90dG9tLCBvcGFjaXR5O1xuICAgIH1cbiAgICAubG9naW4tYm94IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMCAxMHB4O1xuICAgIH1cbiAgICAubG9naW4tYm94X2hvbGRlciB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIC5sb2dpbi1ib3hfaGVhZGVyID4gc3BhbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgaHRtbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gICAgbWFpbiwgZm9vdGVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICAuc2lkZW5hdiB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgfVxufVxuXG4ucWwtZWRpdG9yIHN0cm9uZyxcbi5xbC1lZGl0b3IgYiB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5xbC1lZGl0b3Ige1xuICAgIG1pbi1oZWlnaHQ6IDgwcHg7XG59XG5cbltkcmFnZ2FibGU9XCJ0cnVlXCJdIHtcbiAgICBjdXJzb3I6IG1vdmU7XG59XG5cbi5kYWQtaG92ZXItdGFyZ2V0IGxpe1xuICAgIC8vb3BhY2l0eTowLjM1O1xufVxuLmRhZC1ob3Zlci10YXJnZXQtYmVmb3JlIGxpe1xuICAgIGJveC1zaGFkb3c6IDBweCA2cHggM3B4IC00cHggcmdiYSg0MSwxODIsMjQ2LDAuNzUpIGluc2V0O1xufVxuLmRhZC1ob3Zlci10YXJnZXQtYWZ0ZXIgbGl7XG4gICAgYm94LXNoYWRvdzogMHB4IC02cHggM3B4IC00cHggcmdiYSg0MSwxODIsMjQ2LDAuNzUpIGluc2V0O1xufVxuXG4uYnRuLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLmRyb3B6b25lIC5kei1wcmV2aWV3IC5kei1pbWFnZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiKDM4LCAxNjYsIDE1NCk7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLm1hdGVyaWFsLXRvb2x0aXAge1xuICAgIHBhZGRpbmc6IDFweCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAyNHB4IDM4cHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDAgOXB4IDQ2cHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xMiksIDAgMTFweCAxNXB4IC03cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIGJveC1zaGFkb3c6IDAgMjRweCAzOHB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDlweCA0NnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTIpLCAwIDExcHggMTVweCAtN3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbi5tYXRlcmlhbC10b29sdGlwIC50b29sdGlwLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGNvbG9yOiBibGFjaztcbn0iLCJAbWl4aW4ga2V5ZnJhbWVzKCRuYW1lKSB7XG4gIEAtd2Via2l0LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7IFxuICB9XG4gIEAtbW96LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH0gXG59XG5cblxuQG1peGluIHByZWZpeCgkbWFwLCAkdmVuZG9yczogd2Via2l0IG1veiBtcyBvKSB7XG4gIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgQGlmICR2ZW5kb3JzIHtcbiAgICAgIEBlYWNoICR2ZW5kb3IgaW4gJHZlbmRvcnMge1xuICAgICAgICAje1wiLVwiICsgJHZlbmRvciArIFwiLVwiICsgJHByb3B9OiAjeyR2YWx1ZX07XG4gICAgICB9XG4gICAgfVxuICAgIC8vIER1bXAgcmVndWxhciBwcm9wZXJ0eSBhbnl3YXlcbiAgICAjeyRwcm9wfTogI3skdmFsdWV9O1xuICB9XG59XG5cblxuQGluY2x1ZGUga2V5ZnJhbWVzKHBhc3NpbmctdGhyb3VnaCkge1xuICBcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgcHJlZml4KCh0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDBweCkpKTtcbiAgfVxuXG4gIDMwJSwgNzAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIEBpbmNsdWRlIHByZWZpeCgodHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCkpKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgcHJlZml4KCh0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQwcHgpKSk7XG4gIH1cbn1cblxuXG5AaW5jbHVkZSBrZXlmcmFtZXMoc2xpZGUtaW4pIHtcbiAgXG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHByZWZpeCgodHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwcHgpKSk7XG4gIH1cblxuICAzMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgQGluY2x1ZGUgcHJlZml4KCh0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KSkpO1xuICB9XG59XG5cblxuXG5AaW5jbHVkZSBrZXlmcmFtZXMocHVsc2UpIHtcbiAgXG4gIDAlIHsgQGluY2x1ZGUgcHJlZml4KCh0cmFuc2Zvcm06IHNjYWxlKDEpKSk7IH1cbiAgMTAlIHsgQGluY2x1ZGUgcHJlZml4KCh0cmFuc2Zvcm06IHNjYWxlKDEuMSkpKTsgfVxuICAyMCUgeyBAaW5jbHVkZSBwcmVmaXgoKHRyYW5zZm9ybTogc2NhbGUoMSkpKTsgfVxuXG59XG5cblxuXG4uZHJvcHpvbmUsIC5kcm9wem9uZSAqIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5kcm9wem9uZSB7XG5cbiAgJGltYWdlLXNpemU6IDEyMHB4O1xuXG4gICRpbWFnZS1ib3JkZXItcmFkaXVzOiAyMHB4O1xuXG4gICYuZHotY2xpY2thYmxlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAqIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG4gICAgLmR6LW1lc3NhZ2Uge1xuICAgICAgJiwgKiB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBtaW4taGVpZ2h0OiAxNTBweDtcbiAgYm9yZGVyOiAycHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgcGFkZGluZzogMjBweCAyMHB4O1xuXG4gICYuZHotc3RhcnRlZCB7XG4gICAgLmR6LW1lc3NhZ2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLmR6LWRyYWctaG92ZXIge1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgLmR6LW1lc3NhZ2Uge1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgIH1cbiAgfVxuICAuZHotbWVzc2FnZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMmVtIDA7XG5cbiAgICAuZHotYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250OiBpbmhlcml0O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgb3V0bGluZTogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuXG5cbiAgLmR6LXByZXZpZXcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gICAgbWFyZ2luOiAxNnB4O1xuICAgIG1pbi1oZWlnaHQ6IDEwMHB4O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAvLyBNYWtpbmcgc3VyZSB0aGF0IGFsd2F5cyB0aGUgaG92ZXJlZCBwcmV2aWV3IGVsZW1lbnQgaXMgb24gdG9wXG4gICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgLmR6LWRldGFpbHMge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZHotZmlsZS1wcmV2aWV3IHtcblxuICAgICAgLmR6LWltYWdlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGltYWdlLWJvcmRlci1yYWRpdXM7XG4gICAgICAgIGJhY2tncm91bmQ6ICM5OTk7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWUsICNkZGQpO1xuICAgICAgfVxuXG4gICAgICAuZHotZGV0YWlscyB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5kei1pbWFnZS1wcmV2aWV3IHtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgLmR6LWRldGFpbHMge1xuICAgICAgICBAaW5jbHVkZSBwcmVmaXgoKHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXIpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZHotcmVtb3ZlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIgLmR6LWRldGFpbHMge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgLmR6LWRldGFpbHMge1xuICAgICAgJGJhY2tncm91bmQtY29sb3I6ICM0NDQ7XG5cbiAgICAgIHotaW5kZXg6IDIwO1xuXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuXG4gICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAyZW0gMWVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcblxuICAgICAgJHdpZHRoOiAxMjBweDtcblxuICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG5cbiAgICAgIC5kei1zaXplIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICB9XG5cbiAgICAgIC5kei1maWxlbmFtZSB7XG5cbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjAwLCAyMDAsIDIwMCwgMC44KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpub3QoOmhvdmVyKSB7XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5kei1maWxlbmFtZSwgLmR6LXNpemUge1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gICAgICAgICAgcGFkZGluZzogMCAwLjRlbTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgLmR6LWltYWdlIHtcbiAgICAgICAgLy8gb3BhY2l0eTogMC44O1xuICAgICAgICBpbWcge1xuICAgICAgICAgIEBpbmNsdWRlIHByZWZpeCgodHJhbnNmb3JtOiBzY2FsZSgxLjA1LCAxLjA1KSkpOyAvLyBHZXR0aW5nIHJpZCBvZiB0aGF0IHdoaXRlIGJsZWVkLWluXG4gICAgICAgICAgQGluY2x1ZGUgcHJlZml4KChmaWx0ZXI6IGJsdXIoOHB4KSksIHdlYmtpdCk7IC8vIEdldHRpbmcgcmlkIG9mIHRoYXQgd2hpdGUgYmxlZWQtaW5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZHotaW1hZ2Uge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGltYWdlLWJvcmRlci1yYWRpdXM7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgd2lkdGg6ICRpbWFnZS1zaXplO1xuICAgICAgaGVpZ2h0OiAkaW1hZ2Utc2l6ZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgei1pbmRleDogMTA7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuXG4gICAgJi5kei1zdWNjZXNzIHtcbiAgICAgIC5kei1zdWNjZXNzLW1hcmsge1xuICAgICAgICBAaW5jbHVkZSBwcmVmaXgoKGFuaW1hdGlvbjogcGFzc2luZy10aHJvdWdoIDNzIGN1YmljLWJlemllcigwLjc3MCwgMC4wMDAsIDAuMTc1LCAxLjAwMCkpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5kei1lcnJvciB7XG4gICAgICAuZHotZXJyb3ItbWFyayB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIEBpbmNsdWRlIHByZWZpeCgoYW5pbWF0aW9uOiBzbGlkZS1pbiAzcyBjdWJpYy1iZXppZXIoMC43NzAsIDAuMDAwLCAwLjE3NSwgMS4wMDApKSk7XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICAuZHotc3VjY2Vzcy1tYXJrLCAuZHotZXJyb3ItbWFyayB7XG5cbiAgICAgICRpbWFnZS1oZWlnaHQ6IDU0cHg7XG4gICAgICAkaW1hZ2Utd2lkdGg6IDU0cHg7XG5cbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgei1pbmRleDogNTAwO1xuXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0oJGltYWdlLXdpZHRoLzIpO1xuICAgICAgbWFyZ2luLXRvcDogLSgkaW1hZ2UtaGVpZ2h0LzIpO1xuXG4gICAgICBzdmcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6ICRpbWFnZS13aWR0aDtcbiAgICAgICAgaGVpZ2h0OiAkaW1hZ2UtaGVpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAgIFxuICAgICYuZHotcHJvY2Vzc2luZyAuZHotcHJvZ3Jlc3Mge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIEBpbmNsdWRlIHByZWZpeCgodHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyKSk7XG4gICAgfVxuICAgICYuZHotY29tcGxldGUgLmR6LXByb2dyZXNzIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBAaW5jbHVkZSBwcmVmaXgoKHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlLWluKSk7XG4gICAgfVxuXG4gICAgJjpub3QoLmR6LXByb2Nlc3NpbmcpIHtcbiAgICAgIC5kei1wcm9ncmVzcyB7XG4gICAgICAgIEBpbmNsdWRlIHByZWZpeCgoYW5pbWF0aW9uOiBwdWxzZSA2cyBlYXNlIGluZmluaXRlKSk7XG4gICAgICB9XG4gICAgfVxuICAgIC5kei1wcm9ncmVzcyB7XG5cbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB6LWluZGV4OiAxMDAwO1xuXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogMTZweDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLThweDtcblxuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTQwcHg7XG5cbiAgICAgIC8vIGJvcmRlcjogMnB4IHNvbGlkICMzMzM7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG5cbiAgICAgIC8vIEZpeCBmb3IgY2hyb21lIGJ1ZzogaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC9jaHJvbWl1bS9pc3N1ZXMvZGV0YWlsP2lkPTE1NzIxOFxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuXG5cbiAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcblxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgLmR6LXVwbG9hZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMzMzM7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM2NjYsICM0NDQpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgQGluY2x1ZGUgcHJlZml4KCh0cmFuc2l0aW9uOiB3aWR0aCAzMDBtcyBlYXNlLWluLW91dCkpO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi5kei1lcnJvciB7XG4gICAgICAuZHotZXJyb3ItbWVzc2FnZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgJjpob3ZlciAuZHotZXJyb3ItbWVzc2FnZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kei1lcnJvci1tZXNzYWdlIHtcbiAgICAgICR3aWR0aDogJGltYWdlLXNpemUgKyAyMHB4O1xuICAgICAgJGNvbG9yOiByZ2IoMTkwLCAzOCwgMzgpO1xuXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgQGluY2x1ZGUgcHJlZml4KCh0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZSkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgdG9wOiAkaW1hZ2Utc2l6ZSArIDEwcHg7XG4gICAgICBsZWZ0OiAtMTBweDtcbiAgICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkY29sb3IsIGRhcmtlbigkY29sb3IsIDUlKSk7XG4gICAgICBwYWRkaW5nOiAwLjVlbSAxLjJlbTtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgICAgLy8gVGhlIHRyaWFuZ2xlIHBvaW50aW5nIHVwXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtNnB4O1xuICAgICAgICBsZWZ0OiAkd2lkdGggLyAyIC0gNnB4O1xuICAgICAgICB3aWR0aDogMDsgXG4gICAgICAgIGhlaWdodDogMDsgXG4gICAgICAgIGJvcmRlci1sZWZ0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiA2cHggc29saWQgJGNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cblxuIiwiLy8gQ29sb3IgQ2xhc3Nlc1xuXG5AZWFjaCAkY29sb3JfbmFtZSwgJGNvbG9yIGluICRjb2xvcnMge1xuICBAZWFjaCAkY29sb3JfdHlwZSwgJGNvbG9yX3ZhbHVlIGluICRjb2xvciB7XG4gICAgQGlmICRjb2xvcl90eXBlID09IFwiYmFzZVwiIHtcbiAgICAgIC4jeyRjb2xvcl9uYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl92YWx1ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLiN7JGNvbG9yX25hbWV9LXRleHQge1xuICAgICAgICBjb2xvcjogJGNvbG9yX3ZhbHVlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRjb2xvcl9uYW1lICE9IFwic2hhZGVzXCIge1xuICAgICAgLiN7JGNvbG9yX25hbWV9LiN7JGNvbG9yX3R5cGV9IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX3ZhbHVlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAuI3skY29sb3JfbmFtZX0tdGV4dC50ZXh0LSN7JGNvbG9yX3R5cGV9IHtcbiAgICAgICAgY29sb3I6ICRjb2xvcl92YWx1ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBTaGFkZSBjbGFzc2VzXG5AZWFjaCAkY29sb3IsICRjb2xvcl92YWx1ZSBpbiAkc2hhZGVzIHtcbiAgLiN7JGNvbG9yfSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX3ZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLiN7JGNvbG9yfS10ZXh0IHtcbiAgICBjb2xvcjogJGNvbG9yX3ZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8qISBub3JtYWxpemUuY3NzIHY3LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5mb290ZXIsXG5oZWFkZXIsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbm1haW4geyAvKiAxICovXG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAqL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctIGFuZCBGaXJlZm94IDM5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4gKi9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAqL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmF1ZGlvLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzLCAvKiAxICovXG5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogU2NyaXB0aW5nXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEhpZGRlblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLy9EZWZhdWx0IHN0eWxlc1xuXG5odG1sIHtcbiBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuKiwgKjpiZWZvcmUsICo6YWZ0ZXIge1xuIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJvZHkge1xuICAvLyBkaXNwbGF5OiBmbGV4O1xuICAvLyBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgLy8gZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxubWFpbiB7XG4gIC8vIGZsZXg6IDEgMCBhdXRvO1xufVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogJGZvbnQtc3RhY2s7XG59XG5cbnVsIHtcbiAgJjpub3QoLmJyb3dzZXItZGVmYXVsdCkge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICAmID4gbGkge1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5hIHtcblx0Y29sb3I6ICRsaW5rLWNvbG9yO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgLy8gR2V0cyByaWQgb2YgdGFwIGFjdGl2ZSBzdGF0ZVxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5cbi8vIFBvc2l0aW9uaW5nXG4udmFsaWduLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5cbi8vIGNsYXNzaWMgY2xlYXJmaXhcbi5jbGVhcmZpeCB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG5cbi8vIFotbGV2ZWxzXG4uei1kZXB0aC0wIHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiAyZHAgZWxldmF0aW9uIG1vZGlmaWVkKi9cbi56LWRlcHRoLTEge1xuICBib3gtc2hhZG93OiAwIDJweCAycHggMCByZ2JhKDAsMCwwLDAuMTQpLFxuICAgICAgICAgICAgICAwIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLDAuMTIpLFxuICAgICAgICAgICAgICAwIDFweCA1cHggMCByZ2JhKDAsMCwwLDAuMik7XG59XG4uei1kZXB0aC0xLWhhbGYge1xuICBib3gtc2hhZG93OiAwIDNweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCA3cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpLCAwIDNweCAxcHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi8qIDZkcCBlbGV2YXRpb24gbW9kaWZpZWQqL1xuLnotZGVwdGgtMiB7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDVweCAwIHJnYmEoMCwwLDAsMC4xNCksXG4gICAgICAgICAgICAgIDAgMXB4IDEwcHggMCByZ2JhKDAsMCwwLDAuMTIpLFxuICAgICAgICAgICAgICAwIDJweCA0cHggLTFweCByZ2JhKDAsMCwwLDAuMyk7XG59XG5cbi8qIDEyZHAgZWxldmF0aW9uIG1vZGlmaWVkKi9cbi56LWRlcHRoLTMge1xuICBib3gtc2hhZG93OiAwIDhweCAxN3B4IDJweCByZ2JhKDAsMCwwLDAuMTQpLFxuICAgICAgICAgICAgICAwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLDAuMTIpLFxuICAgICAgICAgICAgICAwIDVweCA1cHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi8qIDE2ZHAgZWxldmF0aW9uICovXG4uei1kZXB0aC00IHtcbiAgYm94LXNoYWRvdzogMCAxNnB4IDI0cHggMnB4IHJnYmEoMCwwLDAsMC4xNCksXG4gICAgICAgICAgICAgIDAgNnB4IDMwcHggNXB4IHJnYmEoMCwwLDAsMC4xMiksXG4gICAgICAgICAgICAgIDAgOHB4IDEwcHggLTdweCByZ2JhKDAsMCwwLDAuMik7XG59XG5cbi8qIDI0ZHAgZWxldmF0aW9uICovXG4uei1kZXB0aC01IHtcbiAgYm94LXNoYWRvdzogMCAyNHB4IDM4cHggM3B4IHJnYmEoMCwwLDAsMC4xNCksXG4gICAgICAgICAgICAgIDAgOXB4IDQ2cHggOHB4IHJnYmEoMCwwLDAsMC4xMiksXG4gICAgICAgICAgICAgIDAgMTFweCAxNXB4IC03cHggcmdiYSgwLDAsMCwwLjIpO1xufVxuXG4uaG92ZXJhYmxlIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuMjVzO1xuXG4gICY6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IDAgOHB4IDE3cHggMCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgNnB4IDIwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTkpO1xuICB9XG59XG5cbi8vIERpdmlkZXJzXG5cbi5kaXZpZGVyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKFwiZ3JleVwiLCBcImxpZ2h0ZW4tMlwiKTtcbn1cblxuXG4vLyAgQmxvY2txdW90ZVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAyMHB4IDA7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBib3JkZXItbGVmdDogNXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xufVxuXG4vLyBJY29uIFN0eWxlc1xuXG5pIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG5cbiAgJi5sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIH1cbiAgJi5yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICB9XG4gICYudGlueSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG4gICYuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxuICAmLm1lZGl1bSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG4gICYubGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogNnJlbTtcbiAgfVxufVxuXG4vLyBJbWFnZXNcbmltZy5yZXNwb25zaXZlLWltZyxcbnZpZGVvLnJlc3BvbnNpdmUtdmlkZW8ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBQYWdpbmF0aW9uXG5cbi5wYWdpbmF0aW9uIHtcblxuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBoZWlnaHQ6IDMwcHg7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjNDQ0O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSBhIHsgY29sb3I6ICNmZmY7IH1cblxuICAgICYuYWN0aXZlIHsgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7IH1cblxuICAgICYuZGlzYWJsZWQgYSB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICBjb2xvcjogIzk5OTtcbiAgICB9XG5cbiAgICBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG4gIH1cblxuXG4gIGxpLnBhZ2VzIHVsIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAjeyRtZWRpdW0tYW5kLWRvd259IHtcbiAgLnBhZ2luYXRpb24ge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgbGkucHJldixcbiAgICBsaS5uZXh0IHtcbiAgICAgIHdpZHRoOiAxMCU7XG4gICAgfVxuXG4gICAgbGkucGFnZXMge1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBCcmVhZGNydW1ic1xuLmJyZWFkY3J1bWIge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAuNyk7XG5cbiAgaSxcbiAgW2NsYXNzXj1cIm1kaS1cIl0sIFtjbGFzcyo9XCJtZGktXCJdLFxuICBpLm1hdGVyaWFsLWljb25zIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXEU1Q0MnO1xuICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAuNyk7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIG1hcmdpbjogMCAxMHB4IDAgOHB4O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG59XG5cbi8vIFBhcmFsbGF4XG4ucGFyYWxsYXgtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDUwMHB4O1xuXG4gIC5wYXJhbGxheCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAtMTtcblxuICAgIGltZyB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQdXNocGluXG4ucGluLXRvcCwgLnBpbi1ib3R0b20ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucGlubmVkIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKipcbiAgVHJhbnNpdGlvbiBDbGFzc2VzXG4qKioqKioqKioqKioqKioqKioqKioqL1xuXG51bC5zdGFnZ2VyZWQtbGlzdCBsaSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5mYWRlLWluIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKlxuICBNZWRpYSBRdWVyeSBDbGFzc2VzXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLmhpZGUtb24tc21hbGwtb25seSwgLmhpZGUtb24tc21hbGwtYW5kLWRvd24ge1xuICBAbWVkaWEgI3skc21hbGwtYW5kLWRvd259IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5oaWRlLW9uLW1lZC1hbmQtZG93biB7XG4gIEBtZWRpYSAjeyRtZWRpdW0tYW5kLWRvd259IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5oaWRlLW9uLW1lZC1hbmQtdXAge1xuICBAbWVkaWEgI3skbWVkaXVtLWFuZC11cH0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLmhpZGUtb24tbWVkLW9ubHkge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4pIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLmhpZGUtb24tbGFyZ2Utb25seSB7XG4gIEBtZWRpYSAjeyRsYXJnZS1hbmQtdXB9IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5oaWRlLW9uLWV4dHJhLWxhcmdlLW9ubHkge1xuICBAbWVkaWEgI3skZXh0cmEtbGFyZ2UtYW5kLXVwfSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uc2hvdy1vbi1leHRyYS1sYXJnZSB7XG4gIEBtZWRpYSAjeyRleHRyYS1sYXJnZS1hbmQtdXB9IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4uc2hvdy1vbi1sYXJnZSB7XG4gIEBtZWRpYSAjeyRsYXJnZS1hbmQtdXB9IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4uc2hvdy1vbi1tZWRpdW0ge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4pIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5zaG93LW9uLXNtYWxsIHtcbiAgQG1lZGlhICN7JHNtYWxsLWFuZC1kb3dufSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnNob3ctb24tbWVkaXVtLWFuZC11cCB7XG4gIEBtZWRpYSAjeyRtZWRpdW0tYW5kLXVwfSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnNob3ctb24tbWVkaXVtLWFuZC1kb3duIHtcbiAgQG1lZGlhICN7JG1lZGl1bS1hbmQtZG93bn0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuXG4vLyBDZW50ZXIgdGV4dCBvbiBtb2JpbGVcbi5jZW50ZXItb24tc21hbGwtb25seSB7XG4gIEBtZWRpYSAjeyRzbWFsbC1hbmQtZG93bn0ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4vLyBGb290ZXJcbi5wYWdlLWZvb3RlciB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBjb2xvcjogJGZvb3Rlci1mb250LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9vdGVyLWJnLWNvbG9yO1xuXG4gIC5mb290ZXItY29weXJpZ2h0IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiAxMHB4IDBweDtcbiAgICBjb2xvcjogJGZvb3Rlci1jb3B5cmlnaHQtZm9udC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9vdGVyLWNvcHlyaWdodC1iZy1jb2xvcjtcbiAgfVxufVxuXG4vLyBUYWJsZXNcbnRhYmxlLCB0aCwgdGQge1xuICAgYm9yZGVyOiBub25lO1xufVxuXG50YWJsZSB7XG4gIHdpZHRoOjEwMCU7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcblxuICAmLnN0cmlwZWQge1xuICAgIHRyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuXG4gICAgPiB0Ym9keSB7XG4gICAgICA+IHRyOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtY29sb3I7XG4gICAgICB9XG5cbiAgICAgID4gdHIgPiB0ZCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5oaWdobGlnaHQgPiB0Ym9keSA+IHRyIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgZWFzZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYuY2VudGVyZWQge1xuICAgIHRoZWFkIHRyIHRoLCB0Ym9keSB0ciB0ZCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbnRyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG59XG5cbnRkLCB0aHtcbiAgcGFkZGluZzogMTVweCA1cHg7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbn1cblxuLy8gUmVzcG9uc2l2ZSBUYWJsZVxuQG1lZGlhICN7JG1lZGl1bS1hbmQtZG93bn0ge1xuXG4gIHRhYmxlLnJlc3BvbnNpdmUtdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgdGQ6ZW1wdHk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYTAnO1xuICAgIH1cblxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgfVxuXG4gICAgdGggeyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgdHIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMDtcblxuICAgICAgICB0aDo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcMDBhMFwiO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHRib2R5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgdHIge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB9XG4gICAgfVxuICAgIHRoIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICAgIHRkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWluLWhlaWdodDogMS4yNWVtO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gICAgdHIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICB9XG5cbiAgICAvKiBzb3J0IG91dCBib3JkZXJzICovXG4gICAgdGhlYWQge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxufVxuXG5cbi8vIENvbGxlY3Rpb25zXG4uY29sbGVjdGlvbiB7XG4gIG1hcmdpbjogJGVsZW1lbnQtdG9wLW1hcmdpbiAwICRlbGVtZW50LWJvdHRvbS1tYXJnaW4gMDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbGxlY3Rpb24tYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuY29sbGVjdGlvbi1pdGVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sbGVjdGlvbi1iZy1jb2xvcjtcbiAgICBsaW5lLWhlaWdodDogJGNvbGxlY3Rpb24tbGluZS1oZWlnaHQ7XG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbGxlY3Rpb24tYm9yZGVyLWNvbG9yO1xuXG4gICAgLy8gQXZhdGFyIENvbGxlY3Rpb25cbiAgICAmLmF2YXRhciB7XG4gICAgICBtaW4taGVpZ2h0OiA4NHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA3MnB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAvLyBEb24ndCBzdHlsZSBjaXJjbGVzIGluc2lkZSBwcmVsb2FkZXIgY2xhc3Nlcy5cbiAgICAgICY6bm90KC5jaXJjbGUtY2xpcHBlcikgPiAuY2lyY2xlLFxuICAgICAgOm5vdCguY2lyY2xlLWNsaXBwZXIpID4gLmNpcmNsZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDQycHg7XG4gICAgICAgIGhlaWdodDogNDJweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgICAgaS5jaXJjbGUge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG5cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgLnNlY29uZGFyeS1jb250ZW50IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDE2cHg7XG4gICAgICAgIHJpZ2h0OiAxNnB4O1xuICAgICAgfVxuXG4gICAgfVxuXG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sbGVjdGlvbi1hY3RpdmUtYmctY29sb3I7XG4gICAgICBjb2xvcjogJGNvbGxlY3Rpb24tYWN0aXZlLWNvbG9yO1xuXG4gICAgICAuc2Vjb25kYXJ5LWNvbnRlbnQge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgYS5jb2xsZWN0aW9uLWl0ZW17XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdHJhbnNpdGlvbjogLjI1cztcbiAgICBjb2xvcjogJGNvbGxlY3Rpb24tbGluay1jb2xvcjtcbiAgICAmOm5vdCguYWN0aXZlKSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbGxlY3Rpb24taG92ZXItYmctY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi53aXRoLWhlYWRlciB7XG4gICAgLmNvbGxlY3Rpb24taGVhZGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xsZWN0aW9uLWJnLWNvbG9yO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xsZWN0aW9uLWJvcmRlci1jb2xvcjtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICB9XG4gICAgLmNvbGxlY3Rpb24taXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgfVxuICAgIC5jb2xsZWN0aW9uLWl0ZW0uYXZhdGFyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNzJweDtcbiAgICB9XG4gIH1cblxufVxuLy8gTWFkZSBsZXNzIHNwZWNpZmljIHRvIGFsbG93IGVhc2llciBvdmVycmlkaW5nXG4uc2Vjb25kYXJ5LWNvbnRlbnQge1xuICBmbG9hdDogcmlnaHQ7XG4gIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xufVxuLmNvbGxhcHNpYmxlIC5jb2xsZWN0aW9uIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IG5vbmU7XG59XG5cblxuXG4vLyBSZXNwb25zaXZlIFZpZGVvc1xuLnZpZGVvLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBpZnJhbWUsIG9iamVjdCwgZW1iZWQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbn1cblxuLy8gUHJvZ3Jlc3MgQmFyXG4ucHJvZ3Jlc3Mge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRwcm9ncmVzcy1iYXItY29sb3IsIDQwJSk7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIG1hcmdpbjogJGVsZW1lbnQtdG9wLW1hcmdpbiAwICRlbGVtZW50LWJvdHRvbS1tYXJnaW4gMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAuZGV0ZXJtaW5hdGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAuM3MgbGluZWFyO1xuICB9XG4gIC5pbmRldGVybWluYXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6MDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpbGwtY2hhbmdlOiBsZWZ0LCByaWdodDtcbiAgICAgIC8vIEN1c3RvbSBiZXppZXJcbiAgICAgIGFuaW1hdGlvbjogaW5kZXRlcm1pbmF0ZSAyLjFzIGN1YmljLWJlemllcigwLjY1MCwgMC44MTUsIDAuNzM1LCAwLjM5NSkgaW5maW5pdGU7XG5cbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OjA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWxsLWNoYW5nZTogbGVmdCwgcmlnaHQ7XG4gICAgICAvLyBDdXN0b20gYmV6aWVyXG4gICAgICBhbmltYXRpb246IGluZGV0ZXJtaW5hdGUtc2hvcnQgMi4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQwLCAwLjQ0MCwgMS4wMDApIGluZmluaXRlO1xuICAgICAgYW5pbWF0aW9uLWRlbGF5OiAxLjE1cztcbiAgICB9XG4gIH1cbn1cbkBrZXlmcmFtZXMgaW5kZXRlcm1pbmF0ZSB7XG4gICAgMCUge1xuICAgICAgbGVmdDogLTM1JTtcbiAgICAgIHJpZ2h0OjEwMCU7XG4gICAgfVxuICAgIDYwJSB7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgICAgcmlnaHQ6IC05MCU7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgbGVmdDogMTAwJTtcbiAgICAgIHJpZ2h0OiAtOTAlO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBpbmRldGVybWluYXRlLXNob3J0IHtcbiAgICAwJSB7XG4gICAgICBsZWZ0OiAtMjAwJTtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgIH1cbiAgICA2MCUge1xuICAgICAgbGVmdDogMTA3JTtcbiAgICAgIHJpZ2h0OiAtOCU7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgbGVmdDogMTA3JTtcbiAgICAgIHJpZ2h0OiAtOCU7XG4gICAgfVxufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqXG4gIFV0aWxpdHkgQ2xhc3Nlc1xuKioqKioqKioqKioqKioqKioqKi9cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vIFRleHQgQWxpZ25cbi5sZWZ0LWFsaWduIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5yaWdodC1hbGlnbiB7XG4gIHRleHQtYWxpZ246IHJpZ2h0XG59XG4uY2VudGVyLCAuY2VudGVyLWFsaWduIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG4ucmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLy8gTm8gVGV4dCBTZWxlY3Rcbi5uby1zZWxlY3Qge1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLmNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLmNlbnRlci1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4udHJ1bmNhdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi5uby1wYWRkaW5nIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1hdGVyaWFsaXplIHZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vXG4vLyBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgMS4gQ29sb3JzXG4vLyAgMi4gQmFkZ2VzXG4vLyAgMy4gQnV0dG9uc1xuLy8gIDQuIENhcmRzXG4vLyAgNS4gQ2Fyb3VzZWxcbi8vICA2LiBDb2xsYXBzaWJsZVxuLy8gIDcuIENoaXBzXG4vLyAgOC4gRGF0ZSArIFRpbWUgUGlja2VyXG4vLyAgOS4gRHJvcGRvd25cbi8vICAxMC4gRm9ybXNcbi8vICAxMS4gR2xvYmFsXG4vLyAgMTIuIEdyaWRcbi8vICAxMy4gTmF2aWdhdGlvbiBCYXJcbi8vICAxNC4gU2lkZSBOYXZpZ2F0aW9uXG4vLyAgMTUuIFBob3RvIFNsaWRlclxuLy8gIDE2LiBTcGlubmVycyB8IExvYWRlcnNcbi8vICAxNy4gVGFic1xuLy8gIDE4LiBUYWJsZXNcbi8vICAxOS4gVG9hc3RzXG4vLyAgMjAuIFR5cG9ncmFwaHlcbi8vICAyMS4gRm9vdGVyXG4vLyAgMjIuIEZsb3cgVGV4dFxuLy8gIDIzLiBDb2xsZWN0aW9uc1xuLy8gIDI0LiBQcm9ncmVzcyBCYXJcblxuXG5cbi8vIDEuIENvbG9yc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHByaW1hcnktY29sb3I6IGNvbG9yKFwibWF0ZXJpYWxpemUtcmVkXCIsIFwibGlnaHRlbi0yXCIpICFkZWZhdWx0O1xuJHByaW1hcnktY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kcHJpbWFyeS1jb2xvci1kYXJrOiBkYXJrZW4oJHByaW1hcnktY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG5cbiRzZWNvbmRhcnktY29sb3I6IGNvbG9yKFwidGVhbFwiLCBcImxpZ2h0ZW4tMVwiKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWNvbG9yOiBjb2xvcihcImdyZWVuXCIsIFwiYmFzZVwiKSAhZGVmYXVsdDtcbiRlcnJvci1jb2xvcjogY29sb3IoXCJyZWRcIiwgXCJiYXNlXCIpICFkZWZhdWx0O1xuJGxpbmstY29sb3I6IGNvbG9yKFwibGlnaHQtYmx1ZVwiLCBcImRhcmtlbi0xXCIpICFkZWZhdWx0O1xuXG5cbi8vIDIuIEJhZGdlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGJhZGdlLWJnLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGJhZGdlLWhlaWdodDogMjJweCAhZGVmYXVsdDtcblxuXG4vLyAzLiBCdXR0b25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBTaGFyZWQgc3R5bGVzXG4kYnV0dG9uLWJvcmRlcjogbm9uZSAhZGVmYXVsdDtcbiRidXR0b24tYmFja2dyb3VuZC1mb2N1czogbGlnaHRlbigkc2Vjb25kYXJ5LWNvbG9yLCA0JSkgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtc2l6ZTogMTRweCAhZGVmYXVsdDtcbiRidXR0b24taWNvbi1mb250LXNpemU6IDEuM3JlbSAhZGVmYXVsdDtcbiRidXR0b24taGVpZ2h0OiAzNnB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1wYWRkaW5nOiAwIDE2cHggIWRlZmF1bHQ7XG4kYnV0dG9uLXJhZGl1czogMnB4ICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlZCBzdHlsZXNcbiRidXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZDogI0RGREZERiAhZGVmYXVsdDtcbiRidXR0b24tZGlzYWJsZWQtY29sb3I6ICM5RjlGOUYgIWRlZmF1bHQ7XG5cbi8vIFJhaXNlZCBidXR0b25zXG4kYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1yYWlzZWQtYmFja2dyb3VuZC1ob3ZlcjogbGlnaHRlbigkYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kYnV0dG9uLXJhaXNlZC1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcblxuLy8gTGFyZ2UgYnV0dG9uc1xuJGJ1dHRvbi1sYXJnZS1mb250LXNpemU6IDE1cHggIWRlZmF1bHQ7XG4kYnV0dG9uLWxhcmdlLWljb24tZm9udC1zaXplOiAxLjZyZW0gIWRlZmF1bHQ7XG4kYnV0dG9uLWxhcmdlLWhlaWdodDogJGJ1dHRvbi1oZWlnaHQgKiAxLjUgIWRlZmF1bHQ7XG4kYnV0dG9uLWZsb2F0aW5nLWxhcmdlLXNpemU6IDU2cHggIWRlZmF1bHQ7XG5cbi8vIFNtYWxsIGJ1dHRvbnNcbiRidXR0b24tc21hbGwtZm9udC1zaXplOiAxM3B4ICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWFsbC1pY29uLWZvbnQtc2l6ZTogMS4ycmVtICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWFsbC1oZWlnaHQ6ICRidXR0b24taGVpZ2h0ICogLjkgIWRlZmF1bHQ7XG4kYnV0dG9uLWZsb2F0aW5nLXNtYWxsLXNpemU6ICRidXR0b24taGVpZ2h0ICogLjkgIWRlZmF1bHQ7XG5cbi8vIEZsYXQgYnV0dG9uc1xuJGJ1dHRvbi1mbGF0LWNvbG9yOiAjMzQzNDM0ICFkZWZhdWx0O1xuJGJ1dHRvbi1mbGF0LWRpc2FibGVkLWNvbG9yOiBsaWdodGVuKCM5OTksIDEwJSkgIWRlZmF1bHQ7XG5cbi8vIEZsb2F0aW5nIGJ1dHRvbnNcbiRidXR0b24tZmxvYXRpbmctYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tZmxvYXRpbmctYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1mbG9hdGluZy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJ1dHRvbi1mbG9hdGluZy1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRidXR0b24tZmxvYXRpbmctc2l6ZTogNDBweCAhZGVmYXVsdDtcbiRidXR0b24tZmxvYXRpbmctcmFkaXVzOiA1MCUgIWRlZmF1bHQ7XG5cblxuLy8gNC4gQ2FyZHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRjYXJkLXBhZGRpbmc6IDI0cHggIWRlZmF1bHQ7XG4kY2FyZC1iZy1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRjYXJkLWxpbmstY29sb3I6IGNvbG9yKFwib3JhbmdlXCIsIFwiYWNjZW50LTJcIikgIWRlZmF1bHQ7XG4kY2FyZC1saW5rLWNvbG9yLWxpZ2h0OiBsaWdodGVuKCRjYXJkLWxpbmstY29sb3IsIDIwJSkgIWRlZmF1bHQ7XG5cblxuLy8gNS4gQ2Fyb3VzZWxcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRjYXJvdXNlbC1oZWlnaHQ6IDQwMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWl0ZW0taGVpZ2h0OiAkY2Fyb3VzZWwtaGVpZ2h0IC8gMiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pdGVtLXdpZHRoOiAkY2Fyb3VzZWwtaXRlbS1oZWlnaHQgIWRlZmF1bHQ7XG5cblxuLy8gNi4gQ29sbGFwc2libGVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRjb2xsYXBzaWJsZS1oZWlnaHQ6IDNyZW0gIWRlZmF1bHQ7XG4kY29sbGFwc2libGUtbGluZS1oZWlnaHQ6ICRjb2xsYXBzaWJsZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY29sbGFwc2libGUtaGVhZGVyLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJGNvbGxhcHNpYmxlLWJvcmRlci1jb2xvcjogI2RkZCAhZGVmYXVsdDtcblxuXG4vLyA3LiBDaGlwc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGNoaXAtYmctY29sb3I6ICNlNGU0ZTQgIWRlZmF1bHQ7XG4kY2hpcC1ib3JkZXItY29sb3I6ICM5ZTllOWUgIWRlZmF1bHQ7XG4kY2hpcC1zZWxlY3RlZC1jb2xvcjogIzI2YTY5YSAhZGVmYXVsdDtcbiRjaGlwLW1hcmdpbjogNXB4ICFkZWZhdWx0O1xuXG5cbi8vIDguIERhdGUgKyBUaW1lIFBpY2tlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGRhdGVwaWNrZXItZGlzcGxheS1mb250LXNpemU6IDIuOHJlbTtcbiRkYXRlcGlja2VyLWNhbGVuZGFyLWhlYWRlci1jb2xvcjogIzk5OTtcbiRkYXRlcGlja2VyLXdlZWtkYXktY29sb3I6IHJnYmEoMCwgMCwgMCwgLjg3KSAhZGVmYXVsdDtcbiRkYXRlcGlja2VyLXdlZWtkYXktYmc6IGRhcmtlbigkc2Vjb25kYXJ5LWNvbG9yLCA3JSkgIWRlZmF1bHQ7XG4kZGF0ZXBpY2tlci1kYXRlLWJnOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGRhdGVwaWNrZXIteWVhcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNykgIWRlZmF1bHQ7XG4kZGF0ZXBpY2tlci1mb2N1czogcmdiYSgwLDAsMCwgLjA1KSAhZGVmYXVsdDtcbiRkYXRlcGlja2VyLXNlbGVjdGVkOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGRhdGVwaWNrZXItc2VsZWN0ZWQtb3V0Zm9jdXM6IGRlc2F0dXJhdGUobGlnaHRlbigkc2Vjb25kYXJ5LWNvbG9yLCAzNSUpLCAxNSUpICFkZWZhdWx0O1xuJGRhdGVwaWNrZXItZGF5LWZvY3VzOiB0cmFuc3BhcmVudGl6ZShkZXNhdHVyYXRlKCRzZWNvbmRhcnktY29sb3IsIDUlKSwgLjc1KSAhZGVmYXVsdDtcbiRkYXRlcGlja2VyLWRpc2FibGVkLWRheS1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMykgIWRlZmF1bHQ7XG5cbiR0aW1lcGlja2VyLWNsb2NrLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC44NykgIWRlZmF1bHQ7XG4kdGltZXBpY2tlci1jbG9jay1wbGF0ZS1iZzogI2VlZSAhZGVmYXVsdDtcblxuXG4vLyA5LiBEcm9wZG93blxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGRyb3Bkb3duLWJnLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhvdmVyLWJnLWNvbG9yOiAjZWVlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0taGVpZ2h0OiA1MHB4ICFkZWZhdWx0O1xuXG5cbi8vIDEwLiBGb3Jtc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gVGV4dCBJbnB1dHMgKyBUZXh0YXJlYVxuJGlucHV0LWhlaWdodDogM3JlbSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6IGNvbG9yKFwiZ3JleVwiLCBcImJhc2VcIikgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1iYWNrZ3JvdW5kOiAjZmZmICFkZWZhdWx0O1xuJGlucHV0LWVycm9yLWNvbG9yOiAkZXJyb3ItY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtc3VjY2Vzcy1jb2xvcjogJHN1Y2Nlc3MtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICRzZWNvbmRhcnktY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuJGlucHV0LW1hcmdpbi1ib3R0b206IDhweDtcbiRpbnB1dC1tYXJnaW46IDAgMCAkaW5wdXQtbWFyZ2luLWJvdHRvbSAwICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmc6IDAgIWRlZmF1bHQ7XG4kbGFiZWwtZm9udC1zaXplOiAuOHJlbSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1jb2xvcjogcmdiYSgwLDAsMCwgLjQyKSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1zb2xpZC1jb2xvcjogIzk0OTQ5NCAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1ib3JkZXI6IDFweCBkb3R0ZWQgJGlucHV0LWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWludmFsaWQtYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWVycm9yLWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWljb24tc2l6ZTogMnJlbTtcbiRwbGFjZWhvbGRlci10ZXh0LWNvbG9yOiBsaWdodGVuKCRpbnB1dC1ib3JkZXItY29sb3IsIDIwJSkgIWRlZmF1bHQ7XG5cbi8vIFJhZGlvIEJ1dHRvbnNcbiRyYWRpby1maWxsLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHJhZGlvLWVtcHR5LWNvbG9yOiAjNWE1YTVhICFkZWZhdWx0O1xuJHJhZGlvLWJvcmRlcjogMnB4IHNvbGlkICRyYWRpby1maWxsLWNvbG9yICFkZWZhdWx0O1xuXG4vLyBSYW5nZVxuJHJhbmdlLWhlaWdodDogMTRweCAhZGVmYXVsdDtcbiRyYW5nZS13aWR0aDogMTRweCAhZGVmYXVsdDtcbiR0cmFjay1oZWlnaHQ6IDNweCAhZGVmYXVsdDtcblxuLy8gU2VsZWN0XG4kc2VsZWN0LWJvcmRlcjogMXB4IHNvbGlkICNmMmYyZjIgIWRlZmF1bHQ7XG4kc2VsZWN0LWJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45MCkgIWRlZmF1bHQ7XG4kc2VsZWN0LWZvY3VzOiAxcHggc29saWQgbGlnaHRlbigkc2Vjb25kYXJ5LWNvbG9yLCA0NyUpICFkZWZhdWx0O1xuJHNlbGVjdC1vcHRpb24taG92ZXI6IHJnYmEoMCwwLDAsLjA4KSAhZGVmYXVsdDtcbiRzZWxlY3Qtb3B0aW9uLWZvY3VzOiByZ2JhKDAsMCwwLC4wOCkgIWRlZmF1bHQ7XG4kc2VsZWN0LW9wdGlvbi1zZWxlY3RlZDogcmdiYSgwLDAsMCwuMDMpICFkZWZhdWx0O1xuJHNlbGVjdC1wYWRkaW5nOiA1cHggIWRlZmF1bHQ7XG4kc2VsZWN0LXJhZGl1czogMnB4ICFkZWZhdWx0O1xuJHNlbGVjdC1kaXNhYmxlZC1jb2xvcjogcmdiYSgwLDAsMCwuMykgIWRlZmF1bHQ7XG5cbi8vIFN3aXRjaGVzXG4kc3dpdGNoLWJnLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHN3aXRjaC1jaGVja2VkLWxldmVyLWJnOiBkZXNhdHVyYXRlKGxpZ2h0ZW4oJHN3aXRjaC1iZy1jb2xvciwgMjUlKSwgMjUlKSAhZGVmYXVsdDtcbiRzd2l0Y2gtdW5jaGVja2VkLWJnOiAjRjFGMUYxICFkZWZhdWx0O1xuJHN3aXRjaC11bmNoZWNrZWQtbGV2ZXItYmc6IHJnYmEoMCwwLDAsLjM4KSAhZGVmYXVsdDtcbiRzd2l0Y2gtcmFkaXVzOiAxNXB4ICFkZWZhdWx0O1xuXG5cbi8vIDExLiBHbG9iYWxcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIE1lZGlhIFF1ZXJ5IFJhbmdlc1xuJHNtYWxsLXNjcmVlbi11cDogNjAxcHggIWRlZmF1bHQ7XG4kbWVkaXVtLXNjcmVlbi11cDogOTkzcHggIWRlZmF1bHQ7XG4kbGFyZ2Utc2NyZWVuLXVwOiAxMjAxcHggIWRlZmF1bHQ7XG4kc21hbGwtc2NyZWVuOiA2MDBweCAhZGVmYXVsdDtcbiRtZWRpdW0tc2NyZWVuOiA5OTJweCAhZGVmYXVsdDtcbiRsYXJnZS1zY3JlZW46IDEyMDBweCAhZGVmYXVsdDtcblxuJG1lZGl1bS1hbmQtdXA6IFwib25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAjeyRzbWFsbC1zY3JlZW4tdXB9KVwiICFkZWZhdWx0O1xuJGxhcmdlLWFuZC11cDogXCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6ICN7JG1lZGl1bS1zY3JlZW4tdXB9KVwiICFkZWZhdWx0O1xuJGV4dHJhLWxhcmdlLWFuZC11cDogXCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6ICN7JGxhcmdlLXNjcmVlbi11cH0pXCIgIWRlZmF1bHQ7XG4kc21hbGwtYW5kLWRvd246IFwib25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiAjeyRzbWFsbC1zY3JlZW59KVwiICFkZWZhdWx0O1xuJG1lZGl1bS1hbmQtZG93bjogXCJvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6ICN7JG1lZGl1bS1zY3JlZW59KVwiICFkZWZhdWx0O1xuJG1lZGl1bS1vbmx5OiBcIm9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogI3skc21hbGwtc2NyZWVuLXVwfSkgYW5kIChtYXgtd2lkdGggOiAjeyRtZWRpdW0tc2NyZWVufSlcIiAhZGVmYXVsdDtcblxuXG4vLyAxMi4gR3JpZFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJG51bS1jb2xzOiAxMiAhZGVmYXVsdDtcbiRndXR0ZXItd2lkdGg6IDEuNXJlbSAhZGVmYXVsdDtcbiRlbGVtZW50LXRvcC1tYXJnaW46ICRndXR0ZXItd2lkdGgvMyAhZGVmYXVsdDtcbiRlbGVtZW50LWJvdHRvbS1tYXJnaW46ICgkZ3V0dGVyLXdpZHRoKjIpLzMgIWRlZmF1bHQ7XG5cblxuLy8gMTMuIE5hdmlnYXRpb24gQmFyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kbmF2YmFyLWhlaWdodDogNjRweCAhZGVmYXVsdDtcbiRuYXZiYXItbGluZS1oZWlnaHQ6ICRuYXZiYXItaGVpZ2h0ICFkZWZhdWx0O1xuJG5hdmJhci1oZWlnaHQtbW9iaWxlOiA1NnB4ICFkZWZhdWx0O1xuJG5hdmJhci1saW5lLWhlaWdodC1tb2JpbGU6ICRuYXZiYXItaGVpZ2h0LW1vYmlsZSAhZGVmYXVsdDtcbiRuYXZiYXItZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuJG5hdmJhci1mb250LWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1mb250LXNpemU6IDIuMXJlbSAhZGVmYXVsdDtcblxuLy8gMTQuIFNpZGUgTmF2aWdhdGlvblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHNpZGVuYXYtd2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuJHNpZGVuYXYtZm9udC1zaXplOiAxNHB4ICFkZWZhdWx0O1xuJHNpZGVuYXYtZm9udC1jb2xvcjogcmdiYSgwLDAsMCwuODcpICFkZWZhdWx0O1xuJHNpZGVuYXYtYmctY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kc2lkZW5hdi1wYWRkaW5nOiAxNnB4ICFkZWZhdWx0O1xuJHNpZGVuYXYtaXRlbS1oZWlnaHQ6IDQ4cHggIWRlZmF1bHQ7XG4kc2lkZW5hdi1saW5lLWhlaWdodDogJHNpZGVuYXYtaXRlbS1oZWlnaHQgIWRlZmF1bHQ7XG5cblxuLy8gMTUuIFBob3RvIFNsaWRlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHNsaWRlci1iZy1jb2xvcjogY29sb3IoJ2dyZXknLCAnYmFzZScpICFkZWZhdWx0O1xuJHNsaWRlci1iZy1jb2xvci1saWdodDogY29sb3IoJ2dyZXknLCAnbGlnaHRlbi0yJykgIWRlZmF1bHQ7XG4kc2xpZGVyLWluZGljYXRvci1jb2xvcjogY29sb3IoJ2dyZWVuJywgJ2Jhc2UnKSAhZGVmYXVsdDtcblxuXG4vLyAxNi4gU3Bpbm5lcnMgfCBMb2FkZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kc3Bpbm5lci1kZWZhdWx0LWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vIDE3LiBUYWJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kdGFicy11bmRlcmxpbmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yLWxpZ2h0ICFkZWZhdWx0O1xuJHRhYnMtdGV4dC1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kdGFicy1iZy1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcblxuXG4vLyAxOC4gVGFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLC4xMikgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1jb2xvcjogcmdiYSgyNDIsIDI0MiwgMjQyLCAwLjUpICFkZWZhdWx0O1xuXG5cbi8vIDE5LiBUb2FzdHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiR0b2FzdC1oZWlnaHQ6IDQ4cHggIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICMzMjMyMzIgIWRlZmF1bHQ7XG4kdG9hc3QtdGV4dC1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiR0b2FzdC1hY3Rpb24tY29sb3I6ICNlZWZmNDE7XG5cblxuLy8gMjAuIFR5cG9ncmFwaHlcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRmb250LXN0YWNrOiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBPeHlnZW4tU2FucywgVWJ1bnR1LCBDYW50YXJlbGwsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRvZmYtYmxhY2s6IHJnYmEoMCwgMCwgMCwgMC44NykgIWRlZmF1bHQ7XG4vLyBIZWFkZXIgU3R5bGVzXG4kaDEtZm9udHNpemU6IDQuMnJlbSAhZGVmYXVsdDtcbiRoMi1mb250c2l6ZTogMy41NnJlbSAhZGVmYXVsdDtcbiRoMy1mb250c2l6ZTogMi45MnJlbSAhZGVmYXVsdDtcbiRoNC1mb250c2l6ZTogMi4yOHJlbSAhZGVmYXVsdDtcbiRoNS1mb250c2l6ZTogMS42NHJlbSAhZGVmYXVsdDtcbiRoNi1mb250c2l6ZTogMS4xNXJlbSAhZGVmYXVsdDtcblxuXG4vLyAyMS4gRm9vdGVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZm9vdGVyLWZvbnQtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kZm9vdGVyLWJnLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRmb290ZXItY29weXJpZ2h0LWZvbnQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjgpICFkZWZhdWx0O1xuJGZvb3Rlci1jb3B5cmlnaHQtYmctY29sb3I6IHJnYmEoNTEsNTEsNTEsLjA4KSAhZGVmYXVsdDtcblxuXG4vLyAyMi4gRmxvdyBUZXh0XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kcmFuZ2UgOiAkbGFyZ2Utc2NyZWVuIC0gJHNtYWxsLXNjcmVlbiAhZGVmYXVsdDtcbiRpbnRlcnZhbHM6IDIwICFkZWZhdWx0O1xuJGludGVydmFsLXNpemU6ICRyYW5nZSAvICRpbnRlcnZhbHMgIWRlZmF1bHQ7XG5cblxuLy8gMjMuIENvbGxlY3Rpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kY29sbGVjdGlvbi1ib3JkZXItY29sb3I6ICNlMGUwZTAgIWRlZmF1bHQ7XG4kY29sbGVjdGlvbi1iZy1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRjb2xsZWN0aW9uLWFjdGl2ZS1iZy1jb2xvcjogJHNlY29uZGFyeS1jb2xvciAhZGVmYXVsdDtcbiRjb2xsZWN0aW9uLWFjdGl2ZS1jb2xvcjogbGlnaHRlbigkc2Vjb25kYXJ5LWNvbG9yLCA1NSUpICFkZWZhdWx0O1xuJGNvbGxlY3Rpb24taG92ZXItYmctY29sb3I6ICNkZGQgIWRlZmF1bHQ7XG4kY29sbGVjdGlvbi1saW5rLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGNvbGxlY3Rpb24tbGluZS1oZWlnaHQ6IDEuNXJlbSAhZGVmYXVsdDtcblxuXG4vLyAyNC4gUHJvZ3Jlc3MgQmFyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuIiwiLy8gQmFkZ2VzXG5zcGFuLmJhZGdlIHtcbiAgbWluLXdpZHRoOiAzcmVtO1xuICBwYWRkaW5nOiAwIDZweDtcbiAgbWFyZ2luLWxlZnQ6IDE0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogJGJhZGdlLWhlaWdodDtcbiAgaGVpZ2h0OiAkYmFkZ2UtaGVpZ2h0O1xuICBjb2xvcjogY29sb3IoJ2dyZXknLCAnZGFya2VuLTEnKTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICYubmV3IHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1iZy1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gIH1cbiAgJi5uZXc6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIG5ld1wiO1xuICB9XG5cbiAgJltkYXRhLWJhZGdlLWNhcHRpb25dOjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCIgYXR0cihkYXRhLWJhZGdlLWNhcHRpb24pO1xuICB9XG59XG5cbi8vIFNwZWNpYWwgY2FzZXNcbm5hdiB1bCBhIHNwYW4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICBsaW5lLWhlaWdodDogJGJhZGdlLWhlaWdodDtcbiAgaGVpZ2h0OiAkYmFkZ2UtaGVpZ2h0O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhdXRvO1xufVxuXG4vLyBMaW5lIGhlaWdodCBjZW50ZXJpbmdcbi5jb2xsZWN0aW9uLWl0ZW0gc3Bhbi5iYWRnZSB7XG4gIG1hcmdpbi10b3A6IGNhbGMoI3skY29sbGVjdGlvbi1saW5lLWhlaWdodCAvIDJ9IC0gI3skYmFkZ2UtaGVpZ2h0IC8gMn0pO1xufVxuLmNvbGxhcHNpYmxlIHNwYW4uYmFkZ2Uge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbi5zaWRlbmF2IHNwYW4uYmFkZ2Uge1xuICBtYXJnaW4tdG9wOiBjYWxjKCN7JHNpZGVuYXYtbGluZS1oZWlnaHQgLyAyfSAtICN7JGJhZGdlLWhlaWdodCAvIDJ9KTtcbn1cblxudGFibGUgc3Bhbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuIiwiLyogVGhpcyBpcyBuZWVkZWQgZm9yIHNvbWUgbW9iaWxlIHBob25lcyB0byBkaXNwbGF5IHRoZSBHb29nbGUgSWNvbiBmb250IHByb3Blcmx5ICovXG4ubWF0ZXJpYWwtaWNvbnMge1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJztcbn1cbiIsIi5jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxMjgwcHg7XG4gIHdpZHRoOiA5MCU7XG59XG5AbWVkaWEgI3skbWVkaXVtLWFuZC11cH0ge1xuICAuY29udGFpbmVyIHtcbiAgICB3aWR0aDogODUlO1xuICB9XG59XG5AbWVkaWEgI3skbGFyZ2UtYW5kLXVwfSB7XG4gIC5jb250YWluZXIge1xuICAgIHdpZHRoOiA3MCU7XG4gIH1cbn1cbi5jb2wgLnJvdyB7XG4gIG1hcmdpbi1sZWZ0OiAoLTEgKiAkZ3V0dGVyLXdpZHRoIC8gMik7XG4gIG1hcmdpbi1yaWdodDogKC0xICogJGd1dHRlci13aWR0aCAvIDIpO1xufVxuXG4uc2VjdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcblxuICAmLm5vLXBhZCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAmLm5vLXBhZC1ib3Qge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG4gICYubm8tcGFkLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cblxuXG4vLyBNaXhpbnMgdG8gZWxpbWluYXRlIGNvZGUgcmVwaXRpdGlvblxuQG1peGluIHJlc2V0LW9mZnNldCB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogYXV0bztcbn1cbkBtaXhpbiBncmlkLWNsYXNzZXMoJHNpemUsICRpLCAkcGVyYykge1xuICAmLm9mZnNldC0jeyRzaXplfSN7JGl9IHtcbiAgICBtYXJnaW4tbGVmdDogJHBlcmM7XG4gIH1cbiAgJi5wdWxsLSN7JHNpemV9I3skaX0ge1xuICAgIHJpZ2h0OiAkcGVyYztcbiAgfVxuICAmLnB1c2gtI3skc2l6ZX0jeyRpfSB7XG4gICAgbGVmdDogJHBlcmM7XG4gIH1cbn1cblxuXG4ucm93IHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAvLyBDbGVhciBmbG9hdGluZyBjaGlsZHJlblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG5cbiAgLmNvbCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwYWRkaW5nOiAwICRndXR0ZXItd2lkdGggLyAyO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcblxuICAgICZbY2xhc3MqPVwicHVzaC1cIl0sXG4gICAgJltjbGFzcyo9XCJwdWxsLVwiXSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJGk6IDE7XG4gICAgQHdoaWxlICRpIDw9ICRudW0tY29scyB7XG4gICAgICAkcGVyYzogdW5xdW90ZSgoMTAwIC8gKCRudW0tY29scyAvICRpKSkgKyBcIiVcIik7XG4gICAgICAmLnMjeyRpfSB7XG4gICAgICAgIHdpZHRoOiAkcGVyYztcbiAgICAgICAgQGluY2x1ZGUgcmVzZXQtb2Zmc2V0O1xuICAgICAgfVxuICAgICAgJGk6ICRpICsgMTtcbiAgICB9XG5cbiAgICAkaTogMTtcbiAgICBAd2hpbGUgJGkgPD0gJG51bS1jb2xzIHtcbiAgICAgICRwZXJjOiB1bnF1b3RlKCgxMDAgLyAoJG51bS1jb2xzIC8gJGkpKSArIFwiJVwiKTtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY2xhc3NlcyhcInNcIiwgJGksICRwZXJjKTtcbiAgICAgICRpOiAkaSArIDE7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JG1lZGl1bS1hbmQtdXB9IHtcblxuICAgICAgJGk6IDE7XG4gICAgICBAd2hpbGUgJGkgPD0gJG51bS1jb2xzIHtcbiAgICAgICAgJHBlcmM6IHVucXVvdGUoKDEwMCAvICgkbnVtLWNvbHMgLyAkaSkpICsgXCIlXCIpO1xuICAgICAgICAmLm0jeyRpfSB7XG4gICAgICAgICAgd2lkdGg6ICRwZXJjO1xuICAgICAgICAgIEBpbmNsdWRlIHJlc2V0LW9mZnNldDtcbiAgICAgICAgfVxuICAgICAgICAkaTogJGkgKyAxXG4gICAgICB9XG5cbiAgICAgICRpOiAxO1xuICAgICAgQHdoaWxlICRpIDw9ICRudW0tY29scyB7XG4gICAgICAgICRwZXJjOiB1bnF1b3RlKCgxMDAgLyAoJG51bS1jb2xzIC8gJGkpKSArIFwiJVwiKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jbGFzc2VzKFwibVwiLCAkaSwgJHBlcmMpO1xuICAgICAgICAkaTogJGkgKyAxO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAjeyRsYXJnZS1hbmQtdXB9IHtcblxuICAgICAgJGk6IDE7XG4gICAgICBAd2hpbGUgJGkgPD0gJG51bS1jb2xzIHtcbiAgICAgICAgJHBlcmM6IHVucXVvdGUoKDEwMCAvICgkbnVtLWNvbHMgLyAkaSkpICsgXCIlXCIpO1xuICAgICAgICAmLmwjeyRpfSB7XG4gICAgICAgICAgd2lkdGg6ICRwZXJjO1xuICAgICAgICAgIEBpbmNsdWRlIHJlc2V0LW9mZnNldDtcbiAgICAgICAgfVxuICAgICAgICAkaTogJGkgKyAxO1xuICAgICAgfVxuXG4gICAgICAkaTogMTtcbiAgICAgIEB3aGlsZSAkaSA8PSAkbnVtLWNvbHMge1xuICAgICAgICAkcGVyYzogdW5xdW90ZSgoMTAwIC8gKCRudW0tY29scyAvICRpKSkgKyBcIiVcIik7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY2xhc3NlcyhcImxcIiwgJGksICRwZXJjKTtcbiAgICAgICAgJGk6ICRpICsgMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgI3skZXh0cmEtbGFyZ2UtYW5kLXVwfSB7XG5cbiAgICAgICRpOiAxO1xuICAgICAgQHdoaWxlICRpIDw9ICRudW0tY29scyB7XG4gICAgICAgICRwZXJjOiB1bnF1b3RlKCgxMDAgLyAoJG51bS1jb2xzIC8gJGkpKSArIFwiJVwiKTtcbiAgICAgICAgJi54bCN7JGl9IHtcbiAgICAgICAgICB3aWR0aDogJHBlcmM7XG4gICAgICAgICAgQGluY2x1ZGUgcmVzZXQtb2Zmc2V0O1xuICAgICAgICB9XG4gICAgICAgICRpOiAkaSArIDE7XG4gICAgICB9XG5cbiAgICAgICRpOiAxO1xuICAgICAgQHdoaWxlICRpIDw9ICRudW0tY29scyB7XG4gICAgICAgICRwZXJjOiB1bnF1b3RlKCgxMDAgLyAoJG51bS1jb2xzIC8gJGkpKSArIFwiJVwiKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jbGFzc2VzKFwieGxcIiwgJGksICRwZXJjKTtcbiAgICAgICAgJGk6ICRpICsgMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIm5hdiB7XG4gICYubmF2LWV4dGVuZGVkIHtcbiAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAubmF2LXdyYXBwZXIge1xuICAgICAgbWluLWhlaWdodDogJG5hdmJhci1oZWlnaHQtbW9iaWxlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC5uYXYtY29udGVudCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIH1cbiAgfVxuXG4gIGNvbG9yOiAkbmF2YmFyLWZvbnQtY29sb3I7XG4gIEBleHRlbmQgLnotZGVwdGgtMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRuYXZiYXItaGVpZ2h0LW1vYmlsZTtcbiAgbGluZS1oZWlnaHQ6ICRuYXZiYXItbGluZS1oZWlnaHQtbW9iaWxlO1xuXG4gIGEgeyBjb2xvcjogJG5hdmJhci1mb250LWNvbG9yOyB9XG5cbiAgaSxcbiAgW2NsYXNzXj1cIm1kaS1cIl0sIFtjbGFzcyo9XCJtZGktXCJdLFxuICBpLm1hdGVyaWFsLWljb25zIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodC1tb2JpbGU7XG4gICAgbGluZS1oZWlnaHQ6ICRuYXZiYXItbGluZS1oZWlnaHQtbW9iaWxlO1xuICB9XG5cbiAgLm5hdi13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgQG1lZGlhICN7JGxhcmdlLWFuZC11cH0ge1xuICAgIGEuc2lkZW5hdi10cmlnZ2VyIHsgZGlzcGxheTogbm9uZTsgfVxuICB9XG5cblxuICAvLyBDb2xsYXBzZSBidXR0b25cbiAgLnNpZGVuYXYtdHJpZ2dlciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodC1tb2JpbGU7XG4gICAgbWFyZ2luOiAwIDE4cHg7XG5cbiAgICBpIHtcbiAgICAgIGhlaWdodDogJG5hdmJhci1oZWlnaHQtbW9iaWxlO1xuICAgICAgbGluZS1oZWlnaHQ6ICRuYXZiYXItbGluZS1oZWlnaHQtbW9iaWxlO1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gTG9nb1xuICAuYnJhbmQtbG9nbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbG9yOiAkbmF2YmFyLWZvbnQtY29sb3I7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJG5hdmJhci1icmFuZC1mb250LXNpemU7XG4gICAgcGFkZGluZzogMDtcblxuICAgICYuY2VudGVyIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbWVkaXVtLWFuZC1kb3dufSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cbiAgICAgICYubGVmdCwgJi5yaWdodCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJi5sZWZ0IHsgbGVmdDogMC41cmVtOyB9XG4gICAgICAmLnJpZ2h0IHtcbiAgICAgICAgcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnJpZ2h0IHtcbiAgICAgIHJpZ2h0OiAwLjVyZW07XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIGksXG4gICAgW2NsYXNzXj1cIm1kaS1cIl0sIFtjbGFzcyo9XCJtZGktXCJdLFxuICAgIGkubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgfVxuICB9XG5cblxuICAvLyBUaXRsZVxuICAubmF2LXRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICAgIHBhZGRpbmc6IDI4cHggMDtcbiAgfVxuXG5cbiAgLy8gTmF2YmFyIExpbmtzXG4gIHVsIHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBsaSB7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4xKTtcbiAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcztcbiAgICAgIGZvbnQtc2l6ZTogJG5hdmJhci1mb250LXNpemU7XG4gICAgICBjb2xvcjogJG5hdmJhci1mb250LWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICYuYnRuLCAmLmJ0bi1sYXJnZSwgJi5idG4tZmxhdCwgJi5idG4tZmxvYXRpbmcge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuXG4gICAgICAgICYgPiAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIC8vIE5hdmJhciBTZWFyY2ggRm9ybVxuICBmb3JtIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuaW5wdXQtZmllbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICBpbnB1dCB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcblxuICAgICAgJjpmb2N1cywgJlt0eXBlPXRleHRdOnZhbGlkLCAmW3R5cGU9cGFzc3dvcmRdOnZhbGlkLFxuICAgICAgJlt0eXBlPWVtYWlsXTp2YWxpZCwgJlt0eXBlPXVybF06dmFsaWQsICZbdHlwZT1kYXRlXTp2YWxpZCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuXG4gICAgICBpIHtcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjcpO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuM3M7XG4gICAgICB9XG4gICAgICAmLmFjdGl2ZSBpIHsgY29sb3I6ICRuYXZiYXItZm9udC1jb2xvcjsgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaXhlZCBOYXZiYXJcbi5uYXZiYXItZml4ZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogJG5hdmJhci1oZWlnaHQtbW9iaWxlO1xuICB6LWluZGV4OiA5OTc7XG5cbiAgbmF2IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gIH1cbn1cbkBtZWRpYSAjeyRtZWRpdW0tYW5kLXVwfSB7XG4gIG5hdi5uYXYtZXh0ZW5kZWQgLm5hdi13cmFwcGVyIHtcbiAgICBtaW4taGVpZ2h0OiAkbmF2YmFyLWhlaWdodDtcbiAgfVxuICBuYXYsIG5hdiAubmF2LXdyYXBwZXIgaSwgbmF2IGEuc2lkZW5hdi10cmlnZ2VyLCBuYXYgYS5zaWRlbmF2LXRyaWdnZXIgaSB7XG4gICAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJG5hdmJhci1saW5lLWhlaWdodDtcbiAgfVxuICAubmF2YmFyLWZpeGVkIHtcbiAgICBoZWlnaHQ6ICRuYXZiYXItaGVpZ2h0O1xuICB9XG59XG4iLCJcbmEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmh0bWx7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xuICAgIGZvbnQtc2l6ZTogMTQuNXB4O1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2Utc2NyZWVuKSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICB9XG5cbiAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogJG9mZi1ibGFjaztcbn1cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuXHRmb250LXdlaWdodDogNDAwO1xuXHRsaW5lLWhlaWdodDogMS4zO1xufVxuXG4vLyBIZWFkZXIgU3R5bGVzXG5oMSBhLCBoMiBhLCBoMyBhLCBoNCBhLCBoNSBhLCBoNiBhIHsgZm9udC13ZWlnaHQ6IGluaGVyaXQ7IH1cbmgxIHsgZm9udC1zaXplOiAkaDEtZm9udHNpemU7IGxpbmUtaGVpZ2h0OiAxMTAlOyBtYXJnaW46ICgkaDEtZm9udHNpemUgLyAxLjUpIDAgKCRoMS1mb250c2l6ZSAvIDIuNSkgMDt9XG5oMiB7IGZvbnQtc2l6ZTogJGgyLWZvbnRzaXplOyBsaW5lLWhlaWdodDogMTEwJTsgbWFyZ2luOiAoJGgyLWZvbnRzaXplIC8gMS41KSAwICgkaDItZm9udHNpemUgLyAyLjUpIDA7fVxuaDMgeyBmb250LXNpemU6ICRoMy1mb250c2l6ZTsgbGluZS1oZWlnaHQ6IDExMCU7IG1hcmdpbjogKCRoMy1mb250c2l6ZSAvIDEuNSkgMCAoJGgzLWZvbnRzaXplIC8gMi41KSAwO31cbmg0IHsgZm9udC1zaXplOiAkaDQtZm9udHNpemU7IGxpbmUtaGVpZ2h0OiAxMTAlOyBtYXJnaW46ICgkaDQtZm9udHNpemUgLyAxLjUpIDAgKCRoNC1mb250c2l6ZSAvIDIuNSkgMDt9XG5oNSB7IGZvbnQtc2l6ZTogJGg1LWZvbnRzaXplOyBsaW5lLWhlaWdodDogMTEwJTsgbWFyZ2luOiAoJGg1LWZvbnRzaXplIC8gMS41KSAwICgkaDUtZm9udHNpemUgLyAyLjUpIDA7fVxuaDYgeyBmb250LXNpemU6ICRoNi1mb250c2l6ZTsgbGluZS1oZWlnaHQ6IDExMCU7IG1hcmdpbjogKCRoNi1mb250c2l6ZSAvIDEuNSkgMCAoJGg2LWZvbnRzaXplIC8gMi41KSAwO31cblxuLy8gVGV4dCBTdHlsZXNcbmVtIHsgZm9udC1zdHlsZTogaXRhbGljOyB9XG5zdHJvbmcgeyBmb250LXdlaWdodDogNTAwOyB9XG5zbWFsbCB7IGZvbnQtc2l6ZTogNzUlOyB9XG4ubGlnaHQgeyBmb250LXdlaWdodDogMzAwOyB9XG4udGhpbiB7IGZvbnQtd2VpZ2h0OiAyMDA7IH1cblxuXG4uZmxvdy10ZXh0e1xuICAkaTogMDtcbiAgQHdoaWxlICRpIDw9ICRpbnRlcnZhbHMge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDM2MCArICgkaSAqICRpbnRlcnZhbC1zaXplKSkge1xuICAgICAgZm9udC1zaXplOiAxLjJyZW0gKiAoMSArICguMDIgKiAkaSkpO1xuICAgIH1cbiAgICAkaTogJGkgKyAxO1xuICB9XG5cbiAgLy8gSGFuZGxlIGJlbG93IDM2MHB4IHNjcmVlblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbn1cbiIsIi8vIFNjYWxlIHRyYW5zaXRpb25cbi5zY2FsZS10cmFuc2l0aW9uIHtcbiAgJi5zY2FsZS1vdXQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyAhaW1wb3J0YW50O1xuICB9XG5cbiAgJi5zY2FsZS1pbiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKDAuNTMsIDAuMDEsIDAuMzYsIDEuNjMpICFpbXBvcnRhbnQ7XG59IiwiXG5cbi5jYXJkLXBhbmVsIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuMjVzO1xuICBwYWRkaW5nOiAkY2FyZC1wYWRkaW5nO1xuICBtYXJnaW46ICRlbGVtZW50LXRvcC1tYXJnaW4gMCAkZWxlbWVudC1ib3R0b20tbWFyZ2luIDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgQGV4dGVuZCAuei1kZXB0aC0xO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZy1jb2xvcjtcbn1cblxuLmNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogJGVsZW1lbnQtdG9wLW1hcmdpbiAwICRlbGVtZW50LWJvdHRvbS1tYXJnaW4gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmctY29sb3I7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjI1cztcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBAZXh0ZW5kIC56LWRlcHRoLTE7XG5cblxuICAuY2FyZC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgJi5hY3RpdmF0b3Ige1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIENhcmQgU2l6ZXNcbiAgJi5zbWFsbCwgJi5tZWRpdW0sICYubGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5jYXJkLWltYWdlIHtcbiAgICAgIG1heC1oZWlnaHQ6IDYwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgIC5jYXJkLWltYWdlICsgLmNhcmQtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiA0MCU7XG4gICAgfVxuICAgIC5jYXJkLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgIC5jYXJkLWFjdGlvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgJi5zbWFsbCB7XG4gICAgaGVpZ2h0OiAzMDBweDtcbiAgfVxuXG4gICYubWVkaXVtIHtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICB9XG5cbiAgJi5sYXJnZSB7XG4gICAgaGVpZ2h0OiA1MDBweDtcbiAgfVxuXG4gIC8vIEhvcml6b250YWwgQ2FyZHNcbiAgJi5ob3Jpem9udGFsIHtcbiAgICAmLnNtYWxsLCAmLm1lZGl1bSwgJi5sYXJnZSB7XG4gICAgICAuY2FyZC1pbWFnZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgLmNhcmQtaW1hZ2Uge1xuICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICBpbWcge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHggMCAwIDJweDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1zdGFja2VkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZmxleDogMTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgLmNhcmQtY29udGVudCB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTdGlja3kgQWN0aW9uIFNlY3Rpb25cbiAgJi5zdGlja3ktYWN0aW9uIHtcbiAgICAuY2FyZC1hY3Rpb24ge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAuY2FyZC1yZXZlYWwge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2NHB4O1xuICAgIH1cbiAgfVxuXG5cblxuXG4gIC5jYXJkLWltYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBJbWFnZSBiYWNrZ3JvdW5kIGZvciBjb250ZW50XG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4IDJweCAwIDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuY2FyZC10aXRsZSB7XG4gICAgICBjb2xvcjogJGNhcmQtYmctY29sb3I7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogJGNhcmQtcGFkZGluZztcbiAgICB9XG4gIH1cblxuICAuY2FyZC1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAkY2FyZC1wYWRkaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAycHggMnB4O1xuXG4gICAgcCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIC5jYXJkLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG5cbiAgICAgIGkge1xuICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2FyZC1hY3Rpb24ge1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIDAgMnB4IDJweDtcbiAgICB9XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgLy8gVXNlIGluaGVyaXQgdG8gaW5oZXJpdCBjb2xvciBjbGFzc2VzXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTYwLDE2MCwxNjAsLjIpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxNnB4ICRjYXJkLXBhZGRpbmc7XG5cbiAgICBhOm5vdCguYnRuKTpub3QoLmJ0bi1sYXJnZSk6bm90KC5idG4tZmxvYXRpbmcpIHtcbiAgICAgIGNvbG9yOiAkY2FyZC1saW5rLWNvbG9yO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZC1wYWRkaW5nO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2U7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAmOmhvdmVyIHsgY29sb3I6ICRjYXJkLWxpbmstY29sb3ItbGlnaHQ7IH1cbiAgICB9XG4gIH1cblxuICAuY2FyZC1yZXZlYWwge1xuICAgIHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnLWNvbG9yO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIC5jYXJkLXRpdGxlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiI3RvYXN0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAwMDA7XG5cbiAgQG1lZGlhICN7JHNtYWxsLWFuZC1kb3dufSB7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIGJvdHRvbTogMCU7XG4gIH1cbiAgQG1lZGlhICN7JG1lZGl1bS1vbmx5fSB7XG4gICAgbGVmdDogNSU7XG4gICAgYm90dG9tOiA3JTtcbiAgICBtYXgtd2lkdGg6IDkwJTtcbiAgfVxuICBAbWVkaWEgI3skbGFyZ2UtYW5kLXVwfSB7XG4gICAgdG9wOiAxMCU7XG4gICAgcmlnaHQ6IDclO1xuICAgIG1heC13aWR0aDogODYlO1xuICB9XG59XG5cbi50b2FzdCB7XG4gIEBleHRlbmQgLnotZGVwdGgtMTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0b3A6IDM1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDoxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6ICR0b2FzdC1oZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWNvbG9yO1xuICBwYWRkaW5nOiAxMHB4IDI1cHg7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogJHRvYXN0LXRleHQtY29sb3I7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gIC50b2FzdC1hY3Rpb24ge1xuICAgIGNvbG9yOiAkdG9hc3QtYWN0aW9uLWNvbG9yO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMjVweDtcbiAgICBtYXJnaW4tbGVmdDogM3JlbTtcbiAgfVxuXG4gICYucm91bmRlZHtcbiAgICBib3JkZXItcmFkaXVzOiAyNHB4O1xuICB9XG5cbiAgQG1lZGlhICN7JHNtYWxsLWFuZC1kb3dufSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuIiwiLnRhYnMge1xuICAmLnRhYnMtdHJhbnNwYXJlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgLnRhYiBhLFxuICAgIC50YWIuZGlzYWJsZWQgYSxcbiAgICAudGFiLmRpc2FibGVkIGE6aG92ZXIge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC43KTtcbiAgICB9XG5cbiAgICAudGFiIGE6aG92ZXIsXG4gICAgLnRhYiBhLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgICAuaW5kaWNhdG9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG5cbiAgJi50YWJzLWZpeGVkLXdpZHRoIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgLnRhYiB7XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgfVxuICB9XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIGhlaWdodDogNDhweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJzLWJnLWNvbG9yO1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAudGFiIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiA0OHB4O1xuICAgIGhlaWdodDogNDhweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgYSB7XG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpmb2N1cy5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudGl6ZSgkdGFicy11bmRlcmxpbmUtY29sb3IsIC44KTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlcixcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAkdGFicy10ZXh0LWNvbG9yO1xuICAgICAgfVxuXG4gICAgICBjb2xvcjogcmdiYSgkdGFicy10ZXh0LWNvbG9yLCAuNyk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogMCAyNHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI4cyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIC4yOHMgZWFzZTtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIGEsXG4gICAgJi5kaXNhYmxlZCBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiByZ2JhKCR0YWJzLXRleHQtY29sb3IsIC40KTtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG4gIH1cbiAgLmluZGljYXRvciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFicy11bmRlcmxpbmUtY29sb3I7XG4gICAgd2lsbC1jaGFuZ2U6IGxlZnQsIHJpZ2h0O1xuICB9XG59XG5cbi8vIEZpeGVkIFNpZGVuYXYgaGlkZSBvbiBzbWFsbGVyXG5AbWVkaWEgI3skbWVkaXVtLWFuZC1kb3dufSB7XG4gIC50YWJzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgLnRhYiB7XG4gICAgICBmbGV4LWdyb3c6IDE7XG5cbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAwIDEycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubWF0ZXJpYWwtdG9vbHRpcCB7XG4gIHBhZGRpbmc6IDEwcHggOHB4O1xuICBmb250LXNpemU6IDFyZW07XG4gIHotaW5kZXg6IDIwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGNvbG9yOiAjZmZmO1xuICBtaW4taGVpZ2h0OiAzNnB4O1xuICBsaW5lLWhlaWdodDogMTIwJTtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gNHB4KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMjMyO1xufVxuXG4uYmFja2Ryb3Age1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIGhlaWdodDogN3B4O1xuICB3aWR0aDogMTRweDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDUwJSA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjMyMzI7XG4gIHotaW5kZXg6IC0xO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMCU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbiIsIi8vIHNoYXJlZCBzdHlsZXNcbi5idG4sXG4uYnRuLWZsYXQge1xuICBib3JkZXI6ICRidXR0b24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6ICRidXR0b24taGVpZ2h0O1xuICBsaW5lLWhlaWdodDogJGJ1dHRvbi1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gR2V0cyByaWQgb2YgdGFwIGFjdGl2ZSBzdGF0ZVxufVxuXG4vLyBEaXNhYmxlZCBzaGFyZWQgc3R5bGVcbi5idG4uZGlzYWJsZWQsXG4uYnRuLWZsb2F0aW5nLmRpc2FibGVkLFxuLmJ0bi1sYXJnZS5kaXNhYmxlZCxcbi5idG4tc21hbGwuZGlzYWJsZWQsXG4uYnRuLWZsYXQuZGlzYWJsZWQsXG4uYnRuOmRpc2FibGVkLFxuLmJ0bi1mbG9hdGluZzpkaXNhYmxlZCxcbi5idG4tbGFyZ2U6ZGlzYWJsZWQsXG4uYnRuLXNtYWxsOmRpc2FibGVkLFxuLmJ0bi1mbGF0OmRpc2FibGVkLFxuLmJ0bltkaXNhYmxlZF0sXG4uYnRuLWZsb2F0aW5nW2Rpc2FibGVkXSxcbi5idG4tbGFyZ2VbZGlzYWJsZWRdLFxuLmJ0bi1zbWFsbFtkaXNhYmxlZF0sXG4uYnRuLWZsYXRbZGlzYWJsZWRdIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogJGJ1dHRvbi1kaXNhYmxlZC1jb2xvciAhaW1wb3J0YW50O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkYnV0dG9uLWRpc2FibGVkLWNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gU2hhcmVkIGljb24gc3R5bGVzXG4uYnRuLFxuLmJ0bi1mbG9hdGluZyxcbi5idG4tbGFyZ2UsXG4uYnRuLXNtYWxsLFxuLmJ0bi1mbGF0IHtcbiAgZm9udC1zaXplOiAkYnV0dG9uLWZvbnQtc2l6ZTtcbiAgb3V0bGluZTogMDtcbiAgaSB7XG4gICAgZm9udC1zaXplOiAkYnV0dG9uLWljb24tZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFNoYXJlZCBmb2N1cyBidXR0b24gc3R5bGVcbi5idG4sXG4uYnRuLWZsb2F0aW5nIHtcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRidXR0b24tcmFpc2VkLWJhY2tncm91bmQsIDEwJSk7XG4gIH1cbn1cblxuLy8gUmFpc2VkIEJ1dHRvblxuLmJ0biB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICRidXR0b24tcmFpc2VkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICBAZXh0ZW5kIC56LWRlcHRoLTE7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2Utb3V0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tcmFpc2VkLWJhY2tncm91bmQtaG92ZXI7XG4gICAgQGV4dGVuZCAuei1kZXB0aC0xLWhhbGY7XG4gIH1cbn1cblxuLy8gRmxvYXRpbmcgYnV0dG9uXG4uYnRuLWZsb2F0aW5nIHtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1mbG9hdGluZy1iYWNrZ3JvdW5kLWhvdmVyO1xuICAgIEBleHRlbmQgLnotZGVwdGgtMS1oYWxmO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gICYuYnRuLWxhcmdlIHtcbiAgICAmLmhhbGZ3YXktZmFiIHtcbiAgICAgIGJvdHRvbTogLSRidXR0b24tZmxvYXRpbmctbGFyZ2Utc2l6ZSAvIDI7XG4gICAgfVxuICAgIHdpZHRoOiAkYnV0dG9uLWZsb2F0aW5nLWxhcmdlLXNpemU7XG4gICAgaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLWxhcmdlLXNpemU7XG4gICAgcGFkZGluZzogMDtcbiAgICBpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLWxhcmdlLXNpemU7XG4gICAgfVxuICB9XG5cbiAgJi5idG4tc21hbGwge1xuICAgICYuaGFsZndheS1mYWIge1xuICAgICAgYm90dG9tOiAtJGJ1dHRvbi1mbG9hdGluZy1zbWFsbC1zaXplIC8gMjtcbiAgICB9XG4gICAgd2lkdGg6ICRidXR0b24tZmxvYXRpbmctc21hbGwtc2l6ZTtcbiAgICBoZWlnaHQ6ICRidXR0b24tZmxvYXRpbmctc21hbGwtc2l6ZTtcbiAgICBpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLXNtYWxsLXNpemU7XG4gICAgfVxuICB9XG5cbiAgJi5oYWxmd2F5LWZhYiB7XG4gICAgJi5sZWZ0IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMjRweDtcbiAgICB9XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAyNHB4O1xuICAgIGJvdHRvbTogLSRidXR0b24tZmxvYXRpbmctc2l6ZSAvIDI7XG4gIH1cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogJGJ1dHRvbi1mbG9hdGluZy1jb2xvcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogJGJ1dHRvbi1mbG9hdGluZy1zaXplO1xuICBoZWlnaHQ6ICRidXR0b24tZmxvYXRpbmctc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRidXR0b24tZmxvYXRpbmctc2l6ZTtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1mbG9hdGluZy1iYWNrZ3JvdW5kO1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLWZsb2F0aW5nLXJhZGl1cztcbiAgQGV4dGVuZCAuei1kZXB0aC0xO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBpIHtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkYnV0dG9uLWZsb2F0aW5nLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJGJ1dHRvbi1sYXJnZS1pY29uLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGJ1dHRvbi1mbG9hdGluZy1zaXplO1xuICB9XG59XG5cbi8vIGJ1dHRvbiBmaXhcbmJ1dHRvbi5idG4tZmxvYXRpbmcge1xuICBib3JkZXI6ICRidXR0b24tYm9yZGVyO1xufVxuXG4vLyBGaXhlZCBBY3Rpb24gQnV0dG9uXG4uZml4ZWQtYWN0aW9uLWJ0biB7XG4gICYuYWN0aXZlIHtcbiAgICB1bCB7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpcmVjdGlvbnNcbiAgJi5kaXJlY3Rpb24tbGVmdCxcbiAgJi5kaXJlY3Rpb24tcmlnaHQge1xuICAgIHBhZGRpbmc6IDAgMCAwIDE1cHg7XG4gICAgdWwge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICByaWdodDogNjRweDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIC8qd2lkdGggMTAwJSBvbmx5IGdvZXMgdG8gd2lkdGggb2YgYnV0dG9uIGNvbnRhaW5lciAqL1xuICAgICAgd2lkdGg6IDUwMHB4O1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogNy41cHggMTVweCAwIDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuZGlyZWN0aW9uLXJpZ2h0IHtcbiAgICBwYWRkaW5nOiAwIDE1cHggMCAwO1xuICAgIHVsIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAgIGxlZnQ6IDY0cHg7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiA3LjVweCAwIDAgMTVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5kaXJlY3Rpb24tYm90dG9tIHtcbiAgICBwYWRkaW5nOiAwIDAgMTVweCAwO1xuICAgIHVsIHtcbiAgICAgIHRvcDogNjRweDtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbjogMTVweCAwIDAgMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi50b29sYmFyIHtcbiAgICAmLmFjdGl2ZSB7XG4gICAgICAmPmEgaSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLWxhcmdlLXNpemU7XG4gICAgdWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBsaSB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLWxhcmdlLXNpemU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAyM3B4O1xuICBib3R0b206IDIzcHg7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB6LWluZGV4OiA5OTc7XG4gIHVsIHtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiA2NHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG4gICAgYS5idG4tZmxvYXRpbmcge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cbiAgLmZhYi1iYWNrZHJvcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHdpZHRoOiAkYnV0dG9uLWZsb2F0aW5nLXNpemU7XG4gICAgaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLXNpemU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1mbG9hdGluZy1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1yYWRpdXM6ICRidXR0b24tZmxvYXRpbmctcmFkaXVzO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbn1cblxuLy8gRmxhdCBidXR0b25cbi5idG4tZmxhdCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogJGJ1dHRvbi1mbGF0LWNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzO1xuICAmOmZvY3VzLFxuICAmOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjEpO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICYuYnRuLWZsYXRbZGlzYWJsZWRdICB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGJ1dHRvbi1mbGF0LWRpc2FibGVkLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbi8vIExhcmdlIGJ1dHRvblxuLmJ0bi1sYXJnZSB7XG4gIEBleHRlbmQgLmJ0bjtcbiAgaGVpZ2h0OiAkYnV0dG9uLWxhcmdlLWhlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRidXR0b24tbGFyZ2UtaGVpZ2h0O1xuICBmb250LXNpemU6ICRidXR0b24tbGFyZ2UtZm9udC1zaXplO1xuICBwYWRkaW5nOiAwIDI4cHg7XG5cbiAgaSB7XG4gICAgZm9udC1zaXplOiAkYnV0dG9uLWxhcmdlLWljb24tZm9udC1zaXplO1xuICB9XG59XG5cbi8vIFNtYWxsIGJ1dHRvblxuLmJ0bi1zbWFsbCB7XG4gIEBleHRlbmQgLmJ0bjtcbiAgaGVpZ2h0OiAkYnV0dG9uLXNtYWxsLWhlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRidXR0b24tc21hbGwtaGVpZ2h0O1xuICBmb250LXNpemU6ICRidXR0b24tc21hbGwtZm9udC1zaXplO1xuICBpIHtcbiAgICBmb250LXNpemU6ICRidXR0b24tc21hbGwtaWNvbi1mb250LXNpemU7XG4gIH1cbn1cblxuLy8gQmxvY2sgYnV0dG9uXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iLCIuZHJvcGRvd24tY29udGVudCB7XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuXG4gIEBleHRlbmQgLnotZGVwdGgtMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnLWNvbG9yO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1pbi13aWR0aDogMTAwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA5OTk5OyAvLyBUT0RPOiBDaGVjayBpZiB0aGlzIGRvZXNuJ3QgYnJlYWsgb3RoZXIgdGhpbmdzXG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcblxuXG4gIGxpIHtcbiAgICAmOmhvdmVyLCAmLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24taG92ZXItYmctY29sb3I7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZGl2aWRlciB7XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgfVxuXG4gICAgJiA+IGEsICYgPiBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgcGFkZGluZzogKCgkZHJvcGRvd24taXRlbS1oZWlnaHQgLSAyMikgLyAyKSAxNnB4O1xuICAgIH1cblxuICAgICYgPiBzcGFuID4gbGFiZWwge1xuICAgICAgdG9wOiAxcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgIH1cblxuICAgIC8vIEljb24gYWxpZ25tZW50IG92ZXJyaWRlXG4gICAgJiA+IGEgPiBpIHtcbiAgICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW46IDAgMjRweCAwIDA7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICB9XG5cblxuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbG9yOiAkb2ZmLWJsYWNrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBtaW4taGVpZ2h0OiAkZHJvcGRvd24taXRlbS1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbmJvZHkua2V5Ym9hcmQtZm9jdXNlZCB7XG4gIC5kcm9wZG93bi1jb250ZW50IGxpOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGRyb3Bkb3duLWhvdmVyLWJnLWNvbG9yLCA4JSk7XG4gIH1cbn1cblxuLy8gSW5wdXQgZmllbGQgc3BlY2lmaWNpdHkgYnVnZml4XG4uaW5wdXQtZmllbGQuY29sIC5kcm9wZG93bi1jb250ZW50IFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCB7XG4gIHRvcDogMXB4O1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDE4cHg7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLmRyb3Bkb3duLXRyaWdnZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59IiwiXG4vKiFcbiAqIFdhdmVzIHYwLjYuMFxuICogaHR0cDovL2ZpYW4ubXkuaWQvV2F2ZXNcbiAqXG4gKiBDb3B5cmlnaHQgMjAxNCBBbGZpYW5hIEUuIFNpYnVlYSBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9maWFucy9XYXZlcy9ibG9iL21hc3Rlci9MSUNFTlNFXG4gKi9cblxuXG4ud2F2ZXMtZWZmZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zaXRpb246IC4zcyBlYXNlLW91dDtcblxuICAud2F2ZXMtcmlwcGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBtYXJnaW4tdG9wOi0xMHB4O1xuICAgIG1hcmdpbi1sZWZ0Oi0xMHB4O1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMik7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuN3MgZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAvLyBXYXZlcyBDb2xvcnNcbiAgJi53YXZlcy1saWdodCAud2F2ZXMtcmlwcGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNDUpO1xuICB9XG4gICYud2F2ZXMtcmVkIC53YXZlcy1yaXBwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ0LCA2NywgNTQsIC43MCk7XG4gIH1cbiAgJi53YXZlcy15ZWxsb3cgLndhdmVzLXJpcHBsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDIzNSwgNTksIC43MCk7XG4gIH1cbiAgJi53YXZlcy1vcmFuZ2UgLndhdmVzLXJpcHBsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDE1MiwgMCwgLjcwKTtcbiAgfVxuICAmLndhdmVzLXB1cnBsZSAud2F2ZXMtcmlwcGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE1NiwgMzksIDE3NiwgMC43MCk7XG4gIH1cbiAgJi53YXZlcy1ncmVlbiAud2F2ZXMtcmlwcGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDc2LCAxNzUsIDgwLCAwLjcwKTtcbiAgfVxuICAmLndhdmVzLXRlYWwgLndhdmVzLXJpcHBsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxNTAsIDEzNiwgMC43MCk7XG4gIH1cblxuICAvLyBTdHlsZSBpbnB1dCBidXR0b24gYnVnLlxuICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCBpbnB1dFt0eXBlPVwicmVzZXRcIl0sIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cblxuICBpbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgfVxufVxuXG4ud2F2ZXMtbm90cmFuc2l0aW9uIHtcbiAgdHJhbnNpdGlvbjogbm9uZSAje1wiIWltcG9ydGFudFwifTtcbn1cblxuLndhdmVzLWNpcmNsZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgLXdlYmtpdC1tYXNrLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHdoaXRlIDEwMCUsIGJsYWNrIDEwMCUpO1xufVxuXG4ud2F2ZXMtaW5wdXQtd3JhcHBlciB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuXG4gIC53YXZlcy1idXR0b24taW5wdXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi53YXZlcy1jaXJjbGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAyLjVlbTtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDIuNWVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIC13ZWJraXQtbWFzay1pbWFnZTogbm9uZTtcbn1cblxuLndhdmVzLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIEZpcmVmb3ggQnVnOiBsaW5rIG5vdCB0cmlnZ2VyZWQgKi9cbi53YXZlcy1lZmZlY3QgLndhdmVzLXJpcHBsZSB7XG4gIHotaW5kZXg6IC0xO1xufSIsIi5tb2RhbCB7XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICBAZXh0ZW5kIC56LWRlcHRoLTU7XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbiAgcGFkZGluZzogMDtcbiAgbWF4LWhlaWdodDogNzAlO1xuICB3aWR0aDogNTUlO1xuICBtYXJnaW46IGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB3aWxsLWNoYW5nZTogdG9wLCBvcGFjaXR5O1xuXG4gIEBtZWRpYSAjeyRtZWRpdW0tYW5kLWRvd259IHtcbiAgIHdpZHRoOiA4MCU7XG4gIH1cblxuICBoMSxoMixoMyxoNCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAyNHB4O1xuICB9XG4gIC5tb2RhbC1jbG9zZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDJweCAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbiAgICBwYWRkaW5nOiA0cHggNnB4O1xuICAgIGhlaWdodDogNTZweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgIC5idG4sIC5idG4tZmxhdCB7XG4gICAgICBtYXJnaW46IDZweCAwO1xuICAgIH1cbiAgfVxufVxuLm1vZGFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5OTtcbiAgdG9wOiAtMjUlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEyNSU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBkaXNwbGF5OiBub25lO1xuXG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xufVxuXG4vLyBNb2RhbCB3aXRoIGZpeGVkIGFjdGlvbiBmb290ZXJcbi5tb2RhbC5tb2RhbC1maXhlZC1mb290ZXIge1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDcwJTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gNTZweCk7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gIH1cbn1cblxuLy8gTW9kYWwgQm90dG9tIFNoZWV0IFN0eWxlXG4ubW9kYWwuYm90dG9tLXNoZWV0IHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IC0xMDAlO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiA0NSU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHdpbGwtY2hhbmdlOiBib3R0b20sIG9wYWNpdHk7XG59XG4iLCIuY29sbGFwc2libGUge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbGxhcHNpYmxlLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGNvbGxhcHNpYmxlLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sbGFwc2libGUtYm9yZGVyLWNvbG9yO1xuICBtYXJnaW46ICRlbGVtZW50LXRvcC1tYXJnaW4gMCAkZWxlbWVudC1ib3R0b20tbWFyZ2luIDA7XG4gIEBleHRlbmQgLnotZGVwdGgtMTtcbn1cblxuLmNvbGxhcHNpYmxlLWhlYWRlciB7XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDBcbiAgfVxuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbGxhcHNpYmxlLWhlYWRlci1jb2xvcjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xsYXBzaWJsZS1ib3JkZXItY29sb3I7XG5cbiAgaSB7XG4gICAgd2lkdGg6IDJyZW07XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIH1cbn1cbi5rZXlib2FyZC1mb2N1c2VkIC5jb2xsYXBzaWJsZS1oZWFkZXI6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xufVxuXG4uY29sbGFwc2libGUtYm9keSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sbGFwc2libGUtYm9yZGVyLWNvbG9yO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAycmVtO1xufVxuXG4vLyBTaWRlbmF2IGNvbGxhcHNpYmxlIHN0eWxpbmdcbi5zaWRlbmF2LFxuLnNpZGVuYXYuZml4ZWQge1xuXG4gIC5jb2xsYXBzaWJsZSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICBsaSB7IHBhZGRpbmc6IDA7IH1cbiAgfVxuXG4gIC5jb2xsYXBzaWJsZS1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgcGFkZGluZzogMCAkc2lkZW5hdi1wYWRkaW5nO1xuXG4gICAgJjpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjA1KTsgfVxuICAgIGkgeyBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuICB9XG5cbiAgLmNvbGxhcHNpYmxlLWJvZHkge1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sbGFwc2libGUtaGVhZGVyLWNvbG9yO1xuXG4gICAgbGkgYSB7XG4gICAgICBwYWRkaW5nOiAwICg3LjVweCArICRzaWRlbmF2LXBhZGRpbmcpXG4gICAgICAgICAgICAgICAwICgxNXB4ICsgJHNpZGVuYXYtcGFkZGluZyk7XG4gICAgfVxuICB9XG5cbn1cblxuLy8gUG9wb3V0IENvbGxhcHNpYmxlXG5cbi5jb2xsYXBzaWJsZS5wb3BvdXQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gID4gbGkge1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4xNiksIDAgMnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICAgIC8vIHRyYW5zZm9ybTogc2NhbGVYKC45Mik7XG4gICAgbWFyZ2luOiAwIDI0cHg7XG4gICAgdHJhbnNpdGlvbjogbWFyZ2luIC4zNXMgY3ViaWMtYmV6aWVyKDAuMjUwLCAwLjQ2MCwgMC40NTAsIDAuOTQwKTtcbiAgfVxuICA+IGxpLmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogMCA1cHggMTFweCAwIHJnYmEoMCwgMCwgMCwgMC4xOCksIDAgNHB4IDE1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgIG1hcmdpbjogMTZweCAwO1xuICAgIC8vIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICB9XG59XG4iLCIuY2hpcCB7XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNoaXAtc2VsZWN0ZWQtY29sb3I7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMzJweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogcmdiYSgwLDAsMCwuNik7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBwYWRkaW5nOiAwIDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjaGlwLWJnLWNvbG9yO1xuICBtYXJnaW4tYm90dG9tOiAkY2hpcC1tYXJnaW47XG4gIG1hcmdpbi1yaWdodDogJGNoaXAtbWFyZ2luO1xuXG4gID4gaW1nIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDAgOHB4IDAgLTEycHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgfVxuXG4gIC5jbG9zZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIH1cbn1cblxuLmNoaXBzIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNoaXAtYm9yZGVyLWNvbG9yO1xuICBib3gtc2hhZG93OiBub25lO1xuICBtYXJnaW46ICRpbnB1dC1tYXJnaW47XG4gIG1pbi1oZWlnaHQ6IDQ1cHg7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAuM3M7XG5cbiAgJi5mb2N1cyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjaGlwLXNlbGVjdGVkLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAkY2hpcC1zZWxlY3RlZC1jb2xvcjtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogdGV4dDtcbiAgfVxuXG4gIC5pbnB1dCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6IHJnYmEoMCwwLDAsLjYpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgIG91dGxpbmU6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTIwcHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnB1dDpmb2N1cyB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gQXV0b2NvbXBsZXRlXG4gIC5hdXRvY29tcGxldGUtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vIEZvcm0gcHJlZml4XG4ucHJlZml4IH4gLmNoaXBzIHtcbiAgbWFyZ2luLWxlZnQ6IDNyZW07XG4gIHdpZHRoOiA5MiU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzcmVtKTtcbn1cbi5jaGlwczplbXB0eSB+IGxhYmVsICB7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE0MCUpO1xufVxuIiwiLm1hdGVyaWFsYm94ZWQge1xuICAmOmhvdmVyIHtcbiAgICAmOm5vdCguYWN0aXZlKSB7XG4gICAgICBvcGFjaXR5OiAuODtcbiAgICB9XG4gIH1cblxuICBkaXNwbGF5OiBibG9jaztcbiAgY3Vyc29yOiB6b29tLWluO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjRzO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAmLmFjdGl2ZSB7XG4gICAgY3Vyc29yOiB6b29tLW91dDtcbiAgfVxufVxuXG4jbWF0ZXJpYWxib3gtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOmZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyOTI5Mjk7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xufVxuXG4ubWF0ZXJpYWxib3gtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgZGlzcGxheTogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAlIDE1JTtcbiAgaGVpZ2h0OiA1MHB4O1xuICB6LWluZGV4OiAxMDAwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn0iLCIvLyBSZW1vdmUgRm9jdXMgQm94ZXNcbnNlbGVjdDpmb2N1cyB7XG4gIG91dGxpbmU6ICRzZWxlY3QtZm9jdXM7XG59XG5cbmJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZC1mb2N1cztcbn1cblxubGFiZWwge1xuICBmb250LXNpemU6ICRsYWJlbC1mb250LXNpemU7XG4gIGNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xufVxuXG5AaW1wb3J0ICdpbnB1dC1maWVsZHMnO1xuQGltcG9ydCAncmFkaW8tYnV0dG9ucyc7XG5AaW1wb3J0ICdjaGVja2JveGVzJztcbkBpbXBvcnQgJ3N3aXRjaGVzJztcbkBpbXBvcnQgJ3NlbGVjdCc7XG5AaW1wb3J0ICdmaWxlLWlucHV0JztcbkBpbXBvcnQgJ3JhbmdlJztcbiIsIi8qIFRleHQgSW5wdXRzICsgVGV4dGFyZWFcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIFN0eWxlIFBsYWNlaG9sZGVycyAqL1xuXG46OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICRwbGFjZWhvbGRlci10ZXh0LWNvbG9yO1xufVxuXG4vKiBUZXh0IGlucHV0cyAqL1xuXG5pbnB1dDpub3QoW3R5cGVdKSxcbmlucHV0W3R5cGU9dGV4dF06bm90KC5icm93c2VyLWRlZmF1bHQpLFxuaW5wdXRbdHlwZT1wYXNzd29yZF06bm90KC5icm93c2VyLWRlZmF1bHQpLFxuaW5wdXRbdHlwZT1lbWFpbF06bm90KC5icm93c2VyLWRlZmF1bHQpLFxuaW5wdXRbdHlwZT11cmxdOm5vdCguYnJvd3Nlci1kZWZhdWx0KSxcbmlucHV0W3R5cGU9dGltZV06bm90KC5icm93c2VyLWRlZmF1bHQpLFxuaW5wdXRbdHlwZT1kYXRlXTpub3QoLmJyb3dzZXItZGVmYXVsdCksXG5pbnB1dFt0eXBlPWRhdGV0aW1lXTpub3QoLmJyb3dzZXItZGVmYXVsdCksXG5pbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXTpub3QoLmJyb3dzZXItZGVmYXVsdCksXG5pbnB1dFt0eXBlPXRlbF06bm90KC5icm93c2VyLWRlZmF1bHQpLFxuaW5wdXRbdHlwZT1udW1iZXJdOm5vdCguYnJvd3Nlci1kZWZhdWx0KSxcbmlucHV0W3R5cGU9c2VhcmNoXTpub3QoLmJyb3dzZXItZGVmYXVsdCksXG50ZXh0YXJlYS5tYXRlcmlhbGl6ZS10ZXh0YXJlYSB7XG5cbiAgLy8gR2VuZXJhbCBTdHlsZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgb3V0bGluZTogbm9uZTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBtYXJnaW46ICRpbnB1dC1tYXJnaW47XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuM3MsIGJvcmRlciAuM3M7XG5cbiAgLy8gRGlzYWJsZWQgaW5wdXQgc3R5bGVcbiAgJjpkaXNhYmxlZCxcbiAgJltyZWFkb25seT1cInJlYWRvbmx5XCJdIHtcbiAgICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJvcmRlci1ib3R0b206ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXI7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBsYWJlbCBzdHlsZVxuICAmOmRpc2FibGVkK2xhYmVsLFxuICAmW3JlYWRvbmx5PVwicmVhZG9ubHlcIl0rbGFiZWwge1xuICAgIGNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gIH1cblxuICAvLyBGb2N1c2VkIGlucHV0IHN0eWxlXG4gICY6Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAkaW5wdXQtZm9jdXMtY29sb3I7XG4gIH1cblxuICAvLyBGb2N1c2VkIGxhYmVsIHN0eWxlXG4gICY6Zm9jdXM6bm90KFtyZWFkb25seV0pK2xhYmVsIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICB9XG5cbiAgLy8gSGlkZSBoZWxwZXIgdGV4dCBvbiBkYXRhIG1lc3NhZ2VcbiAgJi52YWxpZCB+IC5oZWxwZXItdGV4dFtkYXRhLXN1Y2Nlc3NdLFxuICAmOmZvY3VzLnZhbGlkIH4gLmhlbHBlci10ZXh0W2RhdGEtc3VjY2Vzc10sXG4gICYuaW52YWxpZCB+IC5oZWxwZXItdGV4dFtkYXRhLWVycm9yXSxcbiAgJjpmb2N1cy5pbnZhbGlkIH4gLmhlbHBlci10ZXh0W2RhdGEtZXJyb3JdIHtcbiAgICBAZXh0ZW5kICVoaWRkZW4tdGV4dDtcbiAgfVxuXG4gIC8vIFZhbGlkIElucHV0IFN0eWxlXG4gICYudmFsaWQsXG4gICY6Zm9jdXMudmFsaWQge1xuICAgIEBleHRlbmQgJXZhbGlkLWlucHV0LXN0eWxlO1xuICB9XG5cbiAgLy8gQ3VzdG9tIFN1Y2Nlc3MgTWVzc2FnZVxuICAmLnZhbGlkIH4gLmhlbHBlci10ZXh0OmFmdGVyLFxuICAmOmZvY3VzLnZhbGlkIH4gLmhlbHBlci10ZXh0OmFmdGVyIHtcbiAgICBAZXh0ZW5kICVjdXN0b20tc3VjY2Vzcy1tZXNzYWdlO1xuICB9XG4gICY6Zm9jdXMudmFsaWQgfiBsYWJlbCB7XG4gICAgY29sb3I6ICRpbnB1dC1zdWNjZXNzLWNvbG9yO1xuICB9XG5cbiAgLy8gSW52YWxpZCBJbnB1dCBTdHlsZVxuICAmLmludmFsaWQsXG4gICY6Zm9jdXMuaW52YWxpZCB7XG4gICAgQGV4dGVuZCAlaW52YWxpZC1pbnB1dC1zdHlsZTtcbiAgfVxuXG4gIC8vIEN1c3RvbSBFcnJvciBtZXNzYWdlXG4gICYuaW52YWxpZCB+IC5oZWxwZXItdGV4dDphZnRlcixcbiAgJjpmb2N1cy5pbnZhbGlkIH4gLmhlbHBlci10ZXh0OmFmdGVyIHtcbiAgICBAZXh0ZW5kICVjdXN0b20tZXJyb3ItbWVzc2FnZTtcbiAgfVxuICAmOmZvY3VzLmludmFsaWQgfiBsYWJlbCB7XG4gICAgY29sb3I6ICRpbnB1dC1lcnJvci1jb2xvcjtcbiAgfVxuXG4gIC8vIEZ1bGwgd2lkdGggbGFiZWwgd2hlbiB1c2luZyB2YWxpZGF0ZSBmb3IgZXJyb3IgbWVzc2FnZXNcbiAgJi52YWxpZGF0ZSArIGxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEZvcm0gTWVzc2FnZSBTaGFyZWQgU3R5bGVzXG4gICYgKyBsYWJlbDphZnRlciB7XG4gICAgQGV4dGVuZCAlaW5wdXQtYWZ0ZXItc3R5bGU7XG4gIH1cbn1cblxuXG4vKiBWYWxpZGF0aW9uIFNhc3MgUGxhY2Vob2xkZXJzICovXG4ldmFsaWQtaW5wdXQtc3R5bGUge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGlucHV0LXN1Y2Nlc3MtY29sb3I7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAkaW5wdXQtc3VjY2Vzcy1jb2xvcjtcbn1cbiVpbnZhbGlkLWlucHV0LXN0eWxlIHtcbiAgYm9yZGVyLWJvdHRvbTogJGlucHV0LWludmFsaWQtYm9yZGVyO1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgJGlucHV0LWVycm9yLWNvbG9yO1xufVxuJWhpZGRlbi10ZXh0IHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4lY3VzdG9tLXN1Y2Nlc3MtbWVzc2FnZSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1zdWNjZXNzKTtcbiAgY29sb3I6ICRpbnB1dC1zdWNjZXNzLWNvbG9yO1xufVxuJWN1c3RvbS1lcnJvci1tZXNzYWdlIHtcbiAgY29udGVudDogYXR0cihkYXRhLWVycm9yKTtcbiAgY29sb3I6ICRpbnB1dC1lcnJvci1jb2xvcjtcbn1cbiVpbnB1dC1hZnRlci1zdHlsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogLjJzIG9wYWNpdHkgZWFzZS1vdXQsIC4ycyBjb2xvciBlYXNlLW91dDtcbn1cblxuXG4vLyBTdHlsaW5nIGZvciBpbnB1dCBmaWVsZCB3cmFwcGVyXG4uaW5wdXQtZmllbGQge1xuICAvLyBJbmxpbmUgc3R5bGVzXG4gICYuaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuXG4gICAgaW5wdXQsXG4gICAgLnNlbGVjdC1kcm9wZG93biB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgfVxuXG4gIC8vIEd1dHRlciBzcGFjaW5nXG4gICYuY29sIHtcbiAgICBsYWJlbCB7XG4gICAgICBsZWZ0OiAkZ3V0dGVyLXdpZHRoIC8gMjtcbiAgICB9XG5cbiAgICAucHJlZml4IH4gbGFiZWwsXG4gICAgLnByZWZpeCB+IC52YWxpZGF0ZSB+IGxhYmVsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzcmVtIC0gI3skZ3V0dGVyLXdpZHRofSk7XG4gICAgfVxuICB9XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICYgPiBsYWJlbCB7XG4gICAgY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBjdXJzb3I6IHRleHQ7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLW91dCwgY29sb3IgLjJzIGVhc2Utb3V0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAlIDEwMCU7XG4gICAgdGV4dC1hbGlnbjogaW5pdGlhbDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTJweCk7XG5cbiAgICAmOm5vdCgubGFiZWwtaWNvbikuYWN0aXZlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTRweCkgc2NhbGUoLjgpO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEF1dG9maWxsICsgZGF0ZSArIHRpbWUgaW5wdXRzXG4gICYgPiBpbnB1dFt0eXBlXTotd2Via2l0LWF1dG9maWxsOm5vdCguYnJvd3Nlci1kZWZhdWx0KTpub3QoW3R5cGU9XCJzZWFyY2hcIl0pICsgbGFiZWwsXG4gICYgPiBpbnB1dFt0eXBlPWRhdGVdOm5vdCguYnJvd3Nlci1kZWZhdWx0KSArIGxhYmVsLFxuICAmID4gaW5wdXRbdHlwZT10aW1lXTpub3QoLmJyb3dzZXItZGVmYXVsdCkgKyBsYWJlbCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNHB4KSBzY2FsZSguOCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB9XG5cbiAgLmhlbHBlci10ZXh0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogMThweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgY29sb3I6IHJnYmEoMCwwLDAsLjU0KTtcbiAgfVxuXG4gIC8vIFByZWZpeCBJY29uc1xuICAucHJlZml4IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6ICRpbnB1dC1oZWlnaHQ7XG4gICAgZm9udC1zaXplOiAkaW5wdXQtaWNvbi1zaXplO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIC4ycztcbiAgICB0b3A6ICgkaW5wdXQtaGVpZ2h0IC0gJGlucHV0LWljb24tc2l6ZSkgLyAyO1xuXG4gICAgJi5hY3RpdmUgeyBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yOyB9XG4gIH1cblxuICAucHJlZml4IH4gaW5wdXQsXG4gIC5wcmVmaXggfiB0ZXh0YXJlYSxcbiAgLnByZWZpeCB+IGxhYmVsLFxuICAucHJlZml4IH4gLnZhbGlkYXRlIH4gbGFiZWwsXG4gIC5wcmVmaXggfiAuaGVscGVyLXRleHQsXG4gIC5wcmVmaXggfiAuYXV0b2NvbXBsZXRlLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICAgIHdpZHRoOiA5MiU7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDNyZW0pO1xuICB9XG5cbiAgLnByZWZpeCB+IGxhYmVsIHsgbWFyZ2luLWxlZnQ6IDNyZW07IH1cblxuICBAbWVkaWEgI3skbWVkaXVtLWFuZC1kb3dufSB7XG4gICAgLnByZWZpeCB+IGlucHV0IHtcbiAgICAgIHdpZHRoOiA4NiU7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhICN7JHNtYWxsLWFuZC1kb3dufSB7XG4gICAgLnByZWZpeCB+IGlucHV0IHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG4gICAgfVxuICB9XG59XG5cblxuLyogU2VhcmNoIEZpZWxkICovXG5cbi5pbnB1dC1maWVsZCBpbnB1dFt0eXBlPXNlYXJjaF0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHRyYW5zaXRpb246IC4zcyBiYWNrZ3JvdW5kLWNvbG9yO1xuXG4gIC5uYXYtd3JhcHBlciAmIHtcbiAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgcGFkZGluZy1sZWZ0OiA0cmVtO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0cmVtKTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXM6bm90KC5icm93c2VyLWRlZmF1bHQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjb2xvcjogIzQ0NDtcblxuICAgICYgKyBsYWJlbCBpLFxuICAgICYgfiAubWRpLW5hdmlnYXRpb24tY2xvc2UsXG4gICAgJiB+IC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICBjb2xvcjogIzQ0NDtcbiAgICB9XG4gIH1cblxuICAmICsgLmxhYmVsLWljb24ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBsZWZ0OiAxcmVtO1xuICB9XG5cbiAgJiB+IC5tZGktbmF2aWdhdGlvbi1jbG9zZSxcbiAgJiB+IC5tYXRlcmlhbC1pY29ucyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMXJlbTtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogJGlucHV0LWljb24tc2l6ZTtcbiAgICB0cmFuc2l0aW9uOiAuM3MgY29sb3I7XG4gIH1cbn1cblxuXG4vKiBUZXh0YXJlYSAqL1xuXG4vLyBEZWZhdWx0IHRleHRhcmVhXG50ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICYubWF0ZXJpYWxpemUtdGV4dGFyZWEge1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuOyAvKiBwcmV2ZW50cyBzY3JvbGwgYmFyIGZsYXNoICovXG4gICAgcGFkZGluZzogLjhyZW0gMCAuOHJlbSAwOyAvKiBwcmV2ZW50cyB0ZXh0IGp1bXAgb24gRW50ZXIga2V5cHJlc3MgKi9cbiAgICByZXNpemU6IG5vbmU7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG59XG5cbi8vIEZvciB0ZXh0YXJlYSBhdXRvcmVzaXplXG4uaGlkZGVuZGl2IHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDsgLyogZnV0dXJlIHZlcnNpb24gb2YgZGVwcmVjYXRlZCAnd29yZC13cmFwJyAqL1xuICBwYWRkaW5nLXRvcDogMS4ycmVtOyAvKiBwcmV2ZW50cyB0ZXh0IGp1bXAgb24gRW50ZXIga2V5cHJlc3MgKi9cblxuICAvLyBSZWR1Y2VzIHJlcGFpbnRzXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAtMTtcbn1cblxuXG4vKiBBdXRvY29tcGxldGUgKi9cbi5hdXRvY29tcGxldGUtY29udGVudCB7XG4gIGxpIHtcbiAgICAuaGlnaGxpZ2h0IHsgY29sb3I6ICM0NDQ7IH1cblxuICAgIGltZyB7XG4gICAgICBoZWlnaHQ6ICRkcm9wZG93bi1pdGVtLWhlaWdodCAtIDEwO1xuICAgICAgd2lkdGg6ICRkcm9wZG93bi1pdGVtLWhlaWdodCAtIDEwO1xuICAgICAgbWFyZ2luOiA1cHggMTVweDtcbiAgICB9XG4gIH1cbn1cblxuLyogQ2hhcmFjdGVyIENvdW50ZXIgKi9cbi5jaGFyYWN0ZXItY291bnRlciB7XG4gIG1pbi1oZWlnaHQ6IDE4cHg7XG59XG4iLCIvKiBSYWRpbyBCdXR0b25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyBSZW1vdmUgZGVmYXVsdCBSYWRpbyBCdXR0b25zXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCksXG5bdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBzcGFuLFxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3BhbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAyNXB4O1xuICBsaW5lLWhlaWdodDogMjVweDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB0cmFuc2l0aW9uOiAuMjhzIGVhc2U7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdICsgc3BhbjpiZWZvcmUsXG5bdHlwZT1cInJhZGlvXCJdICsgc3BhbjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgbWFyZ2luOiA0cHg7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIHotaW5kZXg6IDA7XG4gIHRyYW5zaXRpb246IC4yOHMgZWFzZTtcbn1cblxuLyogVW5jaGVja2VkIHN0eWxlcyAqL1xuW3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpICsgc3BhbjpiZWZvcmUsXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBzcGFuOmFmdGVyLFxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3BhbjpiZWZvcmUsXG5bdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBzcGFuOmFmdGVyLFxuW3R5cGU9XCJyYWRpb1wiXS53aXRoLWdhcDpjaGVja2VkICsgc3BhbjpiZWZvcmUsXG5bdHlwZT1cInJhZGlvXCJdLndpdGgtZ2FwOmNoZWNrZWQgKyBzcGFuOmFmdGVyIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBzcGFuOmJlZm9yZSxcblt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIHNwYW46YWZ0ZXIge1xuICBib3JkZXI6IDJweCBzb2xpZCAkcmFkaW8tZW1wdHktY29sb3I7XG59XG5cblt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIHNwYW46YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xufVxuXG4vKiBDaGVja2VkIHN0eWxlcyAqL1xuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3BhbjpiZWZvcmUge1xuICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3BhbjphZnRlcixcblt0eXBlPVwicmFkaW9cIl0ud2l0aC1nYXA6Y2hlY2tlZCArIHNwYW46YmVmb3JlLFxuW3R5cGU9XCJyYWRpb1wiXS53aXRoLWdhcDpjaGVja2VkICsgc3BhbjphZnRlciB7XG4gIGJvcmRlcjogJHJhZGlvLWJvcmRlcjtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3BhbjphZnRlcixcblt0eXBlPVwicmFkaW9cIl0ud2l0aC1nYXA6Y2hlY2tlZCArIHNwYW46YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmFkaW8tZmlsbC1jb2xvcjtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3BhbjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XG59XG5cbi8qIFJhZGlvIFdpdGggZ2FwICovXG5bdHlwZT1cInJhZGlvXCJdLndpdGgtZ2FwOmNoZWNrZWQgKyBzcGFuOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSguNSk7XG59XG5cbi8qIEZvY3VzZWQgc3R5bGVzICovXG5bdHlwZT1cInJhZGlvXCJdLnRhYmJlZDpmb2N1cyArIHNwYW46YmVmb3JlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMTBweCByZ2JhKDAsMCwwLC4xKTtcbn1cblxuLyogRGlzYWJsZWQgUmFkaW8gV2l0aCBnYXAgKi9cblt0eXBlPVwicmFkaW9cIl0ud2l0aC1nYXA6ZGlzYWJsZWQ6Y2hlY2tlZCArIHNwYW46YmVmb3JlIHtcbiAgYm9yZGVyOiAycHggc29saWQgJGlucHV0LWRpc2FibGVkLWNvbG9yO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdLndpdGgtZ2FwOmRpc2FibGVkOmNoZWNrZWQgKyBzcGFuOmFmdGVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG59XG5cbi8qIERpc2FibGVkIHN0eWxlICovXG5bdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkOm5vdCg6Y2hlY2tlZCkgKyBzcGFuOmJlZm9yZSxcblt0eXBlPVwicmFkaW9cIl06ZGlzYWJsZWQ6Y2hlY2tlZCArIHNwYW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkICsgc3BhbiB7XG4gIGNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG59XG5cblt0eXBlPVwicmFkaW9cIl06ZGlzYWJsZWQ6bm90KDpjaGVja2VkKSArIHNwYW46YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG59XG5cblt0eXBlPVwicmFkaW9cIl06ZGlzYWJsZWQ6Y2hlY2tlZCArIHNwYW46YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLXNvbGlkLWNvbG9yO1xufVxuIiwiLyogQ2hlY2tib3hlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogUmVtb3ZlIGRlZmF1bHQgY2hlY2tib3ggKi9cblt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSxcblt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi8vIENoZWNrYm94IFN0eWxlc1xuW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIC8vIFRleHQgTGFiZWwgU3R5bGVcbiAgKyBzcGFuOm5vdCgubGV2ZXIpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC8qIGNoZWNrYm94IGFzcGVjdCAqL1xuICArIHNwYW46bm90KC5sZXZlcik6YmVmb3JlLFxuICAmOm5vdCguZmlsbGVkLWluKSArIHNwYW46bm90KC5sZXZlcik6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgei1pbmRleDogMDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkcmFkaW8tZW1wdHktY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xuICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICB0cmFuc2l0aW9uOiAuMnM7XG4gIH1cblxuICAmOm5vdCguZmlsbGVkLWluKSArIHNwYW46bm90KC5sZXZlcik6YWZ0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG5cbiAgJjpub3QoOmNoZWNrZWQpOmRpc2FibGVkICsgc3Bhbjpub3QoLmxldmVyKTpiZWZvcmUge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gIH1cblxuICAvLyBGb2N1c2VkIHN0eWxlc1xuICAmLnRhYmJlZDpmb2N1cyArIHNwYW46bm90KC5sZXZlcik6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxMHB4IHJnYmEoMCwwLDAsLjEpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjEpO1xuICB9XG59XG5cblt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB7XG4gICsgc3Bhbjpub3QoLmxldmVyKTpiZWZvcmUge1xuICAgIHRvcDogLTRweDtcbiAgICBsZWZ0OiAtNXB4O1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6ICRyYWRpby1ib3JkZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHJhZGlvLWJvcmRlcjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0MGRlZyk7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQgKyBzcGFuOmJlZm9yZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gIH1cbn1cblxuLyogSW5kZXRlcm1pbmF0ZSBjaGVja2JveCAqL1xuW3R5cGU9XCJjaGVja2JveFwiXTppbmRldGVybWluYXRlIHtcbiAgKyBzcGFuOm5vdCgubGV2ZXIpOmJlZm9yZSB7XG4gICAgdG9wOiAtMTFweDtcbiAgICBsZWZ0OiAtMTJweDtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDIycHg7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6ICRyYWRpby1ib3JkZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGluZGV0ZXJtaW5hdGVcbiAgJjpkaXNhYmxlZCArIHNwYW46bm90KC5sZXZlcik6YmVmb3JlIHtcbiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8gRmlsbGVkIGluIFN0eWxlXG5bdHlwZT1cImNoZWNrYm94XCJdLmZpbGxlZC1pbiB7XG4gIC8vIEdlbmVyYWxcbiAgKyBzcGFuOm5vdCgubGV2ZXIpOmFmdGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gIH1cblxuICArIHNwYW46bm90KC5sZXZlcik6YmVmb3JlLFxuICArIHNwYW46bm90KC5sZXZlcik6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8qIC4xcyBkZWxheSBpcyBmb3IgY2hlY2sgYW5pbWF0aW9uICovXG4gICAgdHJhbnNpdGlvbjogYm9yZGVyIC4yNXMsIGJhY2tncm91bmQtY29sb3IgLjI1cywgd2lkdGggLjIwcyAuMXMsIGhlaWdodCAuMjBzIC4xcywgdG9wIC4yMHMgLjFzLCBsZWZ0IC4yMHMgLjFzO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICAvLyBVbmNoZWNrZWQgc3R5bGVcbiAgJjpub3QoOmNoZWNrZWQpICsgc3Bhbjpub3QoLmxldmVyKTpiZWZvcmUge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBsZWZ0OiA2cHg7XG4gICAgdG9wOiAxMHB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigzN2RlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuICB9XG5cbiAgJjpub3QoOmNoZWNrZWQpICsgc3Bhbjpub3QoLmxldmVyKTphZnRlciB7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRyYWRpby1lbXB0eS1jb2xvcjtcbiAgICB0b3A6IDBweDtcbiAgICB6LWluZGV4OiAwO1xuICB9XG5cbiAgLy8gQ2hlY2tlZCBzdHlsZVxuICAmOmNoZWNrZWQge1xuICAgICsgc3Bhbjpub3QoLmxldmVyKTpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMXB4O1xuICAgICAgd2lkdGg6IDhweDtcbiAgICAgIGhlaWdodDogMTNweDtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAkaW5wdXQtYmFja2dyb3VuZDtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkaW5wdXQtYmFja2dyb3VuZDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlWigzN2RlZyk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gICAgfVxuXG4gICAgKyBzcGFuOm5vdCgubGV2ZXIpOmFmdGVyIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICB6LWluZGV4OiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZvY3VzZWQgc3R5bGVzXG4gICYudGFiYmVkOmZvY3VzICsgc3Bhbjpub3QoLmxldmVyKTphZnRlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJvcmRlci1jb2xvcjogJHJhZGlvLWVtcHR5LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjEpO1xuICB9XG5cbiAgJi50YWJiZWQ6Y2hlY2tlZDpmb2N1cyArIHNwYW46bm90KC5sZXZlcik6YWZ0ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0eWxlXG4gICY6ZGlzYWJsZWQ6bm90KDpjaGVja2VkKSArIHNwYW46bm90KC5sZXZlcik6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6ZGlzYWJsZWQ6bm90KDpjaGVja2VkKSArIHNwYW46bm90KC5sZXZlcik6YWZ0ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLXNvbGlkLWNvbG9yO1xuICB9XG5cbiAgJjpkaXNhYmxlZDpjaGVja2VkICsgc3Bhbjpub3QoLmxldmVyKTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpkaXNhYmxlZDpjaGVja2VkICsgc3Bhbjpub3QoLmxldmVyKTphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLXNvbGlkLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLXNvbGlkLWNvbG9yO1xuICB9XG59XG4iLCIvKiBTd2l0Y2hcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5zd2l0Y2gsXG4uc3dpdGNoICoge1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnN3aXRjaCBsYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnN3aXRjaCBsYWJlbCBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgJjpjaGVja2VkICsgLmxldmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3dpdGNoLWNoZWNrZWQtbGV2ZXItYmc7XG5cbiAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICBsZWZ0OiAxOHB4O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN3aXRjaC1iZy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLnN3aXRjaCBsYWJlbCAubGV2ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMTRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHN3aXRjaC11bmNoZWNrZWQtbGV2ZXItYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRzd2l0Y2gtcmFkaXVzO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMTZweDtcblxuICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IC0zcHg7XG4gICAgdHJhbnNpdGlvbjogbGVmdCAwLjNzIGVhc2UsIGJhY2tncm91bmQgLjNzIGVhc2UsIGJveC1zaGFkb3cgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gLjFzIGVhc2U7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRpemUoJHN3aXRjaC1iZy1jb2xvciwgLjg1KTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzd2l0Y2gtdW5jaGVja2VkLWJnO1xuICAgIGJveC1zaGFkb3c6IDBweCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMnB4IDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDFweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gIH1cbn1cblxuLy8gU3dpdGNoIGFjdGl2ZSBzdHlsZVxuaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZDpub3QoOmRpc2FibGVkKSB+IC5sZXZlcjphY3RpdmU6OmJlZm9yZSxcbmlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQ6bm90KDpkaXNhYmxlZCkudGFiYmVkOmZvY3VzIH4gLmxldmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDIuNCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50aXplKCRzd2l0Y2gtYmctY29sb3IsIC44NSk7XG59XG5cbmlucHV0W3R5cGU9Y2hlY2tib3hdOm5vdCg6ZGlzYWJsZWQpIH4gLmxldmVyOmFjdGl2ZTpiZWZvcmUsXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmRpc2FibGVkKS50YWJiZWQ6Zm9jdXMgfiAubGV2ZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMi40KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuMDgpO1xufVxuXG4vLyBEaXNhYmxlZCBTdHlsZXNcbi5zd2l0Y2ggaW5wdXRbdHlwZT1jaGVja2JveF1bZGlzYWJsZWRdICsgLmxldmVyIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4xMik7XG59XG5cbi5zd2l0Y2ggbGFiZWwgaW5wdXRbdHlwZT1jaGVja2JveF1bZGlzYWJsZWRdICsgLmxldmVyOmFmdGVyLFxuLnN3aXRjaCBsYWJlbCBpbnB1dFt0eXBlPWNoZWNrYm94XVtkaXNhYmxlZF06Y2hlY2tlZCArIC5sZXZlcjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1zb2xpZC1jb2xvcjtcbn1cbiIsIi8qIFNlbGVjdCBGaWVsZFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuc2VsZWN0IHsgZGlzcGxheTogbm9uZTsgfVxuc2VsZWN0LmJyb3dzZXItZGVmYXVsdCB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbnNlbGVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRzZWxlY3QtcGFkZGluZztcbiAgYm9yZGVyOiAkc2VsZWN0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbn1cblxuLnNlbGVjdC1sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnNlbGVjdC13cmFwcGVyIHtcbiAgJi52YWxpZCAuaGVscGVyLXRleHRbZGF0YS1zdWNjZXNzXSxcbiAgJi5pbnZhbGlkIH4gLmhlbHBlci10ZXh0W2RhdGEtZXJyb3JdIHtcbiAgICBAZXh0ZW5kICVoaWRkZW4tdGV4dDtcbiAgfVxuXG4gICYudmFsaWQge1xuICAgICYgPiBpbnB1dC5zZWxlY3QtZHJvcGRvd24ge1xuICAgICAgQGV4dGVuZCAldmFsaWQtaW5wdXQtc3R5bGU7XG4gICAgfVxuXG4gICAgJiB+IC5oZWxwZXItdGV4dDphZnRlciB7XG4gICAgICBAZXh0ZW5kICVjdXN0b20tc3VjY2Vzcy1tZXNzYWdlO1xuICAgIH1cbiAgfVxuXG4gICYuaW52YWxpZCB7XG4gICAgJiA+IGlucHV0LnNlbGVjdC1kcm9wZG93bixcbiAgICAmID4gaW5wdXQuc2VsZWN0LWRyb3Bkb3duOmZvY3VzIHtcbiAgICAgIEBleHRlbmQgJWludmFsaWQtaW5wdXQtc3R5bGU7XG4gICAgfVxuXG4gICAgJiB+IC5oZWxwZXItdGV4dDphZnRlciB7XG4gICAgICBAZXh0ZW5kICVjdXN0b20tZXJyb3ItbWVzc2FnZTtcbiAgICB9XG4gIH1cblxuICAmLnZhbGlkICsgbGFiZWwsXG4gICYuaW52YWxpZCArIGxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gICYgKyBsYWJlbDphZnRlciB7XG4gICAgQGV4dGVuZCAlaW5wdXQtYWZ0ZXItc3R5bGU7XG4gIH1cblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgaW5wdXQuc2VsZWN0LWRyb3Bkb3duIHtcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgfVxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206ICRpbnB1dC1ib3JkZXI7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICAgIG1hcmdpbjogJGlucHV0LW1hcmdpbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHVzZXItc2VsZWN0Om5vbmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIC5jYXJldCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiBhdXRvIDA7XG4gICAgei1pbmRleDogMDtcbiAgICBmaWxsOiByZ2JhKDAsMCwwLC44Nyk7XG4gIH1cblxuICAmICsgbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0yNnB4O1xuICAgIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgfVxufVxuXG4vLyBEaXNhYmxlZCBzdHlsZXNcbnNlbGVjdDpkaXNhYmxlZCB7XG4gIGNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG59XG5cbi5zZWxlY3Qtd3JhcHBlci5kaXNhYmxlZCB7XG4gICsgbGFiZWwge1xuICAgIGNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gIH1cbiAgLmNhcmV0IHtcbiAgICBmaWxsOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gIH1cbn1cblxuLnNlbGVjdC13cmFwcGVyIGlucHV0LnNlbGVjdC1kcm9wZG93bjpkaXNhYmxlZCB7XG4gIGNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5zZWxlY3Qtd3JhcHBlciBpIHtcbiAgY29sb3I6ICRzZWxlY3QtZGlzYWJsZWQtY29sb3I7XG59XG5cbi5zZWxlY3QtZHJvcGRvd24gbGkuZGlzYWJsZWQsXG4uc2VsZWN0LWRyb3Bkb3duIGxpLmRpc2FibGVkID4gc3Bhbixcbi5zZWxlY3QtZHJvcGRvd24gbGkub3B0Z3JvdXAge1xuICBjb2xvcjogJHNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmJvZHkua2V5Ym9hcmQtZm9jdXNlZCB7XG4gIC5zZWxlY3QtZHJvcGRvd24uZHJvcGRvd24tY29udGVudCBsaTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1vcHRpb24tZm9jdXM7XG4gIH1cbn1cblxuLnNlbGVjdC1kcm9wZG93bi5kcm9wZG93bi1jb250ZW50IHtcbiAgbGkge1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1vcHRpb24taG92ZXI7XG4gICAgfVxuXG4gICAgJi5zZWxlY3RlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LW9wdGlvbi1zZWxlY3RlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8gUHJlZml4IEljb25zXG4ucHJlZml4IH4gLnNlbGVjdC13cmFwcGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDNyZW07XG4gIHdpZHRoOiA5MiU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzcmVtKTtcbn1cblxuLnByZWZpeCB+IGxhYmVsIHsgbWFyZ2luLWxlZnQ6IDNyZW07IH1cblxuLy8gSWNvbnNcbi5zZWxlY3QtZHJvcGRvd24gbGkge1xuICBpbWcge1xuICAgIGhlaWdodDogJGRyb3Bkb3duLWl0ZW0taGVpZ2h0IC0gMTA7XG4gICAgd2lkdGg6ICRkcm9wZG93bi1pdGVtLWhlaWdodCAtIDEwO1xuICAgIG1hcmdpbjogNXB4IDE1cHg7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi8vIE9wdGdyb3VwIHN0eWxlc1xuLnNlbGVjdC1kcm9wZG93biBsaS5vcHRncm91cCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZHJvcGRvd24taG92ZXItYmctY29sb3I7XG5cbiAgJi5zZWxlY3RlZCA+IHNwYW4ge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIC43KTtcbiAgfVxuXG4gICYgPiBzcGFuIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAuNCk7XG4gIH1cblxuICAmIH4gbGkub3B0Z3JvdXAtb3B0aW9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIH1cbn1cbiIsIi8qIEZpbGUgSW5wdXRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5maWxlLWZpZWxkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5maWxlLXBhdGgtd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIH1cblxuICBpbnB1dC5maWxlLXBhdGggeyB3aWR0aDogMTAwJTsgfVxuXG4gIC5idG4ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIGlucHV0W3R5cGU9ZmlsZV0ge1xuXG4gICAgLy8gTmVlZGVkIHRvIG92ZXJyaWRlIHdlYmtpdCBidXR0b25cbiAgICAmOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgfVxufVxuIiwiLyogUmFuZ2VcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5yYW5nZS1maWVsZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV0sXG5pbnB1dFt0eXBlPXJhbmdlXSArIC50aHVtYiB7XG4gIEBleHRlbmQgLm5vLXNlbGVjdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMTVweCAwO1xuICBwYWRkaW5nOiAwO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1yYW5nZV0gKyAudGh1bWIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTBweDtcbiAgbGVmdDogMDtcbiAgYm9yZGVyOiBub25lO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyYWRpby1maWxsLWNvbG9yO1xuICBtYXJnaW4tbGVmdDogN3B4O1xuXG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG5cbiAgLnZhbHVlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMzBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICRyYWRpby1maWxsLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlIDUwJSA1MCUgMDtcblxuICAgIC52YWx1ZSB7XG4gICAgICBjb2xvcjogJGlucHV0LWJhY2tncm91bmQ7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLy8gU2hhcmVkXG5AbWl4aW4gcmFuZ2UtdHJhY2sge1xuICBoZWlnaHQ6ICR0cmFjay1oZWlnaHQ7XG4gIGJhY2tncm91bmQ6ICNjMmMwYzI7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuQG1peGluIHJhbmdlLXRodW1iIHtcbiAgYm9yZGVyOiBub25lO1xuICBoZWlnaHQ6ICRyYW5nZS1oZWlnaHQ7XG4gIHdpZHRoOiAkcmFuZ2Utd2lkdGg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogJHJhZGlvLWZpbGwtY29sb3I7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjNzO1xufVxuXG4vLyBXZWJLaXRcbmlucHV0W3R5cGU9cmFuZ2VdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICBAaW5jbHVkZSByYW5nZS10cmFjaztcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV06Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgQGluY2x1ZGUgcmFuZ2UtdGh1bWI7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJhZGlvLWZpbGwtY29sb3I7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIG1hcmdpbjogLTVweCAwIDAgMDtcblxufVxuXG4ua2V5Ym9hcmQtZm9jdXNlZCBpbnB1dFt0eXBlPXJhbmdlXTpmb2N1czpub3QoLmFjdGl2ZSk6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMTBweCByZ2JhKCRyYWRpby1maWxsLWNvbG9yLCAuMjYpO1xufVxuXG4vLyBGaXJlRm94XG5pbnB1dFt0eXBlPXJhbmdlXSB7XG4gIC8qIGZpeCBmb3IgRkYgdW5hYmxlIHRvIGFwcGx5IGZvY3VzIHN0eWxlIGJ1ZyAgKi9cbiAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG5cbiAgLypyZXF1aXJlZCBmb3IgcHJvcGVyIHRyYWNrIHNpemluZyBpbiBGRiovXG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgQGluY2x1ZGUgcmFuZ2UtdHJhY2s7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10aHVtYiB7XG4gIEBpbmNsdWRlIHJhbmdlLXRodW1iO1xuICBtYXJnaW4tdG9wOiAtNXB4O1xufVxuXG4vLyBoaWRlIHRoZSBvdXRsaW5lIGJlaGluZCB0aGUgYm9yZGVyXG5pbnB1dFt0eXBlPXJhbmdlXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBzb2xpZCAjZmZmO1xuICBvdXRsaW5lLW9mZnNldDogLTFweDtcbn1cblxuLmtleWJvYXJkLWZvY3VzZWQgaW5wdXRbdHlwZT1yYW5nZV06Zm9jdXM6bm90KC5hY3RpdmUpOjotbW96LXJhbmdlLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMTBweCByZ2JhKCRyYWRpby1maWxsLWNvbG9yLCAuMjYpO1xufVxuXG4vLyBJRSAxMCtcbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdHJhY2sge1xuICBoZWlnaHQ6ICR0cmFjay1oZWlnaHQ7XG5cbiAgLy8gcmVtb3ZlIGJnIGNvbG91ciBmcm9tIHRoZSB0cmFjaywgd2UnbGwgdXNlIG1zLWZpbGwtbG93ZXIgYW5kIG1zLWZpbGwtdXBwZXIgaW5zdGVhZFxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAvLyBsZWF2ZSByb29tIGZvciB0aGUgbGFyZ2VyIHRodW1iIHRvIG92ZXJmbG93IHdpdGggYSB0cmFuc3BhcmVudCBib3JkZXIgKi9cbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiA2cHggMDtcblxuICAvKnJlbW92ZSBkZWZhdWx0IHRpY2sgbWFya3MqL1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtZmlsbC1sb3dlciB7XG4gIGJhY2tncm91bmQ6ICM3Nzc7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtZmlsbC11cHBlciB7XG4gIGJhY2tncm91bmQ6ICNkZGQ7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdGh1bWIge1xuICBAaW5jbHVkZSByYW5nZS10aHVtYjtcbn1cblxuLmtleWJvYXJkLWZvY3VzZWQgaW5wdXRbdHlwZT1yYW5nZV06Zm9jdXM6bm90KC5hY3RpdmUpOjotbXMtdGh1bWIge1xuICBib3gtc2hhZG93OiAwIDAgMCAxMHB4IHJnYmEoJHJhZGlvLWZpbGwtY29sb3IsIC4yNik7XG59XG4iLCIvKioqKioqKioqKioqKioqXG4gICAgTmF2IExpc3RcbioqKioqKioqKioqKioqKi9cbi50YWJsZS1vZi1jb250ZW50cyB7XG4gICYuZml4ZWQge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cblxuICBsaSB7XG4gICAgcGFkZGluZzogMnB4IDA7XG4gIH1cbiAgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgY29sb3I6ICM3NTc1NzU7XG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAgIGhlaWdodDogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC40O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IGxpZ2h0ZW4oIzc1NzU3NSwgMjAlKTtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgfVxuICAgICYuYWN0aXZlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE0cHg7XG4gICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLnNpZGVuYXYge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAkc2lkZW5hdi13aWR0aDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBtYXJnaW46IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIGhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgKyA2MHB4KTtcbiAgaGVpZ2h0OiAtbW96LWNhbGMoMTAwJSk7IC8vVGVtcG9yYXJ5IEZpcmVmb3ggRml4XG4gIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZW5hdi1iZy1jb2xvcjtcbiAgei1pbmRleDogOTk5O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTA1JSk7XG5cbiAgQGV4dGVuZCAuei1kZXB0aC0xO1xuXG4gIC8vIFJpZ2h0IEFsaWduXG4gICYucmlnaHQtYWxpZ25lZCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwNSUpO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB9XG5cbiAgLmNvbGxhcHNpYmxlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuXG4gIGxpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogJHNpZGVuYXYtbGluZS1oZWlnaHQ7XG5cbiAgICAmLmFjdGl2ZSB7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjA1KTsgfVxuICB9XG5cbiAgbGkgPiBhIHtcbiAgICBjb2xvcjogJHNpZGVuYXYtZm9udC1jb2xvcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRzaWRlbmF2LWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGhlaWdodDogJHNpZGVuYXYtaXRlbS1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRzaWRlbmF2LWxpbmUtaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDAgKCRzaWRlbmF2LXBhZGRpbmcgKiAyKTtcblxuICAgICY6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4wNSk7fVxuXG4gICAgJi5idG4sICYuYnRuLWxhcmdlLCAmLmJ0bi1mbGF0LCAmLmJ0bi1mbG9hdGluZyB7XG4gICAgICBtYXJnaW46IDEwcHggMTVweDtcbiAgICB9XG5cbiAgICAmLmJ0bixcbiAgICAmLmJ0bi1sYXJnZSxcbiAgICAmLmJ0bi1mbG9hdGluZyB7IGNvbG9yOiAkYnV0dG9uLXJhaXNlZC1jb2xvcjsgfVxuICAgICYuYnRuLWZsYXQgeyBjb2xvcjogJGJ1dHRvbi1mbGF0LWNvbG9yOyB9XG5cbiAgICAmLmJ0bjpob3ZlcixcbiAgICAmLmJ0bi1sYXJnZTpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGJ1dHRvbi1yYWlzZWQtYmFja2dyb3VuZCwgNSUpOyB9XG4gICAgJi5idG4tZmxvYXRpbmc6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kOyB9XG5cbiAgICAmID4gaSxcbiAgICAmID4gW2NsYXNzXj1cIm1kaS1cIl0sIGxpID4gYSA+IFtjbGFzcyo9XCJtZGktXCJdLFxuICAgICYgPiBpLm1hdGVyaWFsLWljb25zIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgaGVpZ2h0OiAkc2lkZW5hdi1pdGVtLWhlaWdodDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkc2lkZW5hdi1saW5lLWhlaWdodDtcbiAgICAgIG1hcmdpbjogMCAoJHNpZGVuYXYtcGFkZGluZyAqIDIpIDAgMDtcbiAgICAgIHdpZHRoOiAkc2lkZW5hdi1pdGVtLWhlaWdodCAvIDI7XG4gICAgICBjb2xvcjogcmdiYSgwLDAsMCwuNTQpO1xuICAgIH1cbiAgfVxuXG5cbiAgLmRpdmlkZXIge1xuICAgIG1hcmdpbjogKCRzaWRlbmF2LXBhZGRpbmcgLyAyKSAwIDAgMDtcbiAgfVxuXG4gIC5zdWJoZWFkZXIge1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgY3Vyc29yOiBpbml0aWFsO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbG9yOiByZ2JhKDAsMCwwLC41NCk7XG4gICAgZm9udC1zaXplOiAkc2lkZW5hdi1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogJHNpZGVuYXYtbGluZS1oZWlnaHQ7XG4gIH1cblxuICAudXNlci12aWV3IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogKCRzaWRlbmF2LXBhZGRpbmcgKiAyKSAoJHNpZGVuYXYtcGFkZGluZyAqIDIpIDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNpZGVuYXYtcGFkZGluZyAvIDI7XG5cbiAgICAmID4gYSB7XG4gICAgICAmOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmJhY2tncm91bmQge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgIC5jaXJjbGUsIC5uYW1lLCAuZW1haWwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLmNpcmNsZSB7XG4gICAgICBoZWlnaHQ6IDY0cHg7XG4gICAgICB3aWR0aDogNjRweDtcbiAgICB9XG5cbiAgICAubmFtZSxcbiAgICAuZW1haWwge1xuICAgICAgZm9udC1zaXplOiAkc2lkZW5hdi1mb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogJHNpZGVuYXYtbGluZS1oZWlnaHQgLyAyO1xuICAgIH1cblxuICAgIC5uYW1lIHtcbiAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cblxuICAgIC5lbWFpbCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVG91Y2ggaW50ZXJhY3Rpb25cbi5kcmFnLXRhcmdldCB7XG4gIC8vIFJpZ2h0IEFsaWduXG4gICYucmlnaHQtYWxpZ25lZCB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cblxuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgei1pbmRleDogOTk4O1xufVxuXG5cbi8vIEZpeGVkIFNpZGVuYXYgc2hvd25cbi5zaWRlbmF2LnNpZGVuYXYtZml4ZWQge1xuICAvLyBSaWdodCBBbGlnblxuICAmLnJpZ2h0LWFsaWduZWQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLy8gRml4ZWQgU2lkZW5hdiBoaWRlIG9uIHNtYWxsZXJcbkBtZWRpYSAjeyRtZWRpdW0tYW5kLWRvd259IHtcbiAgLnNpZGVuYXYge1xuICAgICYuc2lkZW5hdi1maXhlZCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwNSUpO1xuXG4gICAgICAmLnJpZ2h0LWFsaWduZWQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTA1JSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDAgJHNpZGVuYXYtcGFkZGluZztcbiAgICB9XG5cbiAgICAudXNlci12aWV3IHtcbiAgICAgIHBhZGRpbmc6ICRzaWRlbmF2LXBhZGRpbmcgJHNpZGVuYXYtcGFkZGluZyAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi5zaWRlbmF2IC5jb2xsYXBzaWJsZS1ib2R5ID4gdWw6bm90KC5jb2xsYXBzaWJsZSkgPiBsaS5hY3RpdmUsXG4uc2lkZW5hdi5zaWRlbmF2LWZpeGVkIC5jb2xsYXBzaWJsZS1ib2R5ID4gdWw6bm90KC5jb2xsYXBzaWJsZSkgPiBsaS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgYSB7XG4gICAgY29sb3I6ICRzaWRlbmF2LWJnLWNvbG9yO1xuICB9XG59XG4uc2lkZW5hdiAuY29sbGFwc2libGUtYm9keSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cblxuLnNpZGVuYXYtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgb3BhY2l0eTogMDtcbiAgaGVpZ2h0OiAxMjB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuNSk7XG4gIHotaW5kZXg6IDk5NztcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qXG4gICAgQGxpY2Vuc2VcbiAgICBDb3B5cmlnaHQgKGMpIDIwMTQgVGhlIFBvbHltZXIgUHJvamVjdCBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICAgIFRoaXMgY29kZSBtYXkgb25seSBiZSB1c2VkIHVuZGVyIHRoZSBCU0Qgc3R5bGUgbGljZW5zZSBmb3VuZCBhdCBodHRwOi8vcG9seW1lci5naXRodWIuaW8vTElDRU5TRS50eHRcbiAgICBUaGUgY29tcGxldGUgc2V0IG9mIGF1dGhvcnMgbWF5IGJlIGZvdW5kIGF0IGh0dHA6Ly9wb2x5bWVyLmdpdGh1Yi5pby9BVVRIT1JTLnR4dFxuICAgIFRoZSBjb21wbGV0ZSBzZXQgb2YgY29udHJpYnV0b3JzIG1heSBiZSBmb3VuZCBhdCBodHRwOi8vcG9seW1lci5naXRodWIuaW8vQ09OVFJJQlVUT1JTLnR4dFxuICAgIENvZGUgZGlzdHJpYnV0ZWQgYnkgR29vZ2xlIGFzIHBhcnQgb2YgdGhlIHBvbHltZXIgcHJvamVjdCBpcyBhbHNvXG4gICAgc3ViamVjdCB0byBhbiBhZGRpdGlvbmFsIElQIHJpZ2h0cyBncmFudCBmb3VuZCBhdCBodHRwOi8vcG9seW1lci5naXRodWIuaW8vUEFURU5UUy50eHRcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTVFlMRVMgRk9SIFRIRSBTUElOTkVSICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qXG4gKiBDb25zdGFudHM6XG4gKiAgICAgIFNUUk9LRVdJRFRIID0gM3B4XG4gKiAgICAgIEFSQ1NJWkUgICAgID0gMjcwIGRlZ3JlZXMgKGFtb3VudCBvZiBjaXJjbGUgdGhlIGFyYyB0YWtlcyB1cClcbiAqICAgICAgQVJDVElNRSAgICAgPSAxMzMzbXMgKHRpbWUgaXQgdGFrZXMgdG8gZXhwYW5kIGFuZCBjb250cmFjdCBhcmMpXG4gKiAgICAgIEFSQ1NUQVJUUk9UID0gMjE2IGRlZ3JlZXMgKGhvdyBtdWNoIHRoZSBzdGFydCBsb2NhdGlvbiBvZiB0aGUgYXJjXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hvdWxkIHJvdGF0ZSBlYWNoIHRpbWUsIDIxNiBnaXZlcyB1cyBhXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNSBwb2ludGVkIHN0YXIgc2hhcGUgKGl0J3MgMzYwLzUgKiAzKS5cbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGb3IgYSA3IHBvaW50ZWQgc3Rhciwgd2UgbWlnaHQgZG9cbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzNjAvNyAqIDMgPSAxNTQuMjg2KVxuICogICAgICBDT05UQUlORVJXSURUSCA9IDI4cHhcbiAqICAgICAgU0hSSU5LX1RJTUUgPSA0MDBtc1xuICovXG5cblxuLnByZWxvYWRlci13cmFwcGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG5cbiAgJi5zbWFsbCB7XG4gICAgd2lkdGg6IDM2cHg7XG4gICAgaGVpZ2h0OiAzNnB4O1xuICB9XG5cbiAgJi5iaWcge1xuICAgIHdpZHRoOiA2NHB4O1xuICAgIGhlaWdodDogNjRweDtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICAvKiBkdXJhdGlvbjogMzYwICogQVJDVElNRSAvIChBUkNTVEFSVFJPVCArICgzNjAtQVJDU0laRSkpICovXG4gICAgLXdlYmtpdC1hbmltYXRpb246IGNvbnRhaW5lci1yb3RhdGUgMTU2OG1zIGxpbmVhciBpbmZpbml0ZTtcbiAgICBhbmltYXRpb246IGNvbnRhaW5lci1yb3RhdGUgMTU2OG1zIGxpbmVhciBpbmZpbml0ZTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgY29udGFpbmVyLXJvdGF0ZSB7XG4gIHRvIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIH1cbn1cblxuQGtleWZyYW1lcyBjb250YWluZXItcm90YXRlIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIH1cbn1cblxuLnNwaW5uZXItbGF5ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9wYWNpdHk6IDA7XG4gIGJvcmRlci1jb2xvcjogJHNwaW5uZXItZGVmYXVsdC1jb2xvcjtcbn1cblxuLnNwaW5uZXItYmx1ZSxcbi5zcGlubmVyLWJsdWUtb25seSB7XG4gIGJvcmRlci1jb2xvcjogIzQyODVmNDtcbn1cblxuLnNwaW5uZXItcmVkLFxuLnNwaW5uZXItcmVkLW9ubHkge1xuICBib3JkZXItY29sb3I6ICNkYjQ0Mzc7XG59XG5cbi5zcGlubmVyLXllbGxvdyxcbi5zcGlubmVyLXllbGxvdy1vbmx5IHtcbiAgYm9yZGVyLWNvbG9yOiAjZjRiNDAwO1xufVxuXG4uc3Bpbm5lci1ncmVlbixcbi5zcGlubmVyLWdyZWVuLW9ubHkge1xuICBib3JkZXItY29sb3I6ICMwZjlkNTg7XG59XG5cbi8qKlxuICogSU1QT1JUQU5UIE5PVEUgQUJPVVQgQ1NTIEFOSU1BVElPTiBQUk9QRVJUSUVTIChrZWFudWxlZSk6XG4gKlxuICogaU9TIFNhZmFyaSAodGVzdGVkIG9uIGlPUyA4LjEpIGRvZXMgbm90IGhhbmRsZSBhbmltYXRpb24tZGVsYXkgdmVyeSB3ZWxsIC0gaXQgZG9lc24ndFxuICogZ3VhcmFudGVlIHRoYXQgdGhlIGFuaW1hdGlvbiB3aWxsIHN0YXJ0IF9leGFjdGx5XyBhZnRlciB0aGF0IHZhbHVlLiBTbyB3ZSBhdm9pZCB1c2luZ1xuICogYW5pbWF0aW9uLWRlbGF5IGFuZCBpbnN0ZWFkIHNldCBjdXN0b20ga2V5ZnJhbWVzIGZvciBlYWNoIGNvbG9yIChhcyByZWR1bmRhbnQgYXMgaXRcbiAqIHNlZW1zKS5cbiAqXG4gKiBXZSB3cml0ZSBvdXQgZWFjaCBhbmltYXRpb24gaW4gZnVsbCAoaW5zdGVhZCBvZiBzZXBhcmF0aW5nIGFuaW1hdGlvbi1uYW1lLFxuICogYW5pbWF0aW9uLWR1cmF0aW9uLCBldGMuKSBiZWNhdXNlIHVuZGVyIHRoZSBwb2x5ZmlsbCwgU2FmYXJpIGRvZXMgbm90IHJlY29nbml6ZSB0aG9zZVxuICogc3BlY2lmaWMgcHJvcGVydGllcyBwcm9wZXJseSwgdHJlYXRzIHRoZW0gYXMgLXdlYmtpdC1hbmltYXRpb24sIGFuZCBvdmVycmlkZXMgdGhlXG4gKiBvdGhlciBhbmltYXRpb24gcnVsZXMuIFNlZSBodHRwczovL2dpdGh1Yi5jb20vUG9seW1lci9wbGF0Zm9ybS9pc3N1ZXMvNTMuXG4gKi9cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIuc3Bpbm5lci1ibHVlIHtcbiAgLyogZHVyYXRpb25zOiA0ICogQVJDVElNRSAqL1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmlsbC11bmZpbGwtcm90YXRlIDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aCwgYmx1ZS1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG4gIGFuaW1hdGlvbjogZmlsbC11bmZpbGwtcm90YXRlIDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aCwgYmx1ZS1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIuc3Bpbm5lci1yZWQge1xuICAvKiBkdXJhdGlvbnM6IDQgKiBBUkNUSU1FICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmaWxsLXVuZmlsbC1yb3RhdGUgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoLCByZWQtZmFkZS1pbi1vdXQgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoO1xuICBhbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGgsIHJlZC1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIuc3Bpbm5lci15ZWxsb3cge1xuICAvKiBkdXJhdGlvbnM6IDQgKiBBUkNUSU1FICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmaWxsLXVuZmlsbC1yb3RhdGUgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoLCB5ZWxsb3ctZmFkZS1pbi1vdXQgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoO1xuICBhbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGgsIHllbGxvdy1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIuc3Bpbm5lci1ncmVlbiB7XG4gIC8qIGR1cmF0aW9uczogNCAqIEFSQ1RJTUUgKi9cbiAgLXdlYmtpdC1hbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGgsIGdyZWVuLWZhZGUtaW4tb3V0IDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aDtcbiAgYW5pbWF0aW9uOiBmaWxsLXVuZmlsbC1yb3RhdGUgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoLCBncmVlbi1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIsXG4uYWN0aXZlIC5zcGlubmVyLWxheWVyLnNwaW5uZXItYmx1ZS1vbmx5LFxuLmFjdGl2ZSAuc3Bpbm5lci1sYXllci5zcGlubmVyLXJlZC1vbmx5LFxuLmFjdGl2ZSAuc3Bpbm5lci1sYXllci5zcGlubmVyLXllbGxvdy1vbmx5LFxuLmFjdGl2ZSAuc3Bpbm5lci1sYXllci5zcGlubmVyLWdyZWVuLW9ubHkge1xuICAvKiBkdXJhdGlvbnM6IDQgKiBBUkNUSU1FICovXG4gIG9wYWNpdHk6IDE7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmaWxsLXVuZmlsbC1yb3RhdGUgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoO1xuICBhbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmaWxsLXVuZmlsbC1yb3RhdGUge1xuICAxMi41JSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsgIH0gLyogMC41ICogQVJDU0laRSAqL1xuICAyNSUgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsgIH0gLyogMSAgICogQVJDU0laRSAqL1xuICAzNy41JSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDA1ZGVnKTsgIH0gLyogMS41ICogQVJDU0laRSAqL1xuICA1MCUgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNTQwZGVnKTsgIH0gLyogMiAgICogQVJDU0laRSAqL1xuICA2Mi41JSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNjc1ZGVnKTsgIH0gLyogMi41ICogQVJDU0laRSAqL1xuICA3NSUgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoODEwZGVnKTsgIH0gLyogMyAgICogQVJDU0laRSAqL1xuICA4Ny41JSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTQ1ZGVnKTsgIH0gLyogMy41ICogQVJDU0laRSAqL1xuICB0byAgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTA4MGRlZyk7IH0gLyogNCAgICogQVJDU0laRSAqL1xufVxuXG5Aa2V5ZnJhbWVzIGZpbGwtdW5maWxsLXJvdGF0ZSB7XG4gIDEyLjUlIHsgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsgIH0gLyogMC41ICogQVJDU0laRSAqL1xuICAyNSUgICB7IHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7ICB9IC8qIDEgICAqIEFSQ1NJWkUgKi9cbiAgMzcuNSUgeyB0cmFuc2Zvcm06IHJvdGF0ZSg0MDVkZWcpOyAgfSAvKiAxLjUgKiBBUkNTSVpFICovXG4gIDUwJSAgIHsgdHJhbnNmb3JtOiByb3RhdGUoNTQwZGVnKTsgIH0gLyogMiAgICogQVJDU0laRSAqL1xuICA2Mi41JSB7IHRyYW5zZm9ybTogcm90YXRlKDY3NWRlZyk7ICB9IC8qIDIuNSAqIEFSQ1NJWkUgKi9cbiAgNzUlICAgeyB0cmFuc2Zvcm06IHJvdGF0ZSg4MTBkZWcpOyAgfSAvKiAzICAgKiBBUkNTSVpFICovXG4gIDg3LjUlIHsgdHJhbnNmb3JtOiByb3RhdGUoOTQ1ZGVnKTsgIH0gLyogMy41ICogQVJDU0laRSAqL1xuICB0byAgICB7IHRyYW5zZm9ybTogcm90YXRlKDEwODBkZWcpOyB9IC8qIDQgICAqIEFSQ1NJWkUgKi9cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJsdWUtZmFkZS1pbi1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMTsgfVxuICAyNSUgeyBvcGFjaXR5OiAxOyB9XG4gIDI2JSB7IG9wYWNpdHk6IDA7IH1cbiAgODklIHsgb3BhY2l0eTogMDsgfVxuICA5MCUgeyBvcGFjaXR5OiAxOyB9XG4gIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG59XG5cbkBrZXlmcmFtZXMgYmx1ZS1mYWRlLWluLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAxOyB9XG4gIDI1JSB7IG9wYWNpdHk6IDE7IH1cbiAgMjYlIHsgb3BhY2l0eTogMDsgfVxuICA4OSUgeyBvcGFjaXR5OiAwOyB9XG4gIDkwJSB7IG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJlZC1mYWRlLWluLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAwOyB9XG4gIDE1JSB7IG9wYWNpdHk6IDA7IH1cbiAgMjUlIHsgb3BhY2l0eTogMTsgfVxuICA1MCUgeyBvcGFjaXR5OiAxOyB9XG4gIDUxJSB7IG9wYWNpdHk6IDA7IH1cbn1cblxuQGtleWZyYW1lcyByZWQtZmFkZS1pbi1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICAxNSUgeyBvcGFjaXR5OiAwOyB9XG4gIDI1JSB7IG9wYWNpdHk6IDE7IH1cbiAgNTAlIHsgb3BhY2l0eTogMTsgfVxuICA1MSUgeyBvcGFjaXR5OiAwOyB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB5ZWxsb3ctZmFkZS1pbi1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICA0MCUgeyBvcGFjaXR5OiAwOyB9XG4gIDUwJSB7IG9wYWNpdHk6IDE7IH1cbiAgNzUlIHsgb3BhY2l0eTogMTsgfVxuICA3NiUgeyBvcGFjaXR5OiAwOyB9XG59XG5cbkBrZXlmcmFtZXMgeWVsbG93LWZhZGUtaW4tb3V0IHtcbiAgZnJvbSB7IG9wYWNpdHk6IDA7IH1cbiAgNDAlIHsgb3BhY2l0eTogMDsgfVxuICA1MCUgeyBvcGFjaXR5OiAxOyB9XG4gIDc1JSB7IG9wYWNpdHk6IDE7IH1cbiAgNzYlIHsgb3BhY2l0eTogMDsgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZ3JlZW4tZmFkZS1pbi1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICA2NSUgeyBvcGFjaXR5OiAwOyB9XG4gIDc1JSB7IG9wYWNpdHk6IDE7IH1cbiAgOTAlIHsgb3BhY2l0eTogMTsgfVxuICAxMDAlIHsgb3BhY2l0eTogMDsgfVxufVxuXG5Aa2V5ZnJhbWVzIGdyZWVuLWZhZGUtaW4tb3V0IHtcbiAgZnJvbSB7IG9wYWNpdHk6IDA7IH1cbiAgNjUlIHsgb3BhY2l0eTogMDsgfVxuICA3NSUgeyBvcGFjaXR5OiAxOyB9XG4gIDkwJSB7IG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDA7IH1cbn1cblxuLyoqXG4gKiBQYXRjaCB0aGUgZ2FwIHRoYXQgYXBwZWFyIGJldHdlZW4gdGhlIHR3byBhZGphY2VudCBkaXYuY2lyY2xlLWNsaXBwZXIgd2hpbGUgdGhlXG4gKiBzcGlubmVyIGlzIHJvdGF0aW5nIChhcHBlYXJzIG9uIENocm9tZSAzOCwgU2FmYXJpIDcuMSwgYW5kIElFIDExKS5cbiAqL1xuLmdhcC1wYXRjaCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA0NSU7XG4gIHdpZHRoOiAxMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xufVxuXG4uZ2FwLXBhdGNoIC5jaXJjbGUge1xuICB3aWR0aDogMTAwMCU7XG4gIGxlZnQ6IC00NTAlO1xufVxuXG4uY2lyY2xlLWNsaXBwZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDUwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG5cbiAgLmNpcmNsZSB7XG4gICAgd2lkdGg6IDIwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci13aWR0aDogM3B4OyAvKiBTVFJPS0VXSURUSCAqL1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBub25lO1xuICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgfVxuXG4gICYubGVmdCAuY2lyY2xlIHtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDEyOWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTI5ZGVnKTtcbiAgfVxuICAmLnJpZ2h0IC5jaXJjbGUge1xuICAgIGxlZnQ6IC0xMDAlO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEyOWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTEyOWRlZyk7XG4gIH1cbn1cblxuXG5cbi5hY3RpdmUgLmNpcmNsZS1jbGlwcGVyLmxlZnQgLmNpcmNsZSB7XG4gIC8qIGR1cmF0aW9uOiBBUkNUSU1FICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBsZWZ0LXNwaW4gMTMzM21zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoO1xuICBhbmltYXRpb246IGxlZnQtc3BpbiAxMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLmNpcmNsZS1jbGlwcGVyLnJpZ2h0IC5jaXJjbGUge1xuICAvKiBkdXJhdGlvbjogQVJDVElNRSAqL1xuICAtd2Via2l0LWFuaW1hdGlvbjogcmlnaHQtc3BpbiAxMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG4gIGFuaW1hdGlvbjogcmlnaHQtc3BpbiAxMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBsZWZ0LXNwaW4ge1xuICBmcm9tIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMzBkZWcpOyB9XG4gIDUwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpOyB9XG4gIHRvIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMzBkZWcpOyB9XG59XG5cbkBrZXlmcmFtZXMgbGVmdC1zcGluIHtcbiAgZnJvbSB7IHRyYW5zZm9ybTogcm90YXRlKDEzMGRlZyk7IH1cbiAgNTAlIHsgdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpOyB9XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMTMwZGVnKTsgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcmlnaHQtc3BpbiB7XG4gIGZyb20geyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzBkZWcpOyB9XG4gIDUwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7IH1cbiAgdG8geyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzBkZWcpOyB9XG59XG5cbkBrZXlmcmFtZXMgcmlnaHQtc3BpbiB7XG4gIGZyb20geyB0cmFuc2Zvcm06IHJvdGF0ZSgtMTMwZGVnKTsgfVxuICA1MCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTsgfVxuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKC0xMzBkZWcpOyB9XG59XG5cbiNzcGlubmVyQ29udGFpbmVyLmNvb2xkb3duIHtcbiAgLyogZHVyYXRpb246IFNIUklOS19USU1FICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBjb250YWluZXItcm90YXRlIDE1NjhtcyBsaW5lYXIgaW5maW5pdGUsIGZhZGUtb3V0IDQwMG1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKTtcbiAgYW5pbWF0aW9uOiBjb250YWluZXItcm90YXRlIDE1NjhtcyBsaW5lYXIgaW5maW5pdGUsIGZhZGUtb3V0IDQwMG1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGUtb3V0IHtcbiAgZnJvbSB7IG9wYWNpdHk6IDE7IH1cbiAgdG8geyBvcGFjaXR5OiAwOyB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZS1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMTsgfVxuICB0byB7IG9wYWNpdHk6IDA7IH1cbn1cbiIsIi5zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNDAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIEZ1bGxzY3JlZW4gc2xpZGVyXG4gICYuZnVsbHNjcmVlbiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG5cbiAgICB1bC5zbGlkZXMge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIHVsLmluZGljYXRvcnMge1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGJvdHRvbTogMzBweDtcbiAgICB9XG4gIH1cblxuICAuc2xpZGVzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWJnLWNvbG9yO1xuICAgIG1hcmdpbjogMDtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuXG4gICAgbGkge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5jYXB0aW9uIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxNSU7XG4gICAgICAgIGxlZnQ6IDE1JTtcbiAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICBwIHsgY29sb3I6ICRzbGlkZXItYmctY29sb3ItbGlnaHQ7IH1cbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLmluZGljYXRvcnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgLmluZGljYXRvci1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGhlaWdodDogMTZweDtcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgbWFyZ2luOiAwIDEycHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWJnLWNvbG9yLWxpZ2h0O1xuXG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWluZGljYXRvci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufSIsIi5jYXJvdXNlbCB7XG4gICYuY2Fyb3VzZWwtc2xpZGVyIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIC5jYXJvdXNlbC1maXhlZC1pdGVtIHtcbiAgICAgICYud2l0aC1pbmRpY2F0b3JzIHtcbiAgICAgICAgYm90dG9tOiA2OHB4O1xuICAgICAgfVxuXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDIwcHg7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWluLWhlaWdodDogJGNhcm91c2VsLWhlaWdodDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1oZWlnaHQ7XG4gIHBlcnNwZWN0aXZlOiA1MDBweDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCUgNTAlO1xuXG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1pdGVtLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWl0ZW0taGVpZ2h0O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgICYgPiBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmluZGljYXRvcnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgLmluZGljYXRvci1pdGVtIHtcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIH1cblxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICB3aWR0aDogOHB4O1xuICAgICAgbWFyZ2luOiAyNHB4IDRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjUpO1xuXG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB9XG4gIH1cblxuICAvLyBNYXRlcmlhbGJveCBjb21wYXRpYmlsaXR5XG4gICYuc2Nyb2xsaW5nIC5jYXJvdXNlbC1pdGVtIC5tYXRlcmlhbGJveGVkLFxuICAuY2Fyb3VzZWwtaXRlbTpub3QoLmFjdGl2ZSkgLm1hdGVyaWFsYm94ZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG4iLCIudGFwLXRhcmdldC13cmFwcGVyIHtcbiAgd2lkdGg6IDgwMHB4O1xuICBoZWlnaHQ6IDgwMHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcyAuM3M7XG59XG5cbi50YXAtdGFyZ2V0LXdyYXBwZXIub3BlbiB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMHM7XG5cbiAgLnRhcC10YXJnZXQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogLjk1O1xuICAgIHRyYW5zaXRpb246XG4gICAgICB0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguNDIsMCwuNTgsMSksXG4gICAgICBvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQyLDAsLjU4LDEpO1xuICB9XG5cbiAgLnRhcC10YXJnZXQtd2F2ZTo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIC50YXAtdGFyZ2V0LXdhdmU6OmFmdGVyIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGFuaW1hdGlvbjogcHVsc2UtYW5pbWF0aW9uIDFzIGN1YmljLWJlemllcigwLjI0LCAwLCAwLjM4LCAxKSBpbmZpbml0ZTtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgb3BhY2l0eSAuM3MsXG4gICAgICB0cmFuc2Zvcm0gLjNzLFxuICAgICAgdmlzaWJpbGl0eSAwcyAxcztcbiAgfVxufVxuXG4udGFwLXRhcmdldCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICBib3gtc2hhZG93OiAwIDIwcHggMjBweCAwIHJnYmEoMCwwLDAsMC4xNCksIDAgMTBweCA1MHB4IDAgcmdiYSgwLDAsMCwwLjEyKSwgMCAzMHB4IDEwcHggLTIwcHggcmdiYSgwLDAsMCwwLjIpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2l0aW9uOlxuICAgIHRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC40MiwwLC41OCwxKSxcbiAgICBvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQyLDAsLjU4LDEpO1xufVxuXG4udGFwLXRhcmdldC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xufVxuXG4udGFwLXRhcmdldC13YXZlIHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgfVxuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcztcbiAgfVxuICAmOjphZnRlciB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246XG4gICAgICBvcGFjaXR5IC4zcyxcbiAgICAgIHRyYW5zZm9ybSAuM3MsXG4gICAgICB2aXNpYmlsaXR5IDBzO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHotaW5kZXg6IDEwMDAxO1xufVxuXG4udGFwLXRhcmdldC1vcmlnaW4ge1xuICAmOm5vdCguYnRuKSxcbiAgJjpub3QoLmJ0bik6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cblxuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuXG4gIHotaW5kZXg6IDEwMDAyO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICAudGFwLXRhcmdldCwgLnRhcC10YXJnZXQtd3JhcHBlciB7XG4gICAgd2lkdGg6IDYwMHB4O1xuICAgIGhlaWdodDogNjAwcHg7XG4gIH1cbn1cbiIsIi5wdWxzZSB7XG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MsIHRyYW5zZm9ybSAuM3M7XG4gICAgYW5pbWF0aW9uOiBwdWxzZS1hbmltYXRpb24gMXMgY3ViaWMtYmV6aWVyKDAuMjQsIDAsIDAuMzgsIDEpIGluZmluaXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQGtleWZyYW1lcyBwdWxzZS1hbmltYXRpb24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIH1cbn1cbiIsIi8qIE1vZGFsICovXG4uZGF0ZXBpY2tlci1tb2RhbCB7XG4gIG1heC13aWR0aDogMzI1cHg7XG4gIG1pbi13aWR0aDogMzAwcHg7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG59XG5cbi5kYXRlcGlja2VyLWNvbnRhaW5lci5tb2RhbC1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZzogMDtcbn1cblxuLmRhdGVwaWNrZXItY29udHJvbHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAyODBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG5cbiAgLnNlbGVjdHMtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgLnNlbGVjdC13cmFwcGVyIHtcbiAgICBpbnB1dCB7XG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIH1cbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLmNhcmV0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLnNlbGVjdC15ZWFyIGlucHV0IHtcbiAgICB3aWR0aDogNTBweDtcbiAgfVxuXG4gIC5zZWxlY3QtbW9udGggaW5wdXQge1xuICAgIHdpZHRoOiA3MHB4O1xuICB9XG59XG5cbi5tb250aC1wcmV2LCAubW9udGgtbmV4dCB7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG5cbi8qIERhdGUgRGlzcGxheSAqL1xuLmRhdGVwaWNrZXItZGF0ZS1kaXNwbGF5IHtcbiAgZmxleDogMSBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogMjBweCAyMnB4O1xuICBmb250LXdlaWdodDogNTAwO1xuXG4gIC55ZWFyLXRleHQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgIGNvbG9yOiAkZGF0ZXBpY2tlci15ZWFyO1xuICB9XG5cbiAgLmRhdGUtdGV4dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAyLjhyZW07XG4gICAgbGluZS1oZWlnaHQ6IDQ3cHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxufVxuXG5cbi8qIENhbGVuZGFyICovXG4uZGF0ZXBpY2tlci1jYWxlbmRhci1jb250YWluZXIge1xuICBmbGV4OiAyLjUgYXV0bztcbn1cblxuLmRhdGVwaWNrZXItdGFibGUge1xuICB3aWR0aDogMjgwcHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG5cbiAgdGhlYWQge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cblxuICB0aCB7XG4gICAgcGFkZGluZzogMTBweCA1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgdHIge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIGFiYnIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogJGRhdGVwaWNrZXItY2FsZW5kYXItaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgdGQge1xuICAgICYuaXMtdG9kYXkge1xuICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgfVxuXG4gICAgJi5pcy1zZWxlY3RlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgJi5pcy1vdXRzaWRlLWN1cnJlbnQtbW9udGgsXG4gICAgJi5pcy1kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGRhdGVwaWNrZXItZGlzYWJsZWQtZGF5LWNvbG9yO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLmRhdGVwaWNrZXItZGF5LWJ1dHRvbiB7XG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXRlcGlja2VyLWRheS1mb2N1cztcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgcGFkZGluZzogMCA1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cblxuLyogRm9vdGVyICovXG4uZGF0ZXBpY2tlci1mb290ZXIge1xuICB3aWR0aDogMjgwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5kYXRlcGlja2VyLWNhbmNlbCxcbi5kYXRlcGlja2VyLWNsZWFyLFxuLmRhdGVwaWNrZXItdG9kYXksXG4uZGF0ZXBpY2tlci1kb25lIHtcbiAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbn1cblxuLmRhdGVwaWNrZXItY2xlYXIge1xuICBjb2xvcjogJGVycm9yLWNvbG9yO1xufVxuXG5cbi8qIE1lZGlhIFF1ZXJpZXMgKi9cbkBtZWRpYSAjeyRtZWRpdW0tYW5kLXVwfSB7XG4gIC5kYXRlcGlja2VyLW1vZGFsIHtcbiAgICBtYXgtd2lkdGg6IDYyNXB4O1xuICB9XG5cbiAgLmRhdGVwaWNrZXItY29udGFpbmVyLm1vZGFsLWNvbnRlbnQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cblxuICAuZGF0ZXBpY2tlci1kYXRlLWRpc3BsYXkge1xuICAgIGZsZXg6IDAgMSAyNzBweDtcbiAgfVxuXG4gIC5kYXRlcGlja2VyLWNvbnRyb2xzLFxuICAuZGF0ZXBpY2tlci10YWJsZSxcbiAgLmRhdGVwaWNrZXItZm9vdGVyIHtcbiAgICB3aWR0aDogMzIwcHg7XG4gIH1cblxuICAuZGF0ZXBpY2tlci1kYXktYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogNDRweDtcbiAgfVxufVxuIiwiLyogVGltZXBpY2tlciBDb250YWluZXJzICovXG4udGltZXBpY2tlci1tb2RhbCB7XG4gIG1heC13aWR0aDogMzI1cHg7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG59XG5cbi50aW1lcGlja2VyLWNvbnRhaW5lci5tb2RhbC1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZzogMDtcbn1cblxuLnRleHQtcHJpbWFyeSB7XG5cdGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xufVxuXG5cbi8qIENsb2NrIERpZ2l0YWwgRGlzcGxheSAqL1xuLnRpbWVwaWNrZXItZGlnaXRhbC1kaXNwbGF5IHtcbiAgZmxleDogMSBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4udGltZXBpY2tlci10ZXh0LWNvbnRhaW5lciB7XG5cdGZvbnQtc2l6ZTogNHJlbTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0Y29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnRpbWVwaWNrZXItc3Bhbi1ob3Vycyxcbi50aW1lcGlja2VyLXNwYW4tbWludXRlcyxcbi50aW1lcGlja2VyLXNwYW4tYW0tcG0gZGl2IHtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuXG4udGltZXBpY2tlci1zcGFuLWhvdXJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAzcHg7XG59XG5cbi50aW1lcGlja2VyLXNwYW4tbWludXRlcyB7XG4gIG1hcmdpbi1sZWZ0OiAzcHg7XG59XG5cbi50aW1lcGlja2VyLWRpc3BsYXktYW0tcG0ge1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMXJlbTtcbiAgYm90dG9tOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG5cbi8qIEFuYWxvZyBDbG9jayBEaXNwbGF5ICovXG4udGltZXBpY2tlci1hbmFsb2ctZGlzcGxheSB7XG4gIGZsZXg6IDIuNSBhdXRvO1xufVxuXG4udGltZXBpY2tlci1wbGF0ZSB7XG5cdGJhY2tncm91bmQtY29sb3I6ICR0aW1lcGlja2VyLWNsb2NrLXBsYXRlLWJnO1xuXHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdHdpZHRoOiAyNzBweDtcblx0aGVpZ2h0OiAyNzBweDtcblx0b3ZlcmZsb3c6IHZpc2libGU7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiBhdXRvO1xuICBtYXJnaW4tdG9wOiAyNXB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cdHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4udGltZXBpY2tlci1jYW52YXMsXG4udGltZXBpY2tlci1kaWFsIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG59XG4udGltZXBpY2tlci1taW51dGVzIHtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4udGltZXBpY2tlci10aWNrIHtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRjb2xvcjogJHRpbWVwaWNrZXItY2xvY2stY29sb3I7XG5cdGxpbmUtaGVpZ2h0OiA0MHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHdpZHRoOiA0MHB4O1xuXHRoZWlnaHQ6IDQwcHg7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDE1cHg7XG59XG5cbi50aW1lcGlja2VyLXRpY2suYWN0aXZlLFxuLnRpbWVwaWNrZXItdGljazpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50aXplKCRzZWNvbmRhcnktY29sb3IsIC43NSk7XG59XG4udGltZXBpY2tlci1kaWFsIHtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDM1MG1zLCBvcGFjaXR5IDM1MG1zO1xufVxuLnRpbWVwaWNrZXItZGlhbC1vdXQge1xuICAmLnRpbWVwaWNrZXItaG91cnMge1xuXHQgIHRyYW5zZm9ybTogc2NhbGUoMS4xLCAxLjEpO1xuICB9XG5cbiAgJi50aW1lcGlja2VyLW1pbnV0ZXMge1xuXHQgIHRyYW5zZm9ybTogc2NhbGUoLjgsIC44KTtcbiAgfVxuXG5cdG9wYWNpdHk6IDA7XG59XG4udGltZXBpY2tlci1jYW52YXMge1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDE3NW1zO1xuXG4gIGxpbmUge1xuXHQgIHN0cm9rZTogJHNlY29uZGFyeS1jb2xvcjtcblx0ICBzdHJva2Utd2lkdGg6IDQ7XG5cdCAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICB9XG59XG4udGltZXBpY2tlci1jYW52YXMtb3V0IHtcblx0b3BhY2l0eTogMC4yNTtcbn1cbi50aW1lcGlja2VyLWNhbnZhcy1iZWFyaW5nIHtcblx0c3Ryb2tlOiBub25lO1xuXHRmaWxsOiAkc2Vjb25kYXJ5LWNvbG9yO1xufVxuLnRpbWVwaWNrZXItY2FudmFzLWJnIHtcblx0c3Ryb2tlOiBub25lO1xuXHRmaWxsOiAkc2Vjb25kYXJ5LWNvbG9yO1xufVxuXG5cbi8qIEZvb3RlciAqL1xuLnRpbWVwaWNrZXItZm9vdGVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDVweCAxcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi50aW1lcGlja2VyLWNsZWFyIHtcbiAgY29sb3I6ICRlcnJvci1jb2xvcjtcbn1cblxuLnRpbWVwaWNrZXItY2xvc2Uge1xuICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbn1cblxuLnRpbWVwaWNrZXItY2xlYXIsXG4udGltZXBpY2tlci1jbG9zZSB7XG4gIHBhZGRpbmc6IDAgMjBweDtcbn1cblxuLyogTWVkaWEgUXVlcmllcyAqL1xuQG1lZGlhICN7JG1lZGl1bS1hbmQtdXB9IHtcbiAgLnRpbWVwaWNrZXItbW9kYWwge1xuICAgIG1heC13aWR0aDogNjAwcHg7XG4gIH1cblxuICAudGltZXBpY2tlci1jb250YWluZXIubW9kYWwtY29udGVudCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIC50aW1lcGlja2VyLXRleHQtY29udGFpbmVyIHtcblx0XHR0b3A6IDMyJTtcblx0fVxuXG5cdC50aW1lcGlja2VyLWRpc3BsYXktYW0tcG0ge1xuXHQgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ICByaWdodDogYXV0bztcblx0ICBib3R0b206IGF1dG87XG5cdCAgdGV4dC1hbGlnbjogY2VudGVyO1xuXHQgIG1hcmdpbi10b3A6IDEuMnJlbTtcblx0fVxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/