/*
 * jQuery File Upload UI Plugin CSS
 * https://github.com/blueimp/jQuery-File-Upload
 *
 * Copyright 2010, Sebastian Tschan
 * https://blueimp.net
 *
 * Licensed under the MIT license:
 * https://opensource.org/licenses/MIT
 */
.fileupload-buttonbar .btn,
.fileupload-buttonbar .toggle {
  margin-bottom: 5px; }

.progress-animated .progress-bar,
.progress-animated .bar {
  background: url("../img/progressbar.gif") !important;
  filter: none; }

.fileupload-process {
  float: right;
  display: none; }

.fileupload-processing .fileupload-process,
.files .processing .preview {
  display: block;
  width: 32px;
  height: 32px;
  background: url("../img/loading.gif") center no-repeat;
  background-size: contain; }

.files audio,
.files video {
  max-width: 300px; }

@media (max-width: 767px) {
  .fileupload-buttonbar .toggle,
  .files .toggle,
  .files .btn span {
    display: none; }
  .files .name {
    width: 80px;
    word-wrap: break-word; }
  .files audio,
  .files video {
    max-width: 80px; }
  .files img,
  .files canvas {
    max-width: 100%; } }

/*
 * jQuery File Upload Plugin CSS
 * https://github.com/blueimp/jQuery-File-Upload
 *
 * Copyright 2013, Sebastian Tschan
 * https://blueimp.net
 *
 * Licensed under the MIT license:
 * https://opensource.org/licenses/MIT
 */
.fileinput-button {
  position: relative;
  overflow: hidden;
  display: inline-block; }

.fileinput-button input {
  position: absolute;
  top: 0;
  right: 0;
  margin: 0;
  opacity: 0;
  -ms-filter: 'alpha(opacity=0)';
  font-size: 200px !important;
  direction: ltr;
  cursor: pointer; }

/* Fixes for IE < 8 */
@media screen\9 {
  .fileinput-button input {
    filter: alpha(opacity=0);
    font-size: 100%;
    height: 100%; } }

/***
Spectrum Colorpicker v1.5.2
https://github.com/bgrins/spectrum
Author: Brian Grinstead
License: MIT
***/
.sp-container {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  *display: inline;
  *zoom: 1;
  /* https://github.com/bgrins/spectrum/issues/40 */
  z-index: 9999994;
  overflow: hidden; }

.sp-container.sp-flat {
  position: relative; }

/* Fix for * { box-sizing: border-box; } */
.sp-container,
.sp-container * {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box; }

/* http://ansciath.tumblr.com/post/7347495869/css-aspect-ratio */
.sp-top {
  position: relative;
  width: 100%;
  display: inline-block; }

.sp-top-inner {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0; }

.sp-color {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 20%; }

.sp-hue {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 84%;
  height: 100%; }

.sp-clear-enabled .sp-hue {
  top: 33px;
  height: 77.5%; }

.sp-fill {
  padding-top: 80%; }

