.react-flow__edges {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  pointer-events: none !important;
}
.react-flow {
  direction: ltr;
  --xy-edge-stroke-default: #b1b1b7;
  --xy-edge-stroke-width-default: 1;
  --xy-edge-stroke-selected-default: #555;
  --xy-connectionline-stroke-default: #b1b1b7;
  --xy-connectionline-stroke-width-default: 1;
  --xy-attribution-background-color-default: rgba(255, 255, 255, 0.5);
  --xy-minimap-background-color-default: #fff;
  --xy-minimap-mask-background-color-default: rgba(240, 240, 240, 0.6);
  --xy-minimap-mask-stroke-color-default: transparent;
  --xy-minimap-mask-stroke-width-default: 1;
  --xy-minimap-node-background-color-default: #e2e2e2;
  --xy-minimap-node-stroke-color-default: transparent;
  --xy-minimap-node-stroke-width-default: 2;
  --xy-background-color-default: transparent;
  --xy-background-pattern-dots-color-default: #91919a;
  --xy-background-pattern-lines-color-default: #eee;
  --xy-background-pattern-cross-color-default: #e2e2e2;
  background-color: var(--xy-background-color, var(--xy-background-color-default));
  --xy-node-color-default: inherit;
  --xy-node-border-default: 1px solid #1a192b;
  --xy-node-background-color-default: #fff;
  --xy-node-group-background-color-default: rgba(240, 240, 240, 0.25);
  --xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, 0.08);
  --xy-node-boxshadow-selected-default: 0 0 0 0.5px #1a192b;
  --xy-node-border-radius-default: 3px;
  --xy-handle-background-color-default: #1a192b;
  --xy-handle-border-color-default: #fff;
  --xy-selection-background-color-default: rgba(0, 89, 220, 0.08);
  --xy-selection-border-default: 1px dotted rgba(0, 89, 220, 0.8);
  --xy-controls-button-background-color-default: #fefefe;
  --xy-controls-button-background-color-hover-default: #f4f4f4;
  --xy-controls-button-color-default: inherit;
  --xy-controls-button-color-hover-default: inherit;
  --xy-controls-button-border-color-default: #eee;
  --xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, 0.08);
  --xy-edge-label-background-color-default: #ffffff;
  --xy-edge-label-color-default: inherit;
  --xy-resize-background-color-default: #3367d9;
}
.react-flow.dark {
  --xy-edge-stroke-default: #3e3e3e;
  --xy-edge-stroke-width-default: 1;
  --xy-edge-stroke-selected-default: #727272;
  --xy-connectionline-stroke-default: #b1b1b7;
  --xy-connectionline-stroke-width-default: 1;
  --xy-attribution-background-color-default: rgba(150, 150, 150, 0.25);
  --xy-minimap-background-color-default: #141414;
  --xy-minimap-mask-background-color-default: rgba(60, 60, 60, 0.6);
  --xy-minimap-mask-stroke-color-default: transparent;
  --xy-minimap-mask-stroke-width-default: 1;
  --xy-minimap-node-background-color-default: #2b2b2b;
  --xy-minimap-node-stroke-color-default: transparent;
  --xy-minimap-node-stroke-width-default: 2;
  --xy-background-color-default: #141414;
  --xy-background-pattern-dots-color-default: #777;
  --xy-background-pattern-lines-color-default: #777;
  --xy-background-pattern-cross-color-default: #777;
  --xy-node-color-default: #f8f8f8;
  --xy-node-border-default: 1px solid #3c3c3c;
  --xy-node-background-color-default: #1e1e1e;
  --xy-node-group-background-color-default: rgba(240, 240, 240, 0.25);
  --xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, 0.08);
  --xy-node-boxshadow-selected-default: 0 0 0 0.5px #999;
  --xy-handle-background-color-default: #bebebe;
  --xy-handle-border-color-default: #1e1e1e;
  --xy-selection-background-color-default: rgba(200, 200, 220, 0.08);
  --xy-selection-border-default: 1px dotted rgba(200, 200, 220, 0.8);
  --xy-controls-button-background-color-default: #2b2b2b;
  --xy-controls-button-background-color-hover-default: #3e3e3e;
  --xy-controls-button-color-default: #f8f8f8;
  --xy-controls-button-color-hover-default: #fff;
  --xy-controls-button-border-color-default: #5b5b5b;
  --xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, 0.08);
  --xy-edge-label-background-color-default: #141414;
  --xy-edge-label-color-default: #f8f8f8;
}
.react-flow__background {
  background-color: var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));
  pointer-events: none;
  z-index: -1;
}
.react-flow__container {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.react-flow__pane {
  z-index: 1;
}
.react-flow__pane.draggable {
  cursor: grab;
}
.react-flow__pane.dragging {
  cursor: grabbing;
}
.react-flow__pane.selection {
  cursor: pointer;
}
.react-flow__viewport {
  transform-origin: 0 0;
  z-index: 2;
  pointer-events: none;
}
.react-flow__renderer {
  z-index: 4;
}
.react-flow__selection {
  z-index: 6;
}
.react-flow__nodesselection-rect:focus,
.react-flow__nodesselection-rect:focus-visible {
  outline: none;
}
.react-flow__edge-path {
  stroke: var(--xy-edge-stroke, var(--xy-edge-stroke-default));
  stroke-width: var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));
  fill: none;
}
.react-flow__connection-path {
  stroke: var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));
  stroke-width: var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));
  fill: none;
}
.react-flow .react-flow__edges {
  position: absolute;
}
.react-flow .react-flow__edges svg {
  overflow: visible;
  position: absolute;
  pointer-events: none;
}
.react-flow__edge {
  pointer-events: visibleStroke;
}
.react-flow__edge.selectable {
  cursor: pointer;
}
.react-flow__edge.animated path {
  stroke-dasharray: 5;
  animation: dashdraw 0.5s linear infinite;
}
.react-flow__edge.animated path.react-flow__edge-interaction {
  stroke-dasharray: none;
  animation: none;
}
.react-flow__edge.inactive {
  pointer-events: none;
}
.react-flow__edge.selected,
.react-flow__edge:focus,
.react-flow__edge:focus-visible {
  outline: none;
}
.react-flow__edge.selected .react-flow__edge-path,
.react-flow__edge.selectable:focus .react-flow__edge-path,
.react-flow__edge.selectable:focus-visible .react-flow__edge-path {
  stroke: var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default));
}
.react-flow__edge-textwrapper {
  pointer-events: all;
}
.react-flow__edge .react-flow__edge-text {
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.react-flow__arrowhead polyline {
  fill: var(--xy-edge-stroke, var(--xy-edge-stroke-default));
  stroke: var(--xy-edge-stroke, var(--xy-edge-stroke-default));
}
.react-flow__connection {
  pointer-events: none;
}
.react-flow__connection .animated {
  stroke-dasharray: 5;
  animation: dashdraw 0.5s linear infinite;
}
svg.react-flow__connectionline {
  z-index: 1001;
  overflow: visible;
  position: absolute;
}
.react-flow__nodes {
  pointer-events: none;
  transform-origin: 0 0;
}
.react-flow__node {
  position: absolute;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  pointer-events: all;
  transform-origin: 0 0;
  box-sizing: border-box;
  cursor: default;
}
.react-flow__node.selectable {
  cursor: pointer;
}
.react-flow__node.draggable {
  cursor: grab;
  pointer-events: all;
}
.react-flow__node.draggable.dragging {
  cursor: grabbing;
}
.react-flow__nodesselection {
  z-index: 3;
  transform-origin: left top;
  pointer-events: none;
}
.react-flow__nodesselection-rect {
  position: absolute;
  pointer-events: all;
  cursor: grab;
}
.react-flow__handle {
  position: absolute;
  pointer-events: none;
  min-width: 5px;
  min-height: 5px;
  width: 6px;
  height: 6px;
  background-color: var(--xy-handle-background-color, var(--xy-handle-background-color-default));
  border: 1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));
  border-radius: 100%;
}
.react-flow__handle.connectingfrom {
  pointer-events: all;
}
.react-flow__handle.connectionindicator {
  pointer-events: all;
  cursor: crosshair;
}
.react-flow__handle-bottom {
  top: auto;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 50%);
}
.react-flow__handle-top {
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
.react-flow__handle-left {
  top: 50%;
  left: 0;
  transform: translate(-50%, -50%);
}
.react-flow__handle-right {
  top: 50%;
  right: 0;
  transform: translate(50%, -50%);
}
.react-flow__edgeupdater {
  cursor: move;
  pointer-events: all;
}
.react-flow__pane.selection .react-flow__panel {
  pointer-events: none;
}
.react-flow__panel {
  position: absolute;
  z-index: 5;
  margin: 15px;
}
.react-flow__panel.top {
  top: 0;
}
.react-flow__panel.bottom {
  bottom: 0;
}
.react-flow__panel.top.center,
.react-flow__panel.bottom.center {
  left: 50%;
  transform: translateX(-15px) translateX(-50%);
}
.react-flow__panel.left {
  left: 0;
}
.react-flow__panel.right {
  right: 0;
}
.react-flow__panel.left.center,
.react-flow__panel.right.center {
  top: 50%;
  transform: translateY(-15px) translateY(-50%);
}
.react-flow__attribution {
  font-size: 10px;
  background: var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));
  padding: 2px 3px;
  margin: 0;
}
.react-flow__attribution a {
  text-decoration: none;
  color: #999;
}
@keyframes dashdraw {
  from {
    stroke-dashoffset: 10;
  }
}
.react-flow__edgelabel-renderer {
  position: absolute;
  width: 100%;
  height: 100%;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  left: 0;
  top: 0;
}
.react-flow__viewport-portal {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.react-flow__minimap {
  background: var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) );
}
.react-flow__minimap-svg {
  display: block;
}
.react-flow__minimap-mask {
  fill: var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );
  stroke: var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );
  stroke-width: var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) );
}
.react-flow__minimap-node {
  fill: var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );
  stroke: var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );
  stroke-width: var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) );
}
.react-flow__background-pattern.dots {
  fill: var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) );
}
.react-flow__background-pattern.lines {
  stroke: var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) );
}
.react-flow__background-pattern.cross {
  stroke: var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) );
}
.react-flow__controls {
  display: flex;
  flex-direction: column;
  box-shadow: var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default));
}
.react-flow__controls.horizontal {
  flex-direction: row;
}
.react-flow__controls-button {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 26px;
  width: 26px;
  padding: 4px;
  border: none;
  background: var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));
  border-bottom: 1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );
  color: var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.react-flow__controls-button svg {
  width: 100%;
  max-width: 12px;
  max-height: 12px;
  fill: currentColor;
}
.react-flow__edge.updating .react-flow__edge-path {
  stroke: #777;
}
.react-flow__edge-text {
  font-size: 10px;
}
.react-flow__node.selectable:focus,
.react-flow__node.selectable:focus-visible {
  outline: none;
}
.react-flow__node-input,
.react-flow__node-default,
.react-flow__node-output,
.react-flow__node-group {
  padding: 10px;
  border-radius: var(--xy-node-border-radius, var(--xy-node-border-radius-default));
  width: 150px;
  font-size: 12px;
  color: var(--xy-node-color, var(--xy-node-color-default));
  text-align: center;
  border: var(--xy-node-border, var(--xy-node-border-default));
  background-color: var(--xy-node-background-color, var(--xy-node-background-color-default));
}
.react-flow__node-input.selectable:hover,
.react-flow__node-default.selectable:hover,
.react-flow__node-output.selectable:hover,
.react-flow__node-group.selectable:hover {
  box-shadow: var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default));
}
.react-flow__node-input.selectable.selected,
.react-flow__node-input.selectable:focus,
.react-flow__node-input.selectable:focus-visible,
.react-flow__node-default.selectable.selected,
.react-flow__node-default.selectable:focus,
.react-flow__node-default.selectable:focus-visible,
.react-flow__node-output.selectable.selected,
.react-flow__node-output.selectable:focus,
.react-flow__node-output.selectable:focus-visible,
.react-flow__node-group.selectable.selected,
.react-flow__node-group.selectable:focus,
.react-flow__node-group.selectable:focus-visible {
  box-shadow: var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default));
}
.react-flow__node-group {
  background-color: var(--xy-node-group-background-color, var(--xy-node-group-background-color-default));
}
.react-flow__nodesselection-rect,
.react-flow__selection {
  background: var(--xy-selection-background-color, var(--xy-selection-background-color-default));
  border: var(--xy-selection-border, var(--xy-selection-border-default));
}
.react-flow__nodesselection-rect:focus,
.react-flow__nodesselection-rect:focus-visible,
.react-flow__selection:focus,
.react-flow__selection:focus-visible {
  outline: none;
}
.react-flow__controls-button:hover {
  background: var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );
  color: var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) );
}
.react-flow__controls-button:disabled {
  pointer-events: none;
}
.react-flow__controls-button:disabled svg {
  fill-opacity: 0.4;
}
.react-flow__controls-button:last-child {
  border-bottom: none;
}
.react-flow__controls.horizontal .react-flow__controls-button {
  border-bottom: none;
  border-right: 1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );
}
.react-flow__controls.horizontal .react-flow__controls-button:last-child {
  border-right: none;
}
.react-flow__resize-control {
  position: absolute;
}
.react-flow__resize-control.left,
.react-flow__resize-control.right {
  cursor: ew-resize;
}
.react-flow__resize-control.top,
.react-flow__resize-control.bottom {
  cursor: ns-resize;
}
.react-flow__resize-control.top.left,
.react-flow__resize-control.bottom.right {
  cursor: nwse-resize;
}
.react-flow__resize-control.bottom.left,
.react-flow__resize-control.top.right {
  cursor: nesw-resize;
}
.react-flow__resize-control.handle {
  width: 5px;
  height: 5px;
  border: 1px solid #fff;
  border-radius: 1px;
  background-color: var(--xy-resize-background-color, var(--xy-resize-background-color-default));
  translate: -50% -50%;
}
.react-flow__resize-control.handle.left {
  left: 0;
  top: 50%;
}
.react-flow__resize-control.handle.right {
  left: 100%;
  top: 50%;
}
.react-flow__resize-control.handle.top {
  left: 50%;
  top: 0;
}
.react-flow__resize-control.handle.bottom {
  left: 50%;
  top: 100%;
}
.react-flow__resize-control.handle.top.left {
  left: 0;
}
.react-flow__resize-control.handle.bottom.left {
  left: 0;
}
.react-flow__resize-control.handle.top.right {
  left: 100%;
}
.react-flow__resize-control.handle.bottom.right {
  left: 100%;
}
.react-flow__resize-control.line {
  border-color: var(--xy-resize-background-color, var(--xy-resize-background-color-default));
  border-width: 0;
  border-style: solid;
}
.react-flow__resize-control.line.left,
.react-flow__resize-control.line.right {
  width: 1px;
  transform: translate(-50%, 0);
  top: 0;
  height: 100%;
}
.react-flow__resize-control.line.left {
  left: 0;
  border-left-width: 1px;
}
.react-flow__resize-control.line.right {
  left: 100%;
  border-right-width: 1px;
}
.react-flow__resize-control.line.top,
.react-flow__resize-control.line.bottom {
  height: 1px;
  transform: translate(0, -50%);
  left: 0;
  width: 100%;
}
.react-flow__resize-control.line.top {
  top: 0;
  border-top-width: 1px;
}
.react-flow__resize-control.line.bottom {
  border-bottom-width: 1px;
  top: 100%;
}
.react-flow__edge-textbg {
  fill: var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default));
}
.react-flow__edge-text {
  fill: var(--xy-edge-label-color, var(--xy-edge-label-color-default));
}
/*# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbXBvbmVudHMveHlmbG93LXJlYWN0LmNzcyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyogdGhpcyBnZXRzIGV4cG9ydGVkIGFzIHN0eWxlLmNzcyBhbmQgY2FuIGJlIHVzZWQgZm9yIHRoZSBkZWZhdWx0IHRoZW1pbmcgKi9cbi8qIHRoZXNlIGFyZSB0aGUgbmVjZXNzYXJ5IHN0eWxlcyBmb3IgUmVhY3QvU3ZlbHRlIEZsb3csIHRoZXkgZ2V0IHVzZWQgYnkgYmFzZS5jc3MgYW5kIHN0eWxlLmNzcyAqL1xuXG4vKiBGaXggZm9yIGVkZ2VzIHBvc2l0aW9uaW5nIGlzc3VlcyB3aGVuIENTUyB0cmFuc2Zvcm1zIGFyZSBhcHBsaWVkICovXG4ucmVhY3QtZmxvd19fZWRnZXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lICFpbXBvcnRhbnQ7XG59XG4ucmVhY3QtZmxvdyB7XG4gIGRpcmVjdGlvbjogbHRyO1xuXG4gIC0teHktZWRnZS1zdHJva2UtZGVmYXVsdDogI2IxYjFiNztcbiAgLS14eS1lZGdlLXN0cm9rZS13aWR0aC1kZWZhdWx0OiAxO1xuICAtLXh5LWVkZ2Utc3Ryb2tlLXNlbGVjdGVkLWRlZmF1bHQ6ICM1NTU7XG5cbiAgLS14eS1jb25uZWN0aW9ubGluZS1zdHJva2UtZGVmYXVsdDogI2IxYjFiNztcbiAgLS14eS1jb25uZWN0aW9ubGluZS1zdHJva2Utd2lkdGgtZGVmYXVsdDogMTtcblxuICAtLXh5LWF0dHJpYnV0aW9uLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuXG4gIC0teHktbWluaW1hcC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICNmZmY7XG4gIC0teHktbWluaW1hcC1tYXNrLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogcmdiYSgyNDAsIDI0MCwgMjQwLCAwLjYpO1xuICAtLXh5LW1pbmltYXAtbWFzay1zdHJva2UtY29sb3ItZGVmYXVsdDogdHJhbnNwYXJlbnQ7XG4gIC0teHktbWluaW1hcC1tYXNrLXN0cm9rZS13aWR0aC1kZWZhdWx0OiAxO1xuICAtLXh5LW1pbmltYXAtbm9kZS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICNlMmUyZTI7XG4gIC0teHktbWluaW1hcC1ub2RlLXN0cm9rZS1jb2xvci1kZWZhdWx0OiB0cmFuc3BhcmVudDtcbiAgLS14eS1taW5pbWFwLW5vZGUtc3Ryb2tlLXdpZHRoLWRlZmF1bHQ6IDI7XG5cbiAgLS14eS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHRyYW5zcGFyZW50O1xuICAtLXh5LWJhY2tncm91bmQtcGF0dGVybi1kb3RzLWNvbG9yLWRlZmF1bHQ6ICM5MTkxOWE7XG4gIC0teHktYmFja2dyb3VuZC1wYXR0ZXJuLWxpbmVzLWNvbG9yLWRlZmF1bHQ6ICNlZWU7XG4gIC0teHktYmFja2dyb3VuZC1wYXR0ZXJuLWNyb3NzLWNvbG9yLWRlZmF1bHQ6ICNlMmUyZTI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXh5LWJhY2tncm91bmQtY29sb3IsIHZhcigtLXh5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCkpO1xuICAtLXh5LW5vZGUtY29sb3ItZGVmYXVsdDogaW5oZXJpdDtcbiAgLS14eS1ub2RlLWJvcmRlci1kZWZhdWx0OiAxcHggc29saWQgIzFhMTkyYjtcbiAgLS14eS1ub2RlLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogI2ZmZjtcbiAgLS14eS1ub2RlLWdyb3VwLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogcmdiYSgyNDAsIDI0MCwgMjQwLCAwLjI1KTtcbiAgLS14eS1ub2RlLWJveHNoYWRvdy1ob3Zlci1kZWZhdWx0OiAwIDFweCA0cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gIC0teHktbm9kZS1ib3hzaGFkb3ctc2VsZWN0ZWQtZGVmYXVsdDogMCAwIDAgMC41cHggIzFhMTkyYjtcbiAgLS14eS1ub2RlLWJvcmRlci1yYWRpdXMtZGVmYXVsdDogM3B4O1xuXG4gIC0teHktaGFuZGxlLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogIzFhMTkyYjtcbiAgLS14eS1oYW5kbGUtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6ICNmZmY7XG5cbiAgLS14eS1zZWxlY3Rpb24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiByZ2JhKDAsIDg5LCAyMjAsIDAuMDgpO1xuICAtLXh5LXNlbGVjdGlvbi1ib3JkZXItZGVmYXVsdDogMXB4IGRvdHRlZCByZ2JhKDAsIDg5LCAyMjAsIDAuOCk7XG5cbiAgLS14eS1jb250cm9scy1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAjZmVmZWZlO1xuICAtLXh5LWNvbnRyb2xzLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWRlZmF1bHQ6ICNmNGY0ZjQ7XG4gIC0teHktY29udHJvbHMtYnV0dG9uLWNvbG9yLWRlZmF1bHQ6IGluaGVyaXQ7XG4gIC0teHktY29udHJvbHMtYnV0dG9uLWNvbG9yLWhvdmVyLWRlZmF1bHQ6IGluaGVyaXQ7XG4gIC0teHktY29udHJvbHMtYnV0dG9uLWJvcmRlci1jb2xvci1kZWZhdWx0OiAjZWVlO1xuICAtLXh5LWNvbnRyb2xzLWJveC1zaGFkb3ctZGVmYXVsdDogMCAwIDJweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcblxuICAtLXh5LWVkZ2UtbGFiZWwtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAjZmZmZmZmO1xuICAtLXh5LWVkZ2UtbGFiZWwtY29sb3ItZGVmYXVsdDogaW5oZXJpdDtcbiAgLS14eS1yZXNpemUtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAjMzM2N2Q5O1xufVxuLnJlYWN0LWZsb3cuZGFyayB7XG4gIC0teHktZWRnZS1zdHJva2UtZGVmYXVsdDogIzNlM2UzZTtcbiAgLS14eS1lZGdlLXN0cm9rZS13aWR0aC1kZWZhdWx0OiAxO1xuICAtLXh5LWVkZ2Utc3Ryb2tlLXNlbGVjdGVkLWRlZmF1bHQ6ICM3MjcyNzI7XG5cbiAgLS14eS1jb25uZWN0aW9ubGluZS1zdHJva2UtZGVmYXVsdDogI2IxYjFiNztcbiAgLS14eS1jb25uZWN0aW9ubGluZS1zdHJva2Utd2lkdGgtZGVmYXVsdDogMTtcblxuICAtLXh5LWF0dHJpYnV0aW9uLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogcmdiYSgxNTAsIDE1MCwgMTUwLCAwLjI1KTtcblxuICAtLXh5LW1pbmltYXAtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAjMTQxNDE0O1xuICAtLXh5LW1pbmltYXAtbWFzay1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHJnYmEoNjAsIDYwLCA2MCwgMC42KTtcbiAgLS14eS1taW5pbWFwLW1hc2stc3Ryb2tlLWNvbG9yLWRlZmF1bHQ6IHRyYW5zcGFyZW50O1xuICAtLXh5LW1pbmltYXAtbWFzay1zdHJva2Utd2lkdGgtZGVmYXVsdDogMTtcbiAgLS14eS1taW5pbWFwLW5vZGUtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAjMmIyYjJiO1xuICAtLXh5LW1pbmltYXAtbm9kZS1zdHJva2UtY29sb3ItZGVmYXVsdDogdHJhbnNwYXJlbnQ7XG4gIC0teHktbWluaW1hcC1ub2RlLXN0cm9rZS13aWR0aC1kZWZhdWx0OiAyO1xuXG4gIC0teHktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAjMTQxNDE0O1xuICAtLXh5LWJhY2tncm91bmQtcGF0dGVybi1kb3RzLWNvbG9yLWRlZmF1bHQ6ICM3Nzc7XG4gIC0teHktYmFja2dyb3VuZC1wYXR0ZXJuLWxpbmVzLWNvbG9yLWRlZmF1bHQ6ICM3Nzc7XG4gIC0teHktYmFja2dyb3VuZC1wYXR0ZXJuLWNyb3NzLWNvbG9yLWRlZmF1bHQ6ICM3Nzc7XG4gIC0teHktbm9kZS1jb2xvci1kZWZhdWx0OiAjZjhmOGY4O1xuICAtLXh5LW5vZGUtYm9yZGVyLWRlZmF1bHQ6IDFweCBzb2xpZCAjM2MzYzNjO1xuICAtLXh5LW5vZGUtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAjMWUxZTFlO1xuICAtLXh5LW5vZGUtZ3JvdXAtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiByZ2JhKDI0MCwgMjQwLCAyNDAsIDAuMjUpO1xuICAtLXh5LW5vZGUtYm94c2hhZG93LWhvdmVyLWRlZmF1bHQ6IDAgMXB4IDRweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbiAgLS14eS1ub2RlLWJveHNoYWRvdy1zZWxlY3RlZC1kZWZhdWx0OiAwIDAgMCAwLjVweCAjOTk5O1xuXG4gIC0teHktaGFuZGxlLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogI2JlYmViZTtcbiAgLS14eS1oYW5kbGUtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6ICMxZTFlMWU7XG5cbiAgLS14eS1zZWxlY3Rpb24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiByZ2JhKDIwMCwgMjAwLCAyMjAsIDAuMDgpO1xuICAtLXh5LXNlbGVjdGlvbi1ib3JkZXItZGVmYXVsdDogMXB4IGRvdHRlZCByZ2JhKDIwMCwgMjAwLCAyMjAsIDAuOCk7XG5cbiAgLS14eS1jb250cm9scy1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAjMmIyYjJiO1xuICAtLXh5LWNvbnRyb2xzLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWRlZmF1bHQ6ICMzZTNlM2U7XG4gIC0teHktY29udHJvbHMtYnV0dG9uLWNvbG9yLWRlZmF1bHQ6ICNmOGY4Zjg7XG4gIC0teHktY29udHJvbHMtYnV0dG9uLWNvbG9yLWhvdmVyLWRlZmF1bHQ6ICNmZmY7XG4gIC0teHktY29udHJvbHMtYnV0dG9uLWJvcmRlci1jb2xvci1kZWZhdWx0OiAjNWI1YjViO1xuICAtLXh5LWNvbnRyb2xzLWJveC1zaGFkb3ctZGVmYXVsdDogMCAwIDJweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcblxuICAtLXh5LWVkZ2UtbGFiZWwtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAjMTQxNDE0O1xuICAtLXh5LWVkZ2UtbGFiZWwtY29sb3ItZGVmYXVsdDogI2Y4ZjhmODtcbn1cbi5yZWFjdC1mbG93X19iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0teHktYmFja2dyb3VuZC1jb2xvci1wcm9wcywgdmFyKC0teHktYmFja2dyb3VuZC1jb2xvciwgdmFyKC0teHktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSkpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogLTE7XG59XG4ucmVhY3QtZmxvd19fY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG4ucmVhY3QtZmxvd19fcGFuZSB7XG4gIHotaW5kZXg6IDE7XG59XG4ucmVhY3QtZmxvd19fcGFuZS5kcmFnZ2FibGUge1xuICAgIGN1cnNvcjogZ3JhYjtcbiAgfVxuLnJlYWN0LWZsb3dfX3BhbmUuZHJhZ2dpbmcge1xuICAgIGN1cnNvcjogZ3JhYmJpbmc7XG4gIH1cbi5yZWFjdC1mbG93X19wYW5lLnNlbGVjdGlvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4ucmVhY3QtZmxvd19fdmlld3BvcnQge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHotaW5kZXg6IDI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnJlYWN0LWZsb3dfX3JlbmRlcmVyIHtcbiAgei1pbmRleDogNDtcbn1cbi5yZWFjdC1mbG93X19zZWxlY3Rpb24ge1xuICB6LWluZGV4OiA2O1xufVxuLnJlYWN0LWZsb3dfX25vZGVzc2VsZWN0aW9uLXJlY3Q6Zm9jdXMsXG4ucmVhY3QtZmxvd19fbm9kZXNzZWxlY3Rpb24tcmVjdDpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5yZWFjdC1mbG93X19lZGdlLXBhdGgge1xuICBzdHJva2U6IHZhcigtLXh5LWVkZ2Utc3Ryb2tlLCB2YXIoLS14eS1lZGdlLXN0cm9rZS1kZWZhdWx0KSk7XG4gIHN0cm9rZS13aWR0aDogdmFyKC0teHktZWRnZS1zdHJva2Utd2lkdGgsIHZhcigtLXh5LWVkZ2Utc3Ryb2tlLXdpZHRoLWRlZmF1bHQpKTtcbiAgZmlsbDogbm9uZTtcbn1cbi5yZWFjdC1mbG93X19jb25uZWN0aW9uLXBhdGgge1xuICBzdHJva2U6IHZhcigtLXh5LWNvbm5lY3Rpb25saW5lLXN0cm9rZSwgdmFyKC0teHktY29ubmVjdGlvbmxpbmUtc3Ryb2tlLWRlZmF1bHQpKTtcbiAgc3Ryb2tlLXdpZHRoOiB2YXIoLS14eS1jb25uZWN0aW9ubGluZS1zdHJva2Utd2lkdGgsIHZhcigtLXh5LWNvbm5lY3Rpb25saW5lLXN0cm9rZS13aWR0aC1kZWZhdWx0KSk7XG4gIGZpbGw6IG5vbmU7XG59XG4ucmVhY3QtZmxvdyAucmVhY3QtZmxvd19fZWRnZXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4ucmVhY3QtZmxvdyAucmVhY3QtZmxvd19fZWRnZXMgc3ZnIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbi5yZWFjdC1mbG93X19lZGdlIHtcbiAgcG9pbnRlci1ldmVudHM6IHZpc2libGVTdHJva2U7XG59XG4ucmVhY3QtZmxvd19fZWRnZS5zZWxlY3RhYmxlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbi5yZWFjdC1mbG93X19lZGdlLmFuaW1hdGVkIHBhdGgge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDU7XG4gICAgYW5pbWF0aW9uOiBkYXNoZHJhdyAwLjVzIGxpbmVhciBpbmZpbml0ZTtcbiAgfVxuLnJlYWN0LWZsb3dfX2VkZ2UuYW5pbWF0ZWQgcGF0aC5yZWFjdC1mbG93X19lZGdlLWludGVyYWN0aW9uIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiBub25lO1xuICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgfVxuLnJlYWN0LWZsb3dfX2VkZ2UuaW5hY3RpdmUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4ucmVhY3QtZmxvd19fZWRnZS5zZWxlY3RlZCxcbiAgLnJlYWN0LWZsb3dfX2VkZ2U6Zm9jdXMsXG4gIC5yZWFjdC1mbG93X19lZGdlOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbi5yZWFjdC1mbG93X19lZGdlLnNlbGVjdGVkIC5yZWFjdC1mbG93X19lZGdlLXBhdGgsXG4gIC5yZWFjdC1mbG93X19lZGdlLnNlbGVjdGFibGU6Zm9jdXMgLnJlYWN0LWZsb3dfX2VkZ2UtcGF0aCxcbiAgLnJlYWN0LWZsb3dfX2VkZ2Uuc2VsZWN0YWJsZTpmb2N1cy12aXNpYmxlIC5yZWFjdC1mbG93X19lZGdlLXBhdGgge1xuICAgIHN0cm9rZTogdmFyKC0teHktZWRnZS1zdHJva2Utc2VsZWN0ZWQsIHZhcigtLXh5LWVkZ2Utc3Ryb2tlLXNlbGVjdGVkLWRlZmF1bHQpKTtcbiAgfVxuLnJlYWN0LWZsb3dfX2VkZ2UtdGV4dHdyYXBwZXIge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIH1cbi5yZWFjdC1mbG93X19lZGdlIC5yZWFjdC1mbG93X19lZGdlLXRleHQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG4vKiBBcnJvd2hlYWQgbWFya2VyIHN0eWxlcyAtIHVzZSBDU1MgY3VzdG9tIHByb3BlcnRpZXMgYXMgZGVmYXVsdCAqL1xuLnJlYWN0LWZsb3dfX2Fycm93aGVhZCBwb2x5bGluZSB7XG4gIGZpbGw6IHZhcigtLXh5LWVkZ2Utc3Ryb2tlLCB2YXIoLS14eS1lZGdlLXN0cm9rZS1kZWZhdWx0KSk7XG4gIHN0cm9rZTogdmFyKC0teHktZWRnZS1zdHJva2UsIHZhcigtLXh5LWVkZ2Utc3Ryb2tlLWRlZmF1bHQpKTtcbn1cbi5yZWFjdC1mbG93X19jb25uZWN0aW9uIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ucmVhY3QtZmxvd19fY29ubmVjdGlvbiAuYW5pbWF0ZWQge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDU7XG4gICAgYW5pbWF0aW9uOiBkYXNoZHJhdyAwLjVzIGxpbmVhciBpbmZpbml0ZTtcbiAgfVxuc3ZnLnJlYWN0LWZsb3dfX2Nvbm5lY3Rpb25saW5lIHtcbiAgei1pbmRleDogMTAwMTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5yZWFjdC1mbG93X19ub2RlcyB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG59XG4ucmVhY3QtZmxvd19fbm9kZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4ucmVhY3QtZmxvd19fbm9kZS5zZWxlY3RhYmxlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbi5yZWFjdC1mbG93X19ub2RlLmRyYWdnYWJsZSB7XG4gICAgY3Vyc29yOiBncmFiO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIH1cbi5yZWFjdC1mbG93X19ub2RlLmRyYWdnYWJsZS5kcmFnZ2luZyB7XG4gICAgICBjdXJzb3I6IGdyYWJiaW5nO1xuICAgIH1cbi5yZWFjdC1mbG93X19ub2Rlc3NlbGVjdGlvbiB7XG4gIHotaW5kZXg6IDM7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5yZWFjdC1mbG93X19ub2Rlc3NlbGVjdGlvbi1yZWN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICBjdXJzb3I6IGdyYWI7XG4gIH1cbi5yZWFjdC1mbG93X19oYW5kbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBtaW4td2lkdGg6IDVweDtcbiAgbWluLWhlaWdodDogNXB4O1xuICB3aWR0aDogNnB4O1xuICBoZWlnaHQ6IDZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0teHktaGFuZGxlLWJhY2tncm91bmQtY29sb3IsIHZhcigtLXh5LWhhbmRsZS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0teHktaGFuZGxlLWJvcmRlci1jb2xvciwgdmFyKC0teHktaGFuZGxlLWJvcmRlci1jb2xvci1kZWZhdWx0KSk7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG4ucmVhY3QtZmxvd19faGFuZGxlLmNvbm5lY3Rpbmdmcm9tIHtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICB9XG4ucmVhY3QtZmxvd19faGFuZGxlLmNvbm5lY3Rpb25pbmRpY2F0b3Ige1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgY3Vyc29yOiBjcm9zc2hhaXI7XG4gIH1cbi5yZWFjdC1mbG93X19oYW5kbGUtYm90dG9tIHtcbiAgICB0b3A6IGF1dG87XG4gICAgbGVmdDogNTAlO1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA1MCUpO1xuICB9XG4ucmVhY3QtZmxvd19faGFuZGxlLXRvcCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgfVxuLnJlYWN0LWZsb3dfX2hhbmRsZS1sZWZ0IHtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB9XG4ucmVhY3QtZmxvd19faGFuZGxlLXJpZ2h0IHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC01MCUpO1xuICB9XG4ucmVhY3QtZmxvd19fZWRnZXVwZGF0ZXIge1xuICBjdXJzb3I6IG1vdmU7XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG59XG4ucmVhY3QtZmxvd19fcGFuZS5zZWxlY3Rpb24gLnJlYWN0LWZsb3dfX3BhbmVsIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ucmVhY3QtZmxvd19fcGFuZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDU7XG4gIG1hcmdpbjogMTVweDtcbn1cbi5yZWFjdC1mbG93X19wYW5lbC50b3Age1xuICAgIHRvcDogMDtcbiAgfVxuLnJlYWN0LWZsb3dfX3BhbmVsLmJvdHRvbSB7XG4gICAgYm90dG9tOiAwO1xuICB9XG4ucmVhY3QtZmxvd19fcGFuZWwudG9wLmNlbnRlciwgLnJlYWN0LWZsb3dfX3BhbmVsLmJvdHRvbS5jZW50ZXIge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNXB4KSB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbi5yZWFjdC1mbG93X19wYW5lbC5sZWZ0IHtcbiAgICBsZWZ0OiAwO1xuICB9XG4ucmVhY3QtZmxvd19fcGFuZWwucmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICB9XG4ucmVhY3QtZmxvd19fcGFuZWwubGVmdC5jZW50ZXIsIC5yZWFjdC1mbG93X19wYW5lbC5yaWdodC5jZW50ZXIge1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuLnJlYWN0LWZsb3dfX2F0dHJpYnV0aW9uIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS14eS1hdHRyaWJ1dGlvbi1iYWNrZ3JvdW5kLWNvbG9yLCB2YXIoLS14eS1hdHRyaWJ1dGlvbi1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpKTtcbiAgcGFkZGluZzogMnB4IDNweDtcbiAgbWFyZ2luOiAwO1xufVxuLnJlYWN0LWZsb3dfX2F0dHJpYnV0aW9uIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogIzk5OTtcbiAgfVxuQGtleWZyYW1lcyBkYXNoZHJhdyB7XG4gIGZyb20ge1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAxMDtcbiAgfVxufVxuLnJlYWN0LWZsb3dfX2VkZ2VsYWJlbC1yZW5kZXJlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cbi5yZWFjdC1mbG93X192aWV3cG9ydC1wb3J0YWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbi5yZWFjdC1mbG93X19taW5pbWFwIHtcbiAgYmFja2dyb3VuZDogdmFyKFxuICAgIC0teHktbWluaW1hcC1iYWNrZ3JvdW5kLWNvbG9yLXByb3BzLFxuICAgIHZhcigtLXh5LW1pbmltYXAtYmFja2dyb3VuZC1jb2xvciwgdmFyKC0teHktbWluaW1hcC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpKVxuICApO1xufVxuLnJlYWN0LWZsb3dfX21pbmltYXAtc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuLnJlYWN0LWZsb3dfX21pbmltYXAtbWFzayB7XG4gICAgZmlsbDogdmFyKFxuICAgICAgLS14eS1taW5pbWFwLW1hc2stYmFja2dyb3VuZC1jb2xvci1wcm9wcyxcbiAgICAgIHZhcigtLXh5LW1pbmltYXAtbWFzay1iYWNrZ3JvdW5kLWNvbG9yLCB2YXIoLS14eS1taW5pbWFwLW1hc2stYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSlcbiAgICApO1xuICAgIHN0cm9rZTogdmFyKFxuICAgICAgLS14eS1taW5pbWFwLW1hc2stc3Ryb2tlLWNvbG9yLXByb3BzLFxuICAgICAgdmFyKC0teHktbWluaW1hcC1tYXNrLXN0cm9rZS1jb2xvciwgdmFyKC0teHktbWluaW1hcC1tYXNrLXN0cm9rZS1jb2xvci1kZWZhdWx0KSlcbiAgICApO1xuICAgIHN0cm9rZS13aWR0aDogdmFyKFxuICAgICAgLS14eS1taW5pbWFwLW1hc2stc3Ryb2tlLXdpZHRoLXByb3BzLFxuICAgICAgdmFyKC0teHktbWluaW1hcC1tYXNrLXN0cm9rZS13aWR0aCwgdmFyKC0teHktbWluaW1hcC1tYXNrLXN0cm9rZS13aWR0aC1kZWZhdWx0KSlcbiAgICApO1xuICB9XG4ucmVhY3QtZmxvd19fbWluaW1hcC1ub2RlIHtcbiAgICBmaWxsOiB2YXIoXG4gICAgICAtLXh5LW1pbmltYXAtbm9kZS1iYWNrZ3JvdW5kLWNvbG9yLXByb3BzLFxuICAgICAgdmFyKC0teHktbWluaW1hcC1ub2RlLWJhY2tncm91bmQtY29sb3IsIHZhcigtLXh5LW1pbmltYXAtbm9kZS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpKVxuICAgICk7XG4gICAgc3Ryb2tlOiB2YXIoXG4gICAgICAtLXh5LW1pbmltYXAtbm9kZS1zdHJva2UtY29sb3ItcHJvcHMsXG4gICAgICB2YXIoLS14eS1taW5pbWFwLW5vZGUtc3Ryb2tlLWNvbG9yLCB2YXIoLS14eS1taW5pbWFwLW5vZGUtc3Ryb2tlLWNvbG9yLWRlZmF1bHQpKVxuICAgICk7XG4gICAgc3Ryb2tlLXdpZHRoOiB2YXIoXG4gICAgICAtLXh5LW1pbmltYXAtbm9kZS1zdHJva2Utd2lkdGgtcHJvcHMsXG4gICAgICB2YXIoLS14eS1taW5pbWFwLW5vZGUtc3Ryb2tlLXdpZHRoLCB2YXIoLS14eS1taW5pbWFwLW5vZGUtc3Ryb2tlLXdpZHRoLWRlZmF1bHQpKVxuICAgICk7XG4gIH1cbi5yZWFjdC1mbG93X19iYWNrZ3JvdW5kLXBhdHRlcm4uZG90cyB7XG4gICAgZmlsbDogdmFyKFxuICAgICAgLS14eS1iYWNrZ3JvdW5kLXBhdHRlcm4tY29sb3ItcHJvcHMsXG4gICAgICB2YXIoLS14eS1iYWNrZ3JvdW5kLXBhdHRlcm4tY29sb3IsIHZhcigtLXh5LWJhY2tncm91bmQtcGF0dGVybi1kb3RzLWNvbG9yLWRlZmF1bHQpKVxuICAgICk7XG4gIH1cbi5yZWFjdC1mbG93X19iYWNrZ3JvdW5kLXBhdHRlcm4ubGluZXMge1xuICAgIHN0cm9rZTogdmFyKFxuICAgICAgLS14eS1iYWNrZ3JvdW5kLXBhdHRlcm4tY29sb3ItcHJvcHMsXG4gICAgICB2YXIoLS14eS1iYWNrZ3JvdW5kLXBhdHRlcm4tY29sb3IsIHZhcigtLXh5LWJhY2tncm91bmQtcGF0dGVybi1saW5lcy1jb2xvci1kZWZhdWx0KSlcbiAgICApO1xuICB9XG4ucmVhY3QtZmxvd19fYmFja2dyb3VuZC1wYXR0ZXJuLmNyb3NzIHtcbiAgICBzdHJva2U6IHZhcihcbiAgICAgIC0teHktYmFja2dyb3VuZC1wYXR0ZXJuLWNvbG9yLXByb3BzLFxuICAgICAgdmFyKC0teHktYmFja2dyb3VuZC1wYXR0ZXJuLWNvbG9yLCB2YXIoLS14eS1iYWNrZ3JvdW5kLXBhdHRlcm4tY3Jvc3MtY29sb3ItZGVmYXVsdCkpXG4gICAgKTtcbiAgfVxuLnJlYWN0LWZsb3dfX2NvbnRyb2xzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYm94LXNoYWRvdzogdmFyKC0teHktY29udHJvbHMtYm94LXNoYWRvdywgdmFyKC0teHktY29udHJvbHMtYm94LXNoYWRvdy1kZWZhdWx0KSk7XG59XG4ucmVhY3QtZmxvd19fY29udHJvbHMuaG9yaXpvbnRhbCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuLnJlYWN0LWZsb3dfX2NvbnRyb2xzLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGhlaWdodDogMjZweDtcbiAgICB3aWR0aDogMjZweDtcbiAgICBwYWRkaW5nOiA0cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXh5LWNvbnRyb2xzLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLCB2YXIoLS14eS1jb250cm9scy1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkXG4gICAgICB2YXIoXG4gICAgICAgIC0teHktY29udHJvbHMtYnV0dG9uLWJvcmRlci1jb2xvci1wcm9wcyxcbiAgICAgICAgdmFyKC0teHktY29udHJvbHMtYnV0dG9uLWJvcmRlci1jb2xvciwgdmFyKC0teHktY29udHJvbHMtYnV0dG9uLWJvcmRlci1jb2xvci1kZWZhdWx0KSlcbiAgICAgICk7XG4gICAgY29sb3I6IHZhcihcbiAgICAgIC0teHktY29udHJvbHMtYnV0dG9uLWNvbG9yLXByb3BzLFxuICAgICAgdmFyKC0teHktY29udHJvbHMtYnV0dG9uLWNvbG9yLCB2YXIoLS14eS1jb250cm9scy1idXR0b24tY29sb3ItZGVmYXVsdCkpXG4gICAgKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cbi5yZWFjdC1mbG93X19jb250cm9scy1idXR0b24gc3ZnIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMnB4O1xuICAgICAgbWF4LWhlaWdodDogMTJweDtcbiAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICB9XG4ucmVhY3QtZmxvd19fZWRnZS51cGRhdGluZyAucmVhY3QtZmxvd19fZWRnZS1wYXRoIHtcbiAgICAgIHN0cm9rZTogIzc3NztcbiAgICB9XG4ucmVhY3QtZmxvd19fZWRnZS10ZXh0IHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbi5yZWFjdC1mbG93X19ub2RlLnNlbGVjdGFibGU6Zm9jdXMsXG4gIC5yZWFjdC1mbG93X19ub2RlLnNlbGVjdGFibGU6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuLnJlYWN0LWZsb3dfX25vZGUtaW5wdXQsXG4ucmVhY3QtZmxvd19fbm9kZS1kZWZhdWx0LFxuLnJlYWN0LWZsb3dfX25vZGUtb3V0cHV0LFxuLnJlYWN0LWZsb3dfX25vZGUtZ3JvdXAge1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS14eS1ub2RlLWJvcmRlci1yYWRpdXMsIHZhcigtLXh5LW5vZGUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KSk7XG4gIHdpZHRoOiAxNTBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogdmFyKC0teHktbm9kZS1jb2xvciwgdmFyKC0teHktbm9kZS1jb2xvci1kZWZhdWx0KSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiB2YXIoLS14eS1ub2RlLWJvcmRlciwgdmFyKC0teHktbm9kZS1ib3JkZXItZGVmYXVsdCkpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS14eS1ub2RlLWJhY2tncm91bmQtY29sb3IsIHZhcigtLXh5LW5vZGUtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSk7XG59XG4ucmVhY3QtZmxvd19fbm9kZS1pbnB1dC5zZWxlY3RhYmxlOmhvdmVyLCAucmVhY3QtZmxvd19fbm9kZS1kZWZhdWx0LnNlbGVjdGFibGU6aG92ZXIsIC5yZWFjdC1mbG93X19ub2RlLW91dHB1dC5zZWxlY3RhYmxlOmhvdmVyLCAucmVhY3QtZmxvd19fbm9kZS1ncm91cC5zZWxlY3RhYmxlOmhvdmVyIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLXh5LW5vZGUtYm94c2hhZG93LWhvdmVyLCB2YXIoLS14eS1ub2RlLWJveHNoYWRvdy1ob3Zlci1kZWZhdWx0KSk7XG4gICAgfVxuLnJlYWN0LWZsb3dfX25vZGUtaW5wdXQuc2VsZWN0YWJsZS5zZWxlY3RlZCxcbiAgICAucmVhY3QtZmxvd19fbm9kZS1pbnB1dC5zZWxlY3RhYmxlOmZvY3VzLFxuICAgIC5yZWFjdC1mbG93X19ub2RlLWlucHV0LnNlbGVjdGFibGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAucmVhY3QtZmxvd19fbm9kZS1kZWZhdWx0LnNlbGVjdGFibGUuc2VsZWN0ZWQsXG4gICAgLnJlYWN0LWZsb3dfX25vZGUtZGVmYXVsdC5zZWxlY3RhYmxlOmZvY3VzLFxuICAgIC5yZWFjdC1mbG93X19ub2RlLWRlZmF1bHQuc2VsZWN0YWJsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5yZWFjdC1mbG93X19ub2RlLW91dHB1dC5zZWxlY3RhYmxlLnNlbGVjdGVkLFxuICAgIC5yZWFjdC1mbG93X19ub2RlLW91dHB1dC5zZWxlY3RhYmxlOmZvY3VzLFxuICAgIC5yZWFjdC1mbG93X19ub2RlLW91dHB1dC5zZWxlY3RhYmxlOmZvY3VzLXZpc2libGUsXG4gICAgLnJlYWN0LWZsb3dfX25vZGUtZ3JvdXAuc2VsZWN0YWJsZS5zZWxlY3RlZCxcbiAgICAucmVhY3QtZmxvd19fbm9kZS1ncm91cC5zZWxlY3RhYmxlOmZvY3VzLFxuICAgIC5yZWFjdC1mbG93X19ub2RlLWdyb3VwLnNlbGVjdGFibGU6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS14eS1ub2RlLWJveHNoYWRvdy1zZWxlY3RlZCwgdmFyKC0teHktbm9kZS1ib3hzaGFkb3ctc2VsZWN0ZWQtZGVmYXVsdCkpO1xuICAgIH1cbi5yZWFjdC1mbG93X19ub2RlLWdyb3VwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0teHktbm9kZS1ncm91cC1iYWNrZ3JvdW5kLWNvbG9yLCB2YXIoLS14eS1ub2RlLWdyb3VwLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCkpO1xufVxuLnJlYWN0LWZsb3dfX25vZGVzc2VsZWN0aW9uLXJlY3QsXG4ucmVhY3QtZmxvd19fc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogdmFyKC0teHktc2VsZWN0aW9uLWJhY2tncm91bmQtY29sb3IsIHZhcigtLXh5LXNlbGVjdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpKTtcbiAgYm9yZGVyOiB2YXIoLS14eS1zZWxlY3Rpb24tYm9yZGVyLCB2YXIoLS14eS1zZWxlY3Rpb24tYm9yZGVyLWRlZmF1bHQpKTtcbn1cbi5yZWFjdC1mbG93X19ub2Rlc3NlbGVjdGlvbi1yZWN0OmZvY3VzLFxuICAucmVhY3QtZmxvd19fbm9kZXNzZWxlY3Rpb24tcmVjdDpmb2N1cy12aXNpYmxlLFxuICAucmVhY3QtZmxvd19fc2VsZWN0aW9uOmZvY3VzLFxuICAucmVhY3QtZmxvd19fc2VsZWN0aW9uOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbi5yZWFjdC1mbG93X19jb250cm9scy1idXR0b246aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogdmFyKFxuICAgICAgICAtLXh5LWNvbnRyb2xzLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXByb3BzLFxuICAgICAgICB2YXIoLS14eS1jb250cm9scy1idXR0b24tYmFja2dyb3VuZC1jb2xvci1ob3ZlciwgdmFyKC0teHktY29udHJvbHMtYnV0dG9uLWJhY2tncm91bmQtY29sb3ItaG92ZXItZGVmYXVsdCkpXG4gICAgICApO1xuICAgICAgY29sb3I6IHZhcihcbiAgICAgICAgLS14eS1jb250cm9scy1idXR0b24tY29sb3ItaG92ZXItcHJvcHMsXG4gICAgICAgIHZhcigtLXh5LWNvbnRyb2xzLWJ1dHRvbi1jb2xvci1ob3ZlciwgdmFyKC0teHktY29udHJvbHMtYnV0dG9uLWNvbG9yLWhvdmVyLWRlZmF1bHQpKVxuICAgICAgKTtcbiAgICB9XG4ucmVhY3QtZmxvd19fY29udHJvbHMtYnV0dG9uOmRpc2FibGVkIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbi5yZWFjdC1mbG93X19jb250cm9scy1idXR0b246ZGlzYWJsZWQgc3ZnIHtcbiAgICAgICAgZmlsbC1vcGFjaXR5OiAwLjQ7XG4gICAgICB9XG4ucmVhY3QtZmxvd19fY29udHJvbHMtYnV0dG9uOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cbi5yZWFjdC1mbG93X19jb250cm9scy5ob3Jpem9udGFsIC5yZWFjdC1mbG93X19jb250cm9scy1idXR0b24ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWRcbiAgICAgIHZhcihcbiAgICAgICAgLS14eS1jb250cm9scy1idXR0b24tYm9yZGVyLWNvbG9yLXByb3BzLFxuICAgICAgICB2YXIoLS14eS1jb250cm9scy1idXR0b24tYm9yZGVyLWNvbG9yLCB2YXIoLS14eS1jb250cm9scy1idXR0b24tYm9yZGVyLWNvbG9yLWRlZmF1bHQpKVxuICAgICAgKTtcbiAgfVxuLnJlYWN0LWZsb3dfX2NvbnRyb2xzLmhvcml6b250YWwgLnJlYWN0LWZsb3dfX2NvbnRyb2xzLWJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIH1cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC5sZWZ0LFxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLnJpZ2h0IHtcbiAgY3Vyc29yOiBldy1yZXNpemU7XG59XG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wudG9wLFxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmJvdHRvbSB7XG4gIGN1cnNvcjogbnMtcmVzaXplO1xufVxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLnRvcC5sZWZ0LFxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmJvdHRvbS5yaWdodCB7XG4gIGN1cnNvcjogbndzZS1yZXNpemU7XG59XG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wuYm90dG9tLmxlZnQsXG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wudG9wLnJpZ2h0IHtcbiAgY3Vyc29yOiBuZXN3LXJlc2l6ZTtcbn1cbi8qIGhhbmRsZSBzdHlsZXMgKi9cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC5oYW5kbGUge1xuICB3aWR0aDogNXB4O1xuICBoZWlnaHQ6IDVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS14eS1yZXNpemUtYmFja2dyb3VuZC1jb2xvciwgdmFyKC0teHktcmVzaXplLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCkpO1xuICB0cmFuc2xhdGU6IC01MCUgLTUwJTtcbn1cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC5oYW5kbGUubGVmdCB7XG4gIGxlZnQ6IDA7XG4gIHRvcDogNTAlO1xufVxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmhhbmRsZS5yaWdodCB7XG4gIGxlZnQ6IDEwMCU7XG4gIHRvcDogNTAlO1xufVxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmhhbmRsZS50b3Age1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogMDtcbn1cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC5oYW5kbGUuYm90dG9tIHtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDEwMCU7XG59XG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wuaGFuZGxlLnRvcC5sZWZ0IHtcbiAgbGVmdDogMDtcbn1cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC5oYW5kbGUuYm90dG9tLmxlZnQge1xuICBsZWZ0OiAwO1xufVxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmhhbmRsZS50b3AucmlnaHQge1xuICBsZWZ0OiAxMDAlO1xufVxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmhhbmRsZS5ib3R0b20ucmlnaHQge1xuICBsZWZ0OiAxMDAlO1xufVxuLyogbGluZSBzdHlsZXMgKi9cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC5saW5lIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS14eS1yZXNpemUtYmFja2dyb3VuZC1jb2xvciwgdmFyKC0teHktcmVzaXplLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCkpO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wubGluZS5sZWZ0LFxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmxpbmUucmlnaHQge1xuICB3aWR0aDogMXB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wubGluZS5sZWZ0IHtcbiAgbGVmdDogMDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbn1cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC5saW5lLnJpZ2h0IHtcbiAgbGVmdDogMTAwJTtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG59XG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wubGluZS50b3AsXG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wubGluZS5ib3R0b20ge1xuICBoZWlnaHQ6IDFweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmxpbmUudG9wIHtcbiAgdG9wOiAwO1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG59XG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wubGluZS5ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gIHRvcDogMTAwJTtcbn1cbi5yZWFjdC1mbG93X19lZGdlLXRleHRiZyB7XG4gIGZpbGw6IHZhcigtLXh5LWVkZ2UtbGFiZWwtYmFja2dyb3VuZC1jb2xvciwgdmFyKC0teHktZWRnZS1sYWJlbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpKTtcbn1cbi5yZWFjdC1mbG93X19lZGdlLXRleHQge1xuICBmaWxsOiB2YXIoLS14eS1lZGdlLWxhYmVsLWNvbG9yLCB2YXIoLS14eS1lZGdlLWxhYmVsLWNvbG9yLWRlZmF1bHQpKTtcbn0iXSwKICAibWFwcGluZ3MiOiAiQUFJQSxDQUFDO0FBQ0MsWUFBVTtBQUNWLE9BQUs7QUFDTCxRQUFNO0FBQ04sU0FBTztBQUNQLFVBQVE7QUFDUixrQkFBZ0I7QUFDbEI7QUFDQSxDQUFDO0FBQ0MsYUFBVztBQUVYLDRCQUEwQjtBQUMxQixrQ0FBZ0M7QUFDaEMscUNBQW1DO0FBRW5DLHNDQUFvQztBQUNwQyw0Q0FBMEM7QUFFMUMsNkNBQTJDLEtBQUssR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUU7QUFFL0QseUNBQXVDO0FBQ3ZDLDhDQUE0QyxLQUFLLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFF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 */