.sp-sat, .sp-val {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.sp-alpha-enabled .sp-top {
  margin-bottom: 18px; }

.sp-alpha-enabled .sp-alpha {
  display: block; }

.sp-alpha-handle {
  position: absolute;
  top: -4px;
  bottom: -4px;
  width: 6px;
  left: 50%;
  cursor: pointer;
  border: 1px solid black;
  background: white;
  opacity: .8; }

.sp-alpha {
  display: none;
  position: absolute;
  bottom: -14px;
  right: 0;
  left: 0;
  height: 8px; }

.sp-alpha-inner {
  border: solid 1px #333; }

.sp-clear {
  display: none; }

.sp-clear.sp-clear-display {
  background-position: center; }

.sp-clear-enabled .sp-clear {
  display: block;
  position: absolute;
  top: 0px;
  right: 0;
  bottom: 0;
  left: 84%;
  height: 28px; }

/* Don't allow text selection */
.sp-container, .sp-replacer, .sp-preview, .sp-dragger, .sp-slider, .sp-alpha, .sp-clear, .sp-alpha-handle, .sp-container.sp-dragging .sp-input, .sp-container button {
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  -o-user-select: none;
  user-select: none; }

.sp-container.sp-input-disabled .sp-input-container {
  display: none; }

.sp-container.sp-buttons-disabled .sp-button-container {
  display: none; }

.sp-container.sp-palette-buttons-disabled .sp-palette-button-container {
  display: none; }

.sp-palette-only .sp-picker-container {
  display: none; }

.sp-palette-disabled .sp-palette-container {
  display: none; }

.sp-initial-disabled .sp-initial {
  display: none; }

/* Gradients for hue, saturation and value instead of images.  Not pretty... but it works */
.sp-sat {
  background-image: -webkit-gradient(linear, 0 0, 100% 0, from(#FFF), to(rgba(204, 154, 129, 0)));
  background-image: -webkit-linear-gradient(left, #FFF, rgba(204, 154, 129, 0));
  background-image: -moz-linear-gradient(left, #fff, rgba(204, 154, 129, 0));
  background-image: -o-linear-gradient(left, #fff, rgba(204, 154, 129, 0));
  background-image: -ms-linear-gradient(left, #fff, rgba(204, 154, 129, 0));
  background-image: linear-gradient(to right, #fff, rgba(204, 154, 129, 0));
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType = 1, startColorstr=#FFFFFFFF, endColorstr=#00CC9A81)";
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType = 1, startColorstr='#FFFFFFFF', endColorstr='#00CC9A81'); }

.sp-val {
  background-image: -webkit-gradient(linear, 0 100%, 0 0, from(#000000), to(rgba(204, 154, 129, 0)));
  background-image: -webkit-linear-gradient(bottom, #000000, rgba(204, 154, 129, 0));
  background-image: -moz-linear-gradient(bottom, #000, rgba(204, 154, 129, 0));
  background-image: -o-linear-gradient(bottom, #000, rgba(204, 154, 129, 0));
  background-image: -ms-linear-gradient(bottom, #000, rgba(204, 154, 129, 0));
  background-image: linear-gradient(to top, #000, rgba(204, 154, 129, 0));
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#00CC9A81, endColorstr=#FF000000)";
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00CC9A81', endColorstr='#FF000000'); }

.sp-hue {
  background: -moz-linear-gradient(top, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
  background: -ms-linear-gradient(top, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
  background: -o-linear-gradient(top, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#ff0000), color-stop(0.17, #ffff00), color-stop(0.33, #00ff00), color-stop(0.5, #00ffff), color-stop(0.67, #0000ff), color-stop(0.83, #ff00ff), to(#ff0000));
  background: -webkit-linear-gradient(top, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
  background: linear-gradient(to bottom, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%); }

/* IE filters do not support multiple color stops.
   Generate 6 divs, line them up, and do two color gradients for each.
   Yes, really.
 */
.sp-1 {
  height: 17%;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0000', endColorstr='#ffff00'); }

.sp-2 {
  height: 16%;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff00', endColorstr='#00ff00'); }

.sp-3 {
  height: 17%;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ff00', endColorstr='#00ffff'); }

.sp-4 {
  height: 17%;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffff', endColorstr='#0000ff'); }

.sp-5 {
  height: 16%;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0000ff', endColorstr='#ff00ff'); }

.sp-6 {
  height: 17%;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff00ff', endColorstr='#ff0000'); }

.sp-hidden {
  display: none !important; }

/* Clearfix hack */
.sp-cf:before, .sp-cf:after {
  content: "";
  display: table; }

.sp-cf:after {
  clear: both; }

.sp-cf {
  *zoom: 1; }

/* Mobile devices, make hue slider bigger so it is easier to slide */
@media (max-device-width: 480px) {
  .sp-color {
    right: 40%; }
  .sp-hue {
    left: 63%; }
  .sp-fill {
    padding-top: 60%; } }

.sp-dragger {
  border-radius: 5px;
  height: 5px;
  width: 5px;
  border: 1px solid #fff;
  background: #000;
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0; }

.sp-slider {
  position: absolute;
  top: 0;
  cursor: pointer;
  height: 3px;
  left: -1px;
  right: -1px;
  border: 1px solid #000;
  background: white;
  opacity: .8; }

/*
Theme authors:
Here are the basic themeable display options (colors, fonts, global widths).
See http://bgrins.github.io/spectrum/themes/ for instructions.
*/
.sp-container {
  border-radius: 0;
  background-color: #ECECEC;
  border: solid 1px #f0c49B;
  padding: 0; }

.sp-container, .sp-container button, .sp-container input, .sp-color, .sp-hue, .sp-clear {
  font: normal 12px "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Geneva, Verdana, sans-serif;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

.sp-top {
  margin-bottom: 3px; }

.sp-color, .sp-hue, .sp-clear {
  border: solid 1px #666; }

/* Input */
.sp-input-container {
  float: right;
  width: 100px;
  margin-bottom: 4px; }

.sp-initial-disabled .sp-input-container {
  width: 100%; }

.sp-input {
  font-size: 12px !important;
  border: 1px inset;
  padding: 4px 5px;
  margin: 0;
  width: 100%;
  background: transparent;
  border-radius: 3px;
  color: #222; }

.sp-input:focus {
  border: 1px solid orange; }

.sp-input.sp-validation-error {
  border: 1px solid red;
  background: #fdd; }

.sp-picker-container, .sp-palette-container {
  float: left;
  position: relative;
  padding: 10px;
  padding-bottom: 300px;
  margin-bottom: -290px; }

.sp-picker-container {
  width: 172px;
  border-left: solid 1px #fff; }

/* Palettes */
.sp-palette-container {
  border-right: solid 1px #ccc; }

.sp-palette-only .sp-palette-container {
  border: 0; }

.sp-palette .sp-thumb-el {
  display: block;
  position: relative;
  float: left;
  width: 24px;
  height: 15px;
  margin: 3px;
  cursor: pointer;
  border: solid 2px transparent; }

.sp-palette .sp-thumb-el:hover, .sp-palette .sp-thumb-el.sp-thumb-active {
  border-color: orange; }

.sp-thumb-el {
  position: relative; }

/* Initial */
.sp-initial {
  float: left;
  border: solid 1px #333; }

.sp-initial span {
  width: 30px;
  height: 25px;
  border: none;
  display: block;
  float: left;
  margin: 0; }

.sp-initial .sp-clear-display {
  background-position: center; }

/* Buttons */
.sp-palette-button-container,
.sp-button-container {
  float: right; }

/* Replacer (the little preview div that shows up instead of the <input>) */
.sp-replacer {
  margin: 0 0 0 5px;
  overflow: hidden;
  cursor: pointer;
  padding: 4px;
  display: inline-block;
  *zoom: 1;
  *display: inline;
  /*border: solid 1px #91765d;*/
  /*background: #eee;*/
  background: #fff;
  color: #333;
  vertical-align: middle; }

.sp-replacer:hover, .sp-replacer.sp-active {
  border-color: #F0C49B;
  color: #111; }

.sp-replacer.sp-disabled {
  cursor: default;
  border-color: silver;
  color: silver; }

.sp-dd {
  padding: 2px 0;
  height: 16px;
  line-height: 16px;
  float: left;
  font-size: 10px; }

.sp-preview {
  position: relative;
  width: 25px;
  height: 20px;
  border: solid 1px #222;
  margin-right: 5px;
  float: left;
  z-index: 0; }

.sp-palette {
  *width: 220px;
  max-width: 220px; }

/* changed 16px to 32px bsutton */
.sp-palette .sp-thumb-el {
  width: 32px;
  height: 32px;
  margin: 2px 1px;
  border: solid 1px #d0d0d0; }

.sp-container {
  padding-bottom: 0; }

/* Buttons: http://hellohappy.org/css3-buttons/ */
.sp-container button {
  background-color: #eeeeee;
  background-image: -webkit-linear-gradient(top, #eeeeee, #cccccc);
  background-image: -moz-linear-gradient(top, #eeeeee, #cccccc);
  background-image: -ms-linear-gradient(top, #eeeeee, #cccccc);
  background-image: -o-linear-gradient(top, #eeeeee, #cccccc);
  background-image: linear-gradient(to bottom, #eeeeee, #cccccc);
  border: 1px solid #ccc;
  border-bottom: 1px solid #bbb;
  border-radius: 3px;
  color: #333;
  font-size: 14px;
  line-height: 1;
  padding: 5px 4px;
  text-align: center;
  text-shadow: 0 1px 0 #eee;
  vertical-align: middle; }

.sp-container button:hover {
  background-color: #dddddd;
  background-image: -webkit-linear-gradient(top, #dddddd, #bbbbbb);
  background-image: -moz-linear-gradient(top, #dddddd, #bbbbbb);
  background-image: -ms-linear-gradient(top, #dddddd, #bbbbbb);
  background-image: -o-linear-gradient(top, #dddddd, #bbbbbb);
  background-image: linear-gradient(to bottom, #dddddd, #bbbbbb);
  border: 1px solid #bbb;
  border-bottom: 1px solid #999;
  cursor: pointer;
  text-shadow: 0 1px 0 #ddd; }

.sp-container button:active {
  border: 1px solid #aaa;
  border-bottom: 1px solid #888;
  -webkit-box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
  -moz-box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
  -ms-box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
  -o-box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
  box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee; }

.sp-cancel {
  font-size: 11px;
  color: #d93f3f !important;
  margin: 0;
  padding: 2px;
  margin-right: 5px;
  vertical-align: middle;
  text-decoration: none; }

.sp-cancel:hover {
  color: #d93f3f !important;
  text-decoration: underline; }

.sp-palette span:hover, .sp-palette span.sp-thumb-active {
  border-color: #000; }

.sp-preview, .sp-alpha, .sp-thumb-el {
  position: relative;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==); }

.sp-preview-inner, .sp-alpha-inner, .sp-thumb-inner {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0; }

.sp-palette .sp-thumb-inner {
  background-position: 50% 50%;
  background-repeat: no-repeat; }

.sp-palette .sp-thumb-light.sp-thumb-active .sp-thumb-inner {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIVJREFUeNpiYBhsgJFMffxAXABlN5JruT4Q3wfi/0DsT64h8UD8HmpIPCWG/KemIfOJCUB+Aoacx6EGBZyHBqI+WsDCwuQ9mhxeg2A210Ntfo8klk9sOMijaURm7yc1UP2RNCMbKE9ODK1HM6iegYLkfx8pligC9lCD7KmRof0ZhjQACDAAceovrtpVBRkAAAAASUVORK5CYII=); }

.sp-palette .sp-thumb-dark.sp-thumb-active .sp-thumb-inner {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAMdJREFUOE+tkgsNwzAMRMugEAahEAahEAZhEAqlEAZhEAohEAYh81X2dIm8fKpEspLGvudPOsUYpxE2BIJCroJmEW9qJ+MKaBFhEMNabSy9oIcIPwrB+afvAUFoK4H0tMaQ3XtlrggDhOVVMuT4E5MMG0FBbCEYzjYT7OxLEvIHQLY2zWwQ3D+9luyOQTfKDiFD3iUIfPk8VqrKjgAiSfGFPecrg6HN6m/iBcwiDAo7WiBeawa+Kwh7tZoSCGLMqwlSAzVDhoK+6vH4G0P5wdkAAAAASUVORK5CYII=); }

.sp-clear-display {
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(data:image/gif;base64,R0lGODlhFAAUAPcAAAAAAJmZmZ2dnZ6enqKioqOjo6SkpKWlpaampqenp6ioqKmpqaqqqqurq/Hx8fLy8vT09PX19ff39/j4+Pn5+fr6+vv7+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAP8ALAAAAAAUABQAAAihAP9FoPCvoMGDBy08+EdhQAIJCCMybCDAAYUEARBAlFiQQoMABQhKUJBxY0SPICEYHBnggEmDKAuoPMjS5cGYMxHW3IiT478JJA8M/CjTZ0GgLRekNGpwAsYABHIypcAgQMsITDtWJYBR6NSqMico9cqR6tKfY7GeBCuVwlipDNmefAtTrkSzB1RaIAoXodsABiZAEFB06gIBWC1mLVgBa0AAOw==); }

/*
* { margin: 0; padding: 0; }
*/
.fontSelect {
  position: relative;
  display: inline-block;
  padding: 3px 0 3px 0;
  height: 39px;
  line-height: 24px;
  cursor: pointer;
  margin: 0 0 0 7px;
  text-align: left;
  width: 52px;
  font-size: 24px;
  background: #ffffff;
  /* border: 1px solid #cecece; */ }

.fontSelect span {
  overflow: hidden;
  margin-left: 2px; }

.fontSelect .arrow-down {
  position: absolute;
  right: 0;
  top: 14px;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #AAA; }

.fontSelectUl {
  list-style: none;
  width: 200px;
  background: #f9f9f9;
  position: absolute;
  left: 0;
  top: 35px;
  margin: 0; }

.fontSelectUl li {
  height: 24px;
  line-height: 24px;
  overflow: hidden;
  cursor: pointer;
  padding: 0 10px;
  /*font-size: 14px;*/
  font-size: 18px;
  border-left: 1px solid #f0f0f0;
  border-right: 1px solid #f0f0f0; }

.fontSelectUl li.active {
  background: #ddd; }

.fontSelectUl li:last-child {
  -webkit-border-radius: 0 0 4px 4px;
  -moz-border-radius: 0 0 4px 4px;
  border-radius: 0 0 4px 4px;
  border-bottom: 1px solid #EEEEEE; }

.fontSelectUl li:hover {
  background: #DDD; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImpxdWVyeS5maWxldXBsb2FkLXVpLmNzcyIsImpxdWVyeS5maWxldXBsb2FkLmNzcyIsInNwZWN0cnVtLmNzcyIsImZvbnRzZWxlY3Rvci5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0E7Ozs7Ozs7OztHQVNHO0FBRUgsQUFBc0IscUJBQUQsQ0FBQyxJQUFJO0FBQzFCLEFBQXNCLHFCQUFELENBQUMsT0FBTyxDQUFDO0VBQzVCLGFBQWEsRUFBRSxHQUFHLEdBQ25COztBQUNELEFBQW1CLGtCQUFELENBQUMsYUFBYTtBQUNoQyxBQUFtQixrQkFBRCxDQUFDLElBQUksQ0FBQztFQUN0QixVQUFVLEVBQUUsNkJBQTZCLENBQUMsVUFBVTtFQUNwRCxNQUFNLEVBQUUsSUFBSSxHQUNiOztBQUNELG1CQUFtQixDQUFDO0VBQ2xCLEtBQUssRUFBRSxLQUFLO0VBQ1osT0FBTyxFQUFFLElBQUksR0FDZDs7QUFDRCxBQUF1QixzQkFBRCxDQUFDLG1CQUFtQjtBQUMxQyxBQUFtQixNQUFiLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztFQUMxQixPQUFPLEVBQUUsS0FBSztFQUNkLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixVQUFVLEVBQUUseUJBQXlCLENBQUMsTUFBTSxDQUFDLFNBQVM7RUFDdEQsZUFBZSxFQUFFLE9BQU8sR0FDekI7O0FBQ0QsQUFBTyxNQUFELENBQUMsS0FBSztBQUNaLEFBQU8sTUFBRCxDQUFDLEtBQUssQ0FBQztFQUNYLFNBQVMsRUFBRSxLQUFLLEdBQ2pCOztBQUVELE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUN0QixBQUFzQixxQkFBRCxDQUFDLE9BQU87RUFDN0IsQUFBTyxNQUFELENBQUMsT0FBTztFQUNkLEFBQVksTUFBTixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDZixPQUFPLEVBQUUsSUFBSSxHQUNkO0VBQ0QsQUFBTyxNQUFELENBQUMsS0FBSyxDQUFDO0lBQ1gsS0FBSyxFQUFF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QUFjLGFBQUQsQ0FBQyxFQUFFLE1BQU0sQ0FBQztFQUN0QixVQUFVLEVBQUUsSUFBSSxHQUNoQiIsImZpbGUiOiJiYWRnZWRlc2lnbmVyLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qXG4gKiBqUXVlcnkgRmlsZSBVcGxvYWQgVUkgUGx1Z2luIENTU1xuICogaHR0cHM6Ly9naXRodWIuY29tL2JsdWVpbXAvalF1ZXJ5LUZpbGUtVXBsb2FkXG4gKlxuICogQ29weXJpZ2h0IDIwMTAsIFNlYmFzdGlhbiBUc2NoYW5cbiAqIGh0dHBzOi8vYmx1ZWltcC5uZXRcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2U6XG4gKiBodHRwczovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICovXG5cbi5maWxldXBsb2FkLWJ1dHRvbmJhciAuYnRuLFxuLmZpbGV1cGxvYWQtYnV0dG9uYmFyIC50b2dnbGUge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4ucHJvZ3Jlc3MtYW5pbWF0ZWQgLnByb2dyZXNzLWJhcixcbi5wcm9ncmVzcy1hbmltYXRlZCAuYmFyIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3Byb2dyZXNzYmFyLmdpZlwiKSAhaW1wb3J0YW50O1xuICBmaWx0ZXI6IG5vbmU7XG59XG4uZmlsZXVwbG9hZC1wcm9jZXNzIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBkaXNwbGF5OiBub25lO1xufVxuLmZpbGV1cGxvYWQtcHJvY2Vzc2luZyAuZmlsZXVwbG9hZC1wcm9jZXNzLFxuLmZpbGVzIC5wcm9jZXNzaW5nIC5wcmV2aWV3IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9sb2FkaW5nLmdpZlwiKSBjZW50ZXIgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG59XG4uZmlsZXMgYXVkaW8sXG4uZmlsZXMgdmlkZW8ge1xuICBtYXgtd2lkdGg6IDMwMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmZpbGV1cGxvYWQtYnV0dG9uYmFyIC50b2dnbGUsXG4gIC5maWxlcyAudG9nZ2xlLFxuICAuZmlsZXMgLmJ0biBzcGFuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5maWxlcyAubmFtZSB7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB9XG4gIC5maWxlcyBhdWRpbyxcbiAgLmZpbGVzIHZpZGVvIHtcbiAgICBtYXgtd2lkdGg6IDgwcHg7XG4gIH1cbiAgLmZpbGVzIGltZyxcbiAgLmZpbGVzIGNhbnZhcyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG4vKlxuICogalF1ZXJ5IEZpbGUgVXBsb2FkIFBsdWdpbiBDU1NcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9ibHVlaW1wL2pRdWVyeS1GaWxlLVVwbG9hZFxuICpcbiAqIENvcHlyaWdodCAyMDEzLCBTZWJhc3RpYW4gVHNjaGFuXG4gKiBodHRwczovL2JsdWVpbXAubmV0XG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlOlxuICogaHR0cHM6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqL1xuXG4uZmlsZWlucHV0LWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmZpbGVpbnB1dC1idXR0b24gaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgb3BhY2l0eTogMDtcbiAgLW1zLWZpbHRlcjogJ2FscGhhKG9wYWNpdHk9MCknO1xuICBmb250LXNpemU6IDIwMHB4ICFpbXBvcnRhbnQ7XG4gIGRpcmVjdGlvbjogbHRyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qIEZpeGVzIGZvciBJRSA8IDggKi9cbkBtZWRpYSBzY3JlZW5cXDkge1xuICAuZmlsZWlucHV0LWJ1dHRvbiBpbnB1dCB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbiIsIi8qKipcblNwZWN0cnVtIENvbG9ycGlja2VyIHYxLjUuMlxuaHR0cHM6Ly9naXRodWIuY29tL2Jncmlucy9zcGVjdHJ1bVxuQXV0aG9yOiBCcmlhbiBHcmluc3RlYWRcbkxpY2Vuc2U6IE1JVFxuKioqL1xuXG4uc3AtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6MDtcbiAgICBsZWZ0OjA7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgKmRpc3BsYXk6IGlubGluZTtcbiAgICAqem9vbTogMTtcbiAgICAvKiBodHRwczovL2dpdGh1Yi5jb20vYmdyaW5zL3NwZWN0cnVtL2lzc3Vlcy80MCAqL1xuICAgIHotaW5kZXg6IDk5OTk5OTQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5zcC1jb250YWluZXIuc3AtZmxhdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKiBGaXggZm9yICogeyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9ICovXG4uc3AtY29udGFpbmVyLFxuLnNwLWNvbnRhaW5lciAqIHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLyogaHR0cDovL2Fuc2NpYXRoLnR1bWJsci5jb20vcG9zdC83MzQ3NDk1ODY5L2Nzcy1hc3BlY3QtcmF0aW8gKi9cbi5zcC10b3Age1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xufVxuLnNwLXRvcC1pbm5lciB7XG4gICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgIHRvcDowO1xuICAgbGVmdDowO1xuICAgYm90dG9tOjA7XG4gICByaWdodDowO1xufVxuLnNwLWNvbG9yIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgbGVmdDowO1xuICAgIGJvdHRvbTowO1xuICAgIHJpZ2h0OjIwJTtcbn1cbi5zcC1odWUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6MDtcbiAgICByaWdodDowO1xuICAgIGJvdHRvbTowO1xuICAgIGxlZnQ6ODQlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLnNwLWNsZWFyLWVuYWJsZWQgLnNwLWh1ZSB7XG4gICAgdG9wOjMzcHg7XG4gICAgaGVpZ2h0OiA3Ny41JTtcbn1cblxuLnNwLWZpbGwge1xuICAgIHBhZGRpbmctdG9wOiA4MCU7XG59XG4uc3Atc2F0LCAuc3AtdmFsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgbGVmdDowO1xuICAgIHJpZ2h0OjA7XG4gICAgYm90dG9tOjA7XG59XG5cbi5zcC1hbHBoYS1lbmFibGVkIC5zcC10b3Age1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG59XG4uc3AtYWxwaGEtZW5hYmxlZCAuc3AtYWxwaGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNwLWFscGhhLWhhbmRsZSB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOi00cHg7XG4gICAgYm90dG9tOiAtNHB4O1xuICAgIHdpZHRoOiA2cHg7XG4gICAgbGVmdDogNTAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBvcGFjaXR5OiAuODtcbn1cbi5zcC1hbHBoYSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMTRweDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogOHB4O1xufVxuLnNwLWFscGhhLWlubmVyIHtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjMzMzO1xufVxuXG4uc3AtY2xlYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zcC1jbGVhci5zcC1jbGVhci1kaXNwbGF5IHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG59XG5cbi5zcC1jbGVhci1lbmFibGVkIC5zcC1jbGVhciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjBweDtcbiAgICByaWdodDowO1xuICAgIGJvdHRvbTowO1xuICAgIGxlZnQ6ODQlO1xuICAgIGhlaWdodDogMjhweDtcbn1cblxuLyogRG9uJ3QgYWxsb3cgdGV4dCBzZWxlY3Rpb24gKi9cbi5zcC1jb250YWluZXIsIC5zcC1yZXBsYWNlciwgLnNwLXByZXZpZXcsIC5zcC1kcmFnZ2VyLCAuc3Atc2xpZGVyLCAuc3AtYWxwaGEsIC5zcC1jbGVhciwgLnNwLWFscGhhLWhhbmRsZSwgLnNwLWNvbnRhaW5lci5zcC1kcmFnZ2luZyAuc3AtaW5wdXQsIC5zcC1jb250YWluZXIgYnV0dG9uICB7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDpub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IC1tb3otbm9uZTtcbiAgICAtby11c2VyLXNlbGVjdDpub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uc3AtY29udGFpbmVyLnNwLWlucHV0LWRpc2FibGVkIC5zcC1pbnB1dC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4uc3AtY29udGFpbmVyLnNwLWJ1dHRvbnMtZGlzYWJsZWQgLnNwLWJ1dHRvbi1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4uc3AtY29udGFpbmVyLnNwLXBhbGV0dGUtYnV0dG9ucy1kaXNhYmxlZCAuc3AtcGFsZXR0ZS1idXR0b24tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnNwLXBhbGV0dGUtb25seSAuc3AtcGlja2VyLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5zcC1wYWxldHRlLWRpc2FibGVkIC5zcC1wYWxldHRlLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNwLWluaXRpYWwtZGlzYWJsZWQgLnNwLWluaXRpYWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cblxuLyogR3JhZGllbnRzIGZvciBodWUsIHNhdHVyYXRpb24gYW5kIHZhbHVlIGluc3RlYWQgb2YgaW1hZ2VzLiAgTm90IHByZXR0eS4uLiBidXQgaXQgd29ya3MgKi9cbi5zcC1zYXQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAgMCAwLCAxMDAlIDAsIGZyb20oI0ZGRiksIHRvKHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjRkZGLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZmZmLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZmZiwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZmZmLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZmYsIHJnYmEoMjA0LCAxNTQsIDEyOSwgMCkpO1xuICAgIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KEdyYWRpZW50VHlwZSA9IDEsIHN0YXJ0Q29sb3JzdHI9I0ZGRkZGRkZGLCBlbmRDb2xvcnN0cj0jMDBDQzlBODEpXCI7XG4gICAgZmlsdGVyIDogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KEdyYWRpZW50VHlwZSA9IDEsIHN0YXJ0Q29sb3JzdHI9JyNGRkZGRkZGRicsIGVuZENvbG9yc3RyPScjMDBDQzlBODEnKTtcbn1cbi5zcC12YWwge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDEwMCUsIDAgMCwgZnJvbSgjMDAwMDAwKSwgdG8ocmdiYSgyMDQsIDE1NCwgMTI5LCAwKSkpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgIzAwMDAwMCwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoYm90dG9tLCAjMDAwLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoYm90dG9tLCAjMDAwLCByZ2JhKDIwNCwgMTU0LCAxMjksIDApKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgIzAwMCwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgIzAwMCwgcmdiYSgyMDQsIDE1NCwgMTI5LCAwKSk7XG4gICAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0jMDBDQzlBODEsIGVuZENvbG9yc3RyPSNGRjAwMDAwMClcIjtcbiAgICBmaWx0ZXIgOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwQ0M5QTgxJywgZW5kQ29sb3JzdHI9JyNGRjAwMDAwMCcpO1xufVxuXG4uc3AtaHVlIHtcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZjAwMDAgMCUsICNmZmZmMDAgMTclLCAjMDBmZjAwIDMzJSwgIzAwZmZmZiA1MCUsICMwMDAwZmYgNjclLCAjZmYwMGZmIDgzJSwgI2ZmMDAwMCAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmMDAwMCAwJSwgI2ZmZmYwMCAxNyUsICMwMGZmMDAgMzMlLCAjMDBmZmZmIDUwJSwgIzAwMDBmZiA2NyUsICNmZjAwZmYgODMlLCAjZmYwMDAwIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZjAwMDAgMCUsICNmZmZmMDAgMTclLCAjMDBmZjAwIDMzJSwgIzAwZmZmZiA1MCUsICMwMDAwZmYgNjclLCAjZmYwMGZmIDgzJSwgI2ZmMDAwMCAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKCNmZjAwMDApLCBjb2xvci1zdG9wKDAuMTcsICNmZmZmMDApLCBjb2xvci1zdG9wKDAuMzMsICMwMGZmMDApLCBjb2xvci1zdG9wKDAuNSwgIzAwZmZmZiksIGNvbG9yLXN0b3AoMC42NywgIzAwMDBmZiksIGNvbG9yLXN0b3AoMC44MywgI2ZmMDBmZiksIHRvKCNmZjAwMDApKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZjAwMDAgMCUsICNmZmZmMDAgMTclLCAjMDBmZjAwIDMzJSwgIzAwZmZmZiA1MCUsICMwMDAwZmYgNjclLCAjZmYwMGZmIDgzJSwgI2ZmMDAwMCAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmYwMDAwIDAlLCAjZmZmZjAwIDE3JSwgIzAwZmYwMCAzMyUsICMwMGZmZmYgNTAlLCAjMDAwMGZmIDY3JSwgI2ZmMDBmZiA4MyUsICNmZjAwMDAgMTAwJSk7XG59XG5cbi8qIElFIGZpbHRlcnMgZG8gbm90IHN1cHBvcnQgbXVsdGlwbGUgY29sb3Igc3RvcHMuXG4gICBHZW5lcmF0ZSA2IGRpdnMsIGxpbmUgdGhlbSB1cCwgYW5kIGRvIHR3byBjb2xvciBncmFkaWVudHMgZm9yIGVhY2guXG4gICBZZXMsIHJlYWxseS5cbiAqL1xuLnNwLTEge1xuICAgIGhlaWdodDoxNyU7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmMDAwMCcsIGVuZENvbG9yc3RyPScjZmZmZjAwJyk7XG59XG4uc3AtMiB7XG4gICAgaGVpZ2h0OjE2JTtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZmZmZjAwJywgZW5kQ29sb3JzdHI9JyMwMGZmMDAnKTtcbn1cbi5zcC0zIHtcbiAgICBoZWlnaHQ6MTclO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyMwMGZmMDAnLCBlbmRDb2xvcnN0cj0nIzAwZmZmZicpO1xufVxuLnNwLTQge1xuICAgIGhlaWdodDoxNyU7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwZmZmZicsIGVuZENvbG9yc3RyPScjMDAwMGZmJyk7XG59XG4uc3AtNSB7XG4gICAgaGVpZ2h0OjE2JTtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMDAwMGZmJywgZW5kQ29sb3JzdHI9JyNmZjAwZmYnKTtcbn1cbi5zcC02IHtcbiAgICBoZWlnaHQ6MTclO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNmZjAwZmYnLCBlbmRDb2xvcnN0cj0nI2ZmMDAwMCcpO1xufVxuXG4uc3AtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qIENsZWFyZml4IGhhY2sgKi9cbi5zcC1jZjpiZWZvcmUsIC5zcC1jZjphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IHRhYmxlOyB9XG4uc3AtY2Y6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuLnNwLWNmIHsgKnpvb206IDE7IH1cblxuLyogTW9iaWxlIGRldmljZXMsIG1ha2UgaHVlIHNsaWRlciBiaWdnZXIgc28gaXQgaXMgZWFzaWVyIHRvIHNsaWRlICovXG5AbWVkaWEgKG1heC1kZXZpY2Utd2lkdGg6IDQ4MHB4KSB7XG4gICAgLnNwLWNvbG9yIHsgcmlnaHQ6IDQwJTsgfVxuICAgIC5zcC1odWUgeyBsZWZ0OiA2MyU7IH1cbiAgICAuc3AtZmlsbCB7IHBhZGRpbmctdG9wOiA2MCU7IH1cbn1cbi5zcC1kcmFnZ2VyIHtcbiAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgIGhlaWdodDogNXB4O1xuICAgd2lkdGg6IDVweDtcbiAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgY3Vyc29yOiBwb2ludGVyO1xuICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICB0b3A6MDtcbiAgIGxlZnQ6IDA7XG59XG4uc3Atc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgbGVmdDogLTFweDtcbiAgICByaWdodDogLTFweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIG9wYWNpdHk6IC44O1xufVxuXG4vKlxuVGhlbWUgYXV0aG9yczpcbkhlcmUgYXJlIHRoZSBiYXNpYyB0aGVtZWFibGUgZGlzcGxheSBvcHRpb25zIChjb2xvcnMsIGZvbnRzLCBnbG9iYWwgd2lkdGhzKS5cblNlZSBodHRwOi8vYmdyaW5zLmdpdGh1Yi5pby9zcGVjdHJ1bS90aGVtZXMvIGZvciBpbnN0cnVjdGlvbnMuXG4qL1xuXG4uc3AtY29udGFpbmVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQ0VDRUM7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2YwYzQ5QjtcbiAgICBwYWRkaW5nOiAwO1xufVxuLnNwLWNvbnRhaW5lciwgLnNwLWNvbnRhaW5lciBidXR0b24sIC5zcC1jb250YWluZXIgaW5wdXQsIC5zcC1jb2xvciwgLnNwLWh1ZSwgLnNwLWNsZWFyIHtcbiAgICBmb250OiBub3JtYWwgMTJweCBcIkx1Y2lkYSBHcmFuZGVcIiwgXCJMdWNpZGEgU2FucyBVbmljb2RlXCIsIFwiTHVjaWRhIFNhbnNcIiwgR2VuZXZhLCBWZXJkYW5hLCBzYW5zLXNlcmlmO1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLW1zLWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5zcC10b3Age1xuICAgIG1hcmdpbi1ib3R0b206IDNweDtcbn1cbi5zcC1jb2xvciwgLnNwLWh1ZSwgLnNwLWNsZWFyIHtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjNjY2O1xufVxuXG4vKiBJbnB1dCAqL1xuLnNwLWlucHV0LWNvbnRhaW5lciB7XG4gICAgZmxvYXQ6cmlnaHQ7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDRweDtcbn1cbi5zcC1pbml0aWFsLWRpc2FibGVkICAuc3AtaW5wdXQtY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cbi5zcC1pbnB1dCB7XG4gICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgIGJvcmRlcjogMXB4IGluc2V0O1xuICAgcGFkZGluZzogNHB4IDVweDtcbiAgIG1hcmdpbjogMDtcbiAgIHdpZHRoOiAxMDAlO1xuICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgIGNvbG9yOiAjMjIyO1xufVxuLnNwLWlucHV0OmZvY3VzICB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgb3JhbmdlO1xufVxuLnNwLWlucHV0LnNwLXZhbGlkYXRpb24tZXJyb3Ige1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJlZDtcbiAgICBiYWNrZ3JvdW5kOiAjZmRkO1xufVxuLnNwLXBpY2tlci1jb250YWluZXIgLCAuc3AtcGFsZXR0ZS1jb250YWluZXIge1xuICAgIGZsb2F0OmxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDMwMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IC0yOTBweDtcbn1cbi5zcC1waWNrZXItY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTcycHg7XG4gICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjZmZmO1xufVxuXG4vKiBQYWxldHRlcyAqL1xuLnNwLXBhbGV0dGUtY29udGFpbmVyIHtcbiAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDFweCAjY2NjO1xufVxuXG4uc3AtcGFsZXR0ZS1vbmx5IC5zcC1wYWxldHRlLWNvbnRhaW5lciB7XG4gICAgYm9yZGVyOiAwO1xufVxuXG4uc3AtcGFsZXR0ZSAuc3AtdGh1bWItZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIGZsb2F0OmxlZnQ7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIG1hcmdpbjogM3B4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXI6c29saWQgMnB4IHRyYW5zcGFyZW50O1xufVxuLnNwLXBhbGV0dGUgLnNwLXRodW1iLWVsOmhvdmVyLCAuc3AtcGFsZXR0ZSAuc3AtdGh1bWItZWwuc3AtdGh1bWItYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IG9yYW5nZTtcbn1cbi5zcC10aHVtYi1lbCB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG59XG5cbi8qIEluaXRpYWwgKi9cbi5zcC1pbml0aWFsIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjMzMzO1xufVxuLnNwLWluaXRpYWwgc3BhbiB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIGJvcmRlcjpub25lO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgZmxvYXQ6bGVmdDtcbiAgICBtYXJnaW46MDtcbn1cblxuLnNwLWluaXRpYWwgLnNwLWNsZWFyLWRpc3BsYXkge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn1cblxuLyogQnV0dG9ucyAqL1xuLnNwLXBhbGV0dGUtYnV0dG9uLWNvbnRhaW5lcixcbi5zcC1idXR0b24tY29udGFpbmVyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG59XG5cbi8qIFJlcGxhY2VyICh0aGUgbGl0dGxlIHByZXZpZXcgZGl2IHRoYXQgc2hvd3MgdXAgaW5zdGVhZCBvZiB0aGUgPGlucHV0PikgKi9cbi5zcC1yZXBsYWNlciB7XG4gICAgbWFyZ2luOiAwIDAgMCA1cHg7XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgIGN1cnNvcjpwb2ludGVyO1xuICAgIHBhZGRpbmc6IDRweDtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAqem9vbTogMTtcbiAgICAqZGlzcGxheTogaW5saW5lO1xuICAgIC8qYm9yZGVyOiBzb2xpZCAxcHggIzkxNzY1ZDsqL1xuICAgIC8qYmFja2dyb3VuZDogI2VlZTsqL1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5zcC1yZXBsYWNlcjpob3ZlciwgLnNwLXJlcGxhY2VyLnNwLWFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjRjBDNDlCO1xuICAgIGNvbG9yOiAjMTExO1xufVxuLnNwLXJlcGxhY2VyLnNwLWRpc2FibGVkIHtcbiAgICBjdXJzb3I6ZGVmYXVsdDtcbiAgICBib3JkZXItY29sb3I6IHNpbHZlcjtcbiAgICBjb2xvcjogc2lsdmVyO1xufVxuLnNwLWRkIHtcbiAgICBwYWRkaW5nOiAycHggMDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgZmxvYXQ6bGVmdDtcbiAgICBmb250LXNpemU6MTBweDtcbn1cbi5zcC1wcmV2aWV3IHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB3aWR0aDoyNXB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjMjIyO1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIGZsb2F0OmxlZnQ7XG4gICAgei1pbmRleDogMDtcbn1cblxuLnNwLXBhbGV0dGUge1xuICAgICp3aWR0aDogMjIwcHg7XG4gICAgbWF4LXdpZHRoOiAyMjBweDtcbn1cbi8qIGNoYW5nZWQgMTZweCB0byAzMnB4IGJzdXR0b24gKi9cbi5zcC1wYWxldHRlIC5zcC10aHVtYi1lbCB7XG4gICAgd2lkdGg6MzJweDtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgbWFyZ2luOjJweCAxcHg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2QwZDBkMDtcbn1cblxuLnNwLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206MDtcbn1cblxuXG4vKiBCdXR0b25zOiBodHRwOi8vaGVsbG9oYXBweS5vcmcvY3NzMy1idXR0b25zLyAqL1xuLnNwLWNvbnRhaW5lciBidXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWVlZWUsICNjY2NjY2MpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWVlZWUsICNjY2NjY2MpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZWVlZSwgI2NjY2NjYyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWVlZWUsICNjY2NjY2MpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZWVlZWVlLCAjY2NjY2NjKTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiYmI7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY29sb3I6ICMzMzM7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDVweCA0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgI2VlZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5zcC1jb250YWluZXIgYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkZGRkO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2RkZGRkZCwgI2JiYmJiYik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjZGRkZGRkLCAjYmJiYmJiKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI2RkZGRkZCwgI2JiYmJiYik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2RkZGRkZCwgI2JiYmJiYik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2RkZGRkZCwgI2JiYmJiYik7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2JiYjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk5OTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgI2RkZDtcbn1cbi5zcC1jb250YWluZXIgYnV0dG9uOmFjdGl2ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzg4ODtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMCA1cHggMnB4ICNhYWFhYWEsIDAgMXB4IDAgMCAjZWVlZWVlO1xuICAgIC1tb3otYm94LXNoYWRvdzogaW5zZXQgMCAwIDVweCAycHggI2FhYWFhYSwgMCAxcHggMCAwICNlZWVlZWU7XG4gICAgLW1zLWJveC1zaGFkb3c6IGluc2V0IDAgMCA1cHggMnB4ICNhYWFhYWEsIDAgMXB4IDAgMCAjZWVlZWVlO1xuICAgIC1vLWJveC1zaGFkb3c6IGluc2V0IDAgMCA1cHggMnB4ICNhYWFhYWEsIDAgMXB4IDAgMCAjZWVlZWVlO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCA1cHggMnB4ICNhYWFhYWEsIDAgMXB4IDAgMCAjZWVlZWVlO1xufVxuLnNwLWNhbmNlbCB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGNvbG9yOiAjZDkzZjNmICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOjA7XG4gICAgcGFkZGluZzoycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcblxufVxuLnNwLWNhbmNlbDpob3ZlciB7XG4gICAgY29sb3I6ICNkOTNmM2YgIWltcG9ydGFudDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuXG4uc3AtcGFsZXR0ZSBzcGFuOmhvdmVyLCAuc3AtcGFsZXR0ZSBzcGFuLnNwLXRodW1iLWFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwO1xufVxuXG4uc3AtcHJldmlldywgLnNwLWFscGhhLCAuc3AtdGh1bWItZWwge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUF3QUFBQU1DQUlBQUFEWkY4dXdBQUFBR1VsRVFWUVlWMk00Z3dIK1l3Q0dJYXNJVXdoVDI1QlZCQUR0ellOWXJIdnY0Z0FBQUFCSlJVNUVya0pnZ2c9PSk7XG59XG4uc3AtcHJldmlldy1pbm5lciwgLnNwLWFscGhhLWlubmVyLCAuc3AtdGh1bWItaW5uZXIge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjA7bGVmdDowO2JvdHRvbTowO3JpZ2h0OjA7XG59XG5cbi5zcC1wYWxldHRlIC5zcC10aHVtYi1pbm5lciB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uc3AtcGFsZXR0ZSAuc3AtdGh1bWItbGlnaHQuc3AtdGh1bWItYWN0aXZlIC5zcC10aHVtYi1pbm5lciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQklBQUFBU0NBWUFBQUJXem81WEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSVZKUkVGVWVOcGlZQmhzZ0pGTWZmeEFYQUJsTjVKcnVUNFEzd2ZpLzBEc1Q2NGg4VUQ4SG1wSVBDV0cvS2VtSWZPSkNVQitBb2FjeDZFR0JaeUhCcUkrV3NEQ3d1UTltaHhlZzJBMjEwTnRmbzhrbGs5c09NaWphVVJtN3ljMVVQMlJOQ01iS0U5T0RLMUhNNmllZ1lMa2Z4OHBsaWdDOWxDRDdLbVJvZjBaaGpRQUNEQUFjZW92cnRwVkJSa0FBQUFBU1VWT1JLNUNZSUk9KTtcbn1cblxuLnNwLXBhbGV0dGUgLnNwLXRodW1iLWRhcmsuc3AtdGh1bWItYWN0aXZlIC5zcC10aHVtYi1pbm5lciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQklBQUFBU0NBWUFBQUJXem81WEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc01BQUE3REFjZHZxR1FBQUFBYWRFVllkRk52Wm5SM1lYSmxBRkJoYVc1MExrNUZWQ0IyTXk0MUxqRXdNUFJ5b1FBQUFNZEpSRUZVT0UrdGtnc053ekFNUk11Z0VBYWhFQWFoRUFaaEVBcWxFQVpoRUFvaEVBWWg4MVgyZEltOGZLcEVzcExHdnVkUE9zVVlweEUyQklKQ3JvSm1FVzlxSitNS2FCRmhFTU5hYlN5OW9JY0lQd3JCK2FmdkFVRm9LNEgwdE1hUTNYdGxyZ2dEaE9WVk11VDRFNU1NRzBGQmJDRVl6allUN094TEV2SUhRTFkyeld3UTNEKzlsdXlPUVRmS0RpRkQzaVVJZlBrOFZxcktqZ0FpU2ZHRlBlY3JnNkhONm0vaUJjd2lEQW83V2lCZWF3YStLd2g3dFpvU0NHTE1xd2xTQXpWRGhvSys2dkg0RzBQNXdka0FBQUFBU1VWT1JLNUNZSUk9KTtcbn1cblxuLnNwLWNsZWFyLWRpc3BsYXkge1xuICAgIGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxSMGxHT0RsaEZBQVVBUGNBQUFBQUFKbVptWjJkblo2ZW5xS2lvcU9qbzZTa3BLV2xwYWFtcHFlbnA2aW9xS21wcWFxcXFxdXJxL0h4OGZMeTh2VDA5UFgxOWZmMzkvajQrUG41K2ZyNit2djcrd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDSDVCQUVBQVA4QUxBQUFBQUFVQUJRQUFBaWhBUDlGb1BDdm9NR0RCeTA4K0VkaFFBSUpDQ015YkNEQUFZVUVBUkJBbEZpUVFvTUFCUWhLVUpCeFkwU1BJQ0VZSEJuZ2dFbURLQXVvUE1qUzVjR1lNeEhXM0lpVDQ3OEpKQThNL0NqVFowR2dMUmVrTkdwd0FzWUFCSEl5cGNBZ1FNc0lURHRXSllCUjZOU3FNaWNvOWNxUjZ0S2ZZN0dlQkN1VndsaXBETm1lZkF0VHJrU3pCMVJhSUFvWG9kc0FCaVpBRUZCMDZnSUJXQzFtTFZnQmEwQUFPdz09KTtcbn1cbiIsIi8qXG4qIHsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyB9XG4qL1xuLmZvbnRTZWxlY3Qge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cGFkZGluZzogM3B4IDAgM3B4IDA7XG5cdGhlaWdodDogMzlweDtcblx0bGluZS1oZWlnaHQ6IDI0cHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0bWFyZ2luOiAwIDAgMCA3cHg7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cblx0d2lkdGg6IDUycHg7XG5cblx0Zm9udC1zaXplOiAyNHB4O1xuXG5cdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cdC8qIGJvcmRlcjogMXB4IHNvbGlkICNjZWNlY2U7ICovXG59XG5cbi5mb250U2VsZWN0IHNwYW4ge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRtYXJnaW4tbGVmdDogMnB4O1xufVxuXG4uZm9udFNlbGVjdCAuYXJyb3ctZG93biB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IDA7XG5cdHRvcDogMTRweDtcblx0Ym9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0Ym9yZGVyLXJpZ2h0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG5cblx0Ym9yZGVyLXRvcDogNnB4IHNvbGlkICNBQUE7XG59XG5cbi5mb250U2VsZWN0VWwge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHR3aWR0aDogMjAwcHg7XG5cdGJhY2tncm91bmQ6ICNmOWY5Zjk7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogMDtcblx0dG9wOiAzNXB4O1xuXHRtYXJnaW46IDA7XG59XG5cbi5mb250U2VsZWN0VWwgbGkge1xuXHRoZWlnaHQ6IDI0cHg7XG5cdGxpbmUtaGVpZ2h0OiAyNHB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHBhZGRpbmc6IDAgMTBweDtcblxuXHQvKmZvbnQtc2l6ZTogMTRweDsqL1xuXHRmb250LXNpemU6IDE4cHg7XG5cblx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZjBmMGYwO1xuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZjBmMGYwO1xufVxuXG4uZm9udFNlbGVjdFVsIGxpLmFjdGl2ZSB7XG5cdGJhY2tncm91bmQ6ICNkZGQ7XG59XG5cbi5mb250U2VsZWN0VWwgbGk6bGFzdC1jaGlsZCB7XG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XG5cdC1tb3otYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XG5cdGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xuXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRUVFRUVFO1xufVxuXG4uZm9udFNlbGVjdFVsIGxpOmhvdmVyIHtcblx0YmFja2dyb3VuZDogI0RERDtcbn1cblxuIl19 */
