llm-agent-plugin/styles.css
2025-09-15 01:55:28 +03:00

597 lines
46 KiB
CSS

/* node_modules/reactflow/dist/style.css */
.react-flow {
direction: ltr;
}
.react-flow__container {
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.react-flow__pane {
z-index: 1;
cursor: -webkit-grab;
cursor: grab;
}
.react-flow__pane.selection {
cursor: pointer;
}
.react-flow__pane.dragging {
cursor: -webkit-grabbing;
cursor: grabbing;
}
.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 .react-flow__edges {
pointer-events: none;
overflow: visible;
}
.react-flow__edge-path,
.react-flow__connection-path {
stroke: #b1b1b7;
stroke-width: 1;
fill: none;
}
.react-flow__edge {
pointer-events: visibleStroke;
cursor: pointer;
}
.react-flow__edge.animated path {
stroke-dasharray: 5;
-webkit-animation: dashdraw 0.5s linear infinite;
animation: dashdraw 0.5s linear infinite;
}
.react-flow__edge.animated path.react-flow__edge-interaction {
stroke-dasharray: none;
-webkit-animation: 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:focus .react-flow__edge-path,
.react-flow__edge:focus-visible .react-flow__edge-path {
stroke: #555;
}
.react-flow__edge-textwrapper {
pointer-events: all;
}
.react-flow__edge-textbg {
fill: white;
}
.react-flow__edge .react-flow__edge-text {
pointer-events: none;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
}
.react-flow__connection {
pointer-events: none;
}
.react-flow__connection .animated {
stroke-dasharray: 5;
-webkit-animation: dashdraw 0.5s linear infinite;
animation: dashdraw 0.5s linear infinite;
}
.react-flow__connectionline {
z-index: 1001;
}
.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: -webkit-grab;
cursor: grab;
}
.react-flow__node.dragging {
cursor: -webkit-grabbing;
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: -webkit-grab;
cursor: grab;
}
.react-flow__handle {
position: absolute;
pointer-events: none;
min-width: 5px;
min-height: 5px;
width: 6px;
height: 6px;
background: #1a192b;
border: 1px solid white;
border-radius: 100%;
}
.react-flow__handle.connectionindicator {
pointer-events: all;
cursor: crosshair;
}
.react-flow__handle-bottom {
top: auto;
left: 50%;
bottom: -4px;
transform: translate(-50%, 0);
}
.react-flow__handle-top {
left: 50%;
top: -4px;
transform: translate(-50%, 0);
}
.react-flow__handle-left {
top: 50%;
left: -4px;
transform: translate(0, -50%);
}
.react-flow__handle-right {
right: -4px;
top: 50%;
transform: translate(0, -50%);
}
.react-flow__edgeupdater {
cursor: move;
pointer-events: all;
}
.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.left {
left: 0;
}
.react-flow__panel.right {
right: 0;
}
.react-flow__panel.center {
left: 50%;
transform: translateX(-50%);
}
.react-flow__attribution {
font-size: 10px;
background: rgba(255, 255, 255, 0.5);
padding: 2px 3px;
margin: 0;
}
.react-flow__attribution a {
text-decoration: none;
color: #999;
}
@-webkit-keyframes dashdraw {
from {
stroke-dashoffset: 10;
}
}
@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;
}
.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-default,
.react-flow__node-input,
.react-flow__node-output,
.react-flow__node-group {
padding: 10px;
border-radius: 3px;
width: 150px;
font-size: 12px;
color: #222;
text-align: center;
border-width: 1px;
border-style: solid;
border-color: #1a192b;
background-color: white;
}
.react-flow__node-default.selectable:hover,
.react-flow__node-input.selectable:hover,
.react-flow__node-output.selectable:hover,
.react-flow__node-group.selectable:hover {
box-shadow: 0 1px 4px 1px rgba(0, 0, 0, 0.08);
}
.react-flow__node-default.selectable.selected,
.react-flow__node-default.selectable:focus,
.react-flow__node-default.selectable:focus-visible,
.react-flow__node-input.selectable.selected,
.react-flow__node-input.selectable:focus,
.react-flow__node-input.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: 0 0 0 0.5px #1a192b;
}
.react-flow__node-group {
background-color: rgba(240, 240, 240, 0.25);
}
.react-flow__nodesselection-rect,
.react-flow__selection {
background: rgba(0, 89, 220, 0.08);
border: 1px dotted rgba(0, 89, 220, 0.8);
}
.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 {
box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.08);
}
.react-flow__controls-button {
border: none;
background: #fefefe;
border-bottom: 1px solid #eee;
box-sizing: content-box;
display: flex;
justify-content: center;
align-items: center;
width: 16px;
height: 16px;
cursor: pointer;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
padding: 5px;
}
.react-flow__controls-button:hover {
background: #f4f4f4;
}
.react-flow__controls-button svg {
width: 100%;
max-width: 12px;
max-height: 12px;
}
.react-flow__controls-button:disabled {
pointer-events: none;
}
.react-flow__controls-button:disabled svg {
fill-opacity: 0.4;
}
.react-flow__minimap {
background-color: #fff;
}
.react-flow__minimap svg {
display: block;
}
.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: 4px;
height: 4px;
border: 1px solid #fff;
border-radius: 1px;
background-color: #3367d9;
transform: 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: #3367d9;
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%;
}
/* src/css/styles.css */
:root {
--llm-user-border-color: #78B0E3;
--llm-user-background-color: #C5E1FF;
--llm-llm-border-color: #A8D8AD;
--llm-llm-background-color: #DBF5DD;
--llm-tool-border-color: #FFD180;
--llm-tool-background-color: #FFF0C9;
--llm-error-border-color: #FF6666;
--llm-error-background-color: #FFCCCC;
--llm-assistant-border-color: #B0B0B0;
--llm-assistant-background-color: #E0E0E0;
--node-padding: 10px;
--node-border-radius: 5px;
--node-font-size: 14px;
--node-font-weight: bold;
--node-text-color: #333;
--node-text-align: center;
--font-text-size: 14px;
--text-normal: #333;
--text-muted: #666;
--background-secondary-alt: #f0f0f0;
--font-monospace: "Roboto Mono", monospace;
--text-accent: #007bff;
}
.llm-agent-chat-panel .message-type-user {
border: 1px solid var(--llm-user-border-color);
background-color: var(--llm-user-background-color);
}
.llm-agent-chat-panel .message-type-llm {
border: 1px solid var(--llm-llm-border-color);
background-color: var(--llm-llm-background-color);
}
.llm-agent-chat-panel .message-type-tool {
border: 1px solid var(--llm-tool-border-color);
background-color: var(--llm-tool-background-color);
}
.llm-agent-chat-panel .message-type-error {
border: 1px solid var(--llm-error-border-color);
background-color: var(--llm-error-background-color);
}
.llm-agent-chat-panel .message-type-assistant {
border: 1px solid var(--llm-assistant-border-color);
background-color: var(--llm-assistant-background-color);
}
.llm-agent-chat-panel .message {
margin-bottom: 10px;
display: flex;
flex-direction: column;
padding: 10px;
border-radius: 5px;
max-width: 80%;
word-break: break-word;
overflow-wrap: break-word;
}
.llm-agent-chat-panel .message.user {
margin-left: auto;
}
.llm-agent-chat-panel .message.assistant {
margin-right: auto;
}
.chat-meta {
margin-bottom: 5px;
}
.chat-sender-info {
display: flex;
align-items: center;
gap: 8px;
}
.chat-message-icon svg {
width: 20px;
height: 20px;
flex-shrink: 0;
}
.chat-role-label {
font-weight: bold;
font-size: 0.9em;
color: var(--text-muted);
}
.chat-message-content {
font-size: var(--font-text-size);
line-height: 1.5;
color: var(--text-normal);
user-select: text;
}
.react-flow__node-default,
.react-flow__node-user,
.react-flow__node-llm,
.react-flow__node-tool,
.react-flow__node-error,
.react-flow__node-assistant {
padding: var(--node-padding);
border-radius: var(--node-border-radius);
text-align: var(--node-text-align);
font-size: var(--node-font-size);
font-weight: var(--node-font-weight);
color: var(--node-text-color);
}
.react-flow__node-user {
border: 1px solid var(--llm-user-border-color);
background-color: var(--llm-user-background-color);
}
.react-flow__node-llm {
border: 1px solid var(--llm-llm-border-color);
background-color: var(--llm-llm-background-color);
}
.react-flow__node-tool {
border: 1px solid var(--llm-tool-border-color);
background-color: var(--llm-tool-background-color);
}
.react-flow__node-error {
border: 1px solid var(--llm-error-border-color);
background-color: var(--llm-error-background-color);
}
.react-flow__node-assistant {
border: 1px solid var(--llm-assistant-border-color);
background-color: var(--llm-assistant-background-color);
}
.llm-agent-chat-panel {
display: flex;
flex-direction: column;
height: 100%;
}
.chat-history {
flex-grow: 1;
overflow-y: auto;
padding: 10px;
-webkit-user-select: text;
-moz-user-select: text;
user-select: text;
scroll-behavior: smooth;
}
.chat-message-content code {
background-color: var(--background-secondary-alt);
border-radius: 4px;
padding: 2px 4px;
font-family: var(--font-monospace);
font-size: 0.9em;
color: var(--text-accent);
}
.chat-input-form {
display: flex;
padding: 10px;
border-top: 1px solid #eee;
gap: 10px;
}
.command-input {
position: relative;
flex-grow: 1;
}
#message-input {
width: 100%;
padding: 8px;
border: 1px solid #ccc;
border-radius: 4px;
box-sizing: border-box;
}
#send-button {
padding: 8px 15px;
background-color: #007bff;
color: white;
border: none;
border-radius: 4px;
cursor: pointer;
}
#send-button:hover {
background-color: #0056b3;
}
.suggestions {
position: absolute;
bottom: 100%;
left: 0;
right: 0;
background-color: white;
border: 1px solid #ccc;
border-radius: 4px;
max-height: 150px;
overflow-y: auto;
z-index: 10;
margin-bottom: 5px;
}
.suggestion-item {
padding: 8px 10px;
cursor: pointer;
}
.suggestion-item:hover {
background-color: #f0f0f0;
}
/*# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsibm9kZV9tb2R1bGVzL3JlYWN0Zmxvdy9kaXN0L3N0eWxlLmNzcyIsICJzcmMvY3NzL3N0eWxlcy5jc3MiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qIHRoaXMgZ2V0cyBleHBvcnRlZCBhcyBzdHlsZS5jc3MgYW5kIGNhbiBiZSB1c2VkIGZvciB0aGUgZGVmYXVsdCB0aGVtaW5nICovXG4vKiB0aGVzZSBhcmUgdGhlIG5lY2Vzc2FyeSBzdHlsZXMgZm9yIFJlYWN0IEZsb3csIHRoZXkgZ2V0IHVzZWQgYnkgYmFzZS5jc3MgYW5kIHN0eWxlLmNzcyAqL1xuLnJlYWN0LWZsb3cge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cbi5yZWFjdC1mbG93X19jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cbi5yZWFjdC1mbG93X19wYW5lIHtcbiAgei1pbmRleDogMTtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gIGN1cnNvcjogZ3JhYjtcbn1cbi5yZWFjdC1mbG93X19wYW5lLnNlbGVjdGlvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4ucmVhY3QtZmxvd19fcGFuZS5kcmFnZ2luZyB7XG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICAgIGN1cnNvcjogZ3JhYmJpbmc7XG4gIH1cbi5yZWFjdC1mbG93X192aWV3cG9ydCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgei1pbmRleDogMjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ucmVhY3QtZmxvd19fcmVuZGVyZXIge1xuICB6LWluZGV4OiA0O1xufVxuLnJlYWN0LWZsb3dfX3NlbGVjdGlvbiB7XG4gIHotaW5kZXg6IDY7XG59XG4ucmVhY3QtZmxvd19fbm9kZXNzZWxlY3Rpb24tcmVjdDpmb2N1cyxcbi5yZWFjdC1mbG93X19ub2Rlc3NlbGVjdGlvbi1yZWN0OmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiBub25lO1xufVxuLnJlYWN0LWZsb3cgLnJlYWN0LWZsb3dfX2VkZ2VzIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLnJlYWN0LWZsb3dfX2VkZ2UtcGF0aCxcbi5yZWFjdC1mbG93X19jb25uZWN0aW9uLXBhdGgge1xuICBzdHJva2U6ICNiMWIxYjc7XG4gIHN0cm9rZS13aWR0aDogMTtcbiAgZmlsbDogbm9uZTtcbn1cbi5yZWFjdC1mbG93X19lZGdlIHtcbiAgcG9pbnRlci1ldmVudHM6IHZpc2libGVTdHJva2U7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5yZWFjdC1mbG93X19lZGdlLmFuaW1hdGVkIHBhdGgge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDU7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IGRhc2hkcmF3IDAuNXMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBkYXNoZHJhdyAwLjVzIGxpbmVhciBpbmZpbml0ZTtcbiAgfVxuLnJlYWN0LWZsb3dfX2VkZ2UuYW5pbWF0ZWQgcGF0aC5yZWFjdC1mbG93X19lZGdlLWludGVyYWN0aW9uIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiBub25lO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBub25lO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG4ucmVhY3QtZmxvd19fZWRnZS5pbmFjdGl2ZSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbi5yZWFjdC1mbG93X19lZGdlLnNlbGVjdGVkLFxuICAucmVhY3QtZmxvd19fZWRnZTpmb2N1cyxcbiAgLnJlYWN0LWZsb3dfX2VkZ2U6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuLnJlYWN0LWZsb3dfX2VkZ2Uuc2VsZWN0ZWQgLnJlYWN0LWZsb3dfX2VkZ2UtcGF0aCxcbiAgLnJlYWN0LWZsb3dfX2VkZ2U6Zm9jdXMgLnJlYWN0LWZsb3dfX2VkZ2UtcGF0aCxcbiAgLnJlYWN0LWZsb3dfX2VkZ2U6Zm9jdXMtdmlzaWJsZSAucmVhY3QtZmxvd19fZWRnZS1wYXRoIHtcbiAgICBzdHJva2U6ICM1NTU7XG4gIH1cbi5yZWFjdC1mbG93X19lZGdlLXRleHR3cmFwcGVyIHtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICB9XG4ucmVhY3QtZmxvd19fZWRnZS10ZXh0Ymcge1xuICAgIGZpbGw6IHdoaXRlO1xuICB9XG4ucmVhY3QtZmxvd19fZWRnZSAucmVhY3QtZmxvd19fZWRnZS10ZXh0IHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuLnJlYWN0LWZsb3dfX2Nvbm5lY3Rpb24ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5yZWFjdC1mbG93X19jb25uZWN0aW9uIC5hbmltYXRlZCB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogNTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogZGFzaGRyYXcgMC41cyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgICAgICBhbmltYXRpb246IGRhc2hkcmF3IDAuNXMgbGluZWFyIGluZmluaXRlO1xuICB9XG4ucmVhY3QtZmxvd19fY29ubmVjdGlvbmxpbmUge1xuICB6LWluZGV4OiAxMDAxO1xufVxuLnJlYWN0LWZsb3dfX25vZGVzIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbn1cbi5yZWFjdC1mbG93X19ub2RlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xuICBjdXJzb3I6IGdyYWI7XG59XG4ucmVhY3QtZmxvd19fbm9kZS5kcmFnZ2luZyB7XG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICAgIGN1cnNvcjogZ3JhYmJpbmc7XG4gIH1cbi5yZWFjdC1mbG93X19ub2Rlc3NlbGVjdGlvbiB7XG4gIHotaW5kZXg6IDM7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5yZWFjdC1mbG93X19ub2Rlc3NlbGVjdGlvbi1yZWN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgICBjdXJzb3I6IGdyYWI7XG4gIH1cbi5yZWFjdC1mbG93X19oYW5kbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBtaW4td2lkdGg6IDVweDtcbiAgbWluLWhlaWdodDogNXB4O1xuICB3aWR0aDogNnB4O1xuICBoZWlnaHQ6IDZweDtcbiAgYmFja2dyb3VuZDogIzFhMTkyYjtcbiAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG4ucmVhY3QtZmxvd19faGFuZGxlLmNvbm5lY3Rpb25pbmRpY2F0b3Ige1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgY3Vyc29yOiBjcm9zc2hhaXI7XG4gIH1cbi5yZWFjdC1mbG93X19oYW5kbGUtYm90dG9tIHtcbiAgICB0b3A6IGF1dG87XG4gICAgbGVmdDogNTAlO1xuICAgIGJvdHRvbTogLTRweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgfVxuLnJlYWN0LWZsb3dfX2hhbmRsZS10b3Age1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IC00cHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gIH1cbi5yZWFjdC1mbG93X19oYW5kbGUtbGVmdCB7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogLTRweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgfVxuLnJlYWN0LWZsb3dfX2hhbmRsZS1yaWdodCB7XG4gICAgcmlnaHQ6IC00cHg7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIH1cbi5yZWFjdC1mbG93X19lZGdldXBkYXRlciB7XG4gIGN1cnNvcjogbW92ZTtcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbn1cbi5yZWFjdC1mbG93X19wYW5lbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogNTtcbiAgbWFyZ2luOiAxNXB4O1xufVxuLnJlYWN0LWZsb3dfX3BhbmVsLnRvcCB7XG4gICAgdG9wOiAwO1xuICB9XG4ucmVhY3QtZmxvd19fcGFuZWwuYm90dG9tIHtcbiAgICBib3R0b206IDA7XG4gIH1cbi5yZWFjdC1mbG93X19wYW5lbC5sZWZ0IHtcbiAgICBsZWZ0OiAwO1xuICB9XG4ucmVhY3QtZmxvd19fcGFuZWwucmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICB9XG4ucmVhY3QtZmxvd19fcGFuZWwuY2VudGVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG4ucmVhY3QtZmxvd19fYXR0cmlidXRpb24ge1xuICBmb250LXNpemU6IDEwcHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgcGFkZGluZzogMnB4IDNweDtcbiAgbWFyZ2luOiAwO1xufVxuLnJlYWN0LWZsb3dfX2F0dHJpYnV0aW9uIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogIzk5OTtcbiAgfVxuQC13ZWJraXQta2V5ZnJhbWVzIGRhc2hkcmF3IHtcbiAgZnJvbSB7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDEwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGRhc2hkcmF3IHtcbiAgZnJvbSB7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDEwO1xuICB9XG59XG4ucmVhY3QtZmxvd19fZWRnZWxhYmVsLXJlbmRlcmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbi5yZWFjdC1mbG93X19lZGdlLnVwZGF0aW5nIC5yZWFjdC1mbG93X19lZGdlLXBhdGgge1xuICAgICAgc3Ryb2tlOiAjNzc3O1xuICAgIH1cbi5yZWFjdC1mbG93X19lZGdlLXRleHQge1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgfVxuLnJlYWN0LWZsb3dfX25vZGUuc2VsZWN0YWJsZTpmb2N1cyxcbiAgLnJlYWN0LWZsb3dfX25vZGUuc2VsZWN0YWJsZTpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG4ucmVhY3QtZmxvd19fbm9kZS1kZWZhdWx0LFxuLnJlYWN0LWZsb3dfX25vZGUtaW5wdXQsXG4ucmVhY3QtZmxvd19fbm9kZS1vdXRwdXQsXG4ucmVhY3QtZmxvd19fbm9kZS1ncm91cCB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgd2lkdGg6IDE1MHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAjMjIyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICMxYTE5MmI7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuLnJlYWN0LWZsb3dfX25vZGUtZGVmYXVsdC5zZWxlY3RhYmxlOmhvdmVyLCAucmVhY3QtZmxvd19fbm9kZS1pbnB1dC5zZWxlY3RhYmxlOmhvdmVyLCAucmVhY3QtZmxvd19fbm9kZS1vdXRwdXQuc2VsZWN0YWJsZTpob3ZlciwgLnJlYWN0LWZsb3dfX25vZGUtZ3JvdXAuc2VsZWN0YWJsZTpob3ZlciB7XG4gICAgICBib3gtc2hhZG93OiAwIDFweCA0cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gICAgfVxuLnJlYWN0LWZsb3dfX25vZGUtZGVmYXVsdC5zZWxlY3RhYmxlLnNlbGVjdGVkLFxuICAgIC5yZWFjdC1mbG93X19ub2RlLWRlZmF1bHQuc2VsZWN0YWJsZTpmb2N1cyxcbiAgICAucmVhY3QtZmxvd19fbm9kZS1kZWZhdWx0LnNlbGVjdGFibGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAucmVhY3QtZmxvd19fbm9kZS1pbnB1dC5zZWxlY3RhYmxlLnNlbGVjdGVkLFxuICAgIC5yZWFjdC1mbG93X19ub2RlLWlucHV0LnNlbGVjdGFibGU6Zm9jdXMsXG4gICAgLnJlYWN0LWZsb3dfX25vZGUtaW5wdXQuc2VsZWN0YWJsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5yZWFjdC1mbG93X19ub2RlLW91dHB1dC5zZWxlY3RhYmxlLnNlbGVjdGVkLFxuICAgIC5yZWFjdC1mbG93X19ub2RlLW91dHB1dC5zZWxlY3RhYmxlOmZvY3VzLFxuICAgIC5yZWFjdC1mbG93X19ub2RlLW91dHB1dC5zZWxlY3RhYmxlOmZvY3VzLXZpc2libGUsXG4gICAgLnJlYWN0LWZsb3dfX25vZGUtZ3JvdXAuc2VsZWN0YWJsZS5zZWxlY3RlZCxcbiAgICAucmVhY3QtZmxvd19fbm9kZS1ncm91cC5zZWxlY3RhYmxlOmZvY3VzLFxuICAgIC5yZWFjdC1mbG93X19ub2RlLWdyb3VwLnNlbGVjdGFibGU6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjVweCAjMWExOTJiO1xuICAgIH1cbi5yZWFjdC1mbG93X19ub2RlLWdyb3VwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDAsIDI0MCwgMjQwLCAwLjI1KTtcbn1cbi5yZWFjdC1mbG93X19ub2Rlc3NlbGVjdGlvbi1yZWN0LFxuLnJlYWN0LWZsb3dfX3NlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgODksIDIyMCwgMC4wOCk7XG4gIGJvcmRlcjogMXB4IGRvdHRlZCByZ2JhKDAsIDg5LCAyMjAsIDAuOCk7XG59XG4ucmVhY3QtZmxvd19fbm9kZXNzZWxlY3Rpb24tcmVjdDpmb2N1cyxcbiAgLnJlYWN0LWZsb3dfX25vZGVzc2VsZWN0aW9uLXJlY3Q6Zm9jdXMtdmlzaWJsZSxcbiAgLnJlYWN0LWZsb3dfX3NlbGVjdGlvbjpmb2N1cyxcbiAgLnJlYWN0LWZsb3dfX3NlbGVjdGlvbjpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG4ucmVhY3QtZmxvd19fY29udHJvbHMge1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xufVxuLnJlYWN0LWZsb3dfX2NvbnRyb2xzLWJ1dHRvbiB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgcGFkZGluZzogNXB4O1xuICB9XG4ucmVhY3QtZmxvd19fY29udHJvbHMtYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gICAgfVxuLnJlYWN0LWZsb3dfX2NvbnRyb2xzLWJ1dHRvbiBzdmcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEycHg7XG4gICAgICBtYXgtaGVpZ2h0OiAxMnB4O1xuICAgIH1cbi5yZWFjdC1mbG93X19jb250cm9scy1idXR0b246ZGlzYWJsZWQge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuLnJlYWN0LWZsb3dfX2NvbnRyb2xzLWJ1dHRvbjpkaXNhYmxlZCBzdmcge1xuICAgICAgICBmaWxsLW9wYWNpdHk6IDAuNDtcbiAgICAgIH1cbi5yZWFjdC1mbG93X19taW5pbWFwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbi5yZWFjdC1mbG93X19taW5pbWFwIHN2ZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmxlZnQsXG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wucmlnaHQge1xuICBjdXJzb3I6IGV3LXJlc2l6ZTtcbn1cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC50b3AsXG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wuYm90dG9tIHtcbiAgY3Vyc29yOiBucy1yZXNpemU7XG59XG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wudG9wLmxlZnQsXG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wuYm90dG9tLnJpZ2h0IHtcbiAgY3Vyc29yOiBud3NlLXJlc2l6ZTtcbn1cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC5ib3R0b20ubGVmdCxcbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC50b3AucmlnaHQge1xuICBjdXJzb3I6IG5lc3ctcmVzaXplO1xufVxuLyogaGFuZGxlIHN0eWxlcyAqL1xuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmhhbmRsZSB7XG4gIHdpZHRoOiA0cHg7XG4gIGhlaWdodDogNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzY3ZDk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmhhbmRsZS5sZWZ0IHtcbiAgbGVmdDogMDtcbiAgdG9wOiA1MCU7XG59XG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wuaGFuZGxlLnJpZ2h0IHtcbiAgbGVmdDogMTAwJTtcbiAgdG9wOiA1MCU7XG59XG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wuaGFuZGxlLnRvcCB7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiAwO1xufVxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmhhbmRsZS5ib3R0b20ge1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogMTAwJTtcbn1cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC5oYW5kbGUudG9wLmxlZnQge1xuICBsZWZ0OiAwO1xufVxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmhhbmRsZS5ib3R0b20ubGVmdCB7XG4gIGxlZnQ6IDA7XG59XG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wuaGFuZGxlLnRvcC5yaWdodCB7XG4gIGxlZnQ6IDEwMCU7XG59XG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wuaGFuZGxlLmJvdHRvbS5yaWdodCB7XG4gIGxlZnQ6IDEwMCU7XG59XG4vKiBsaW5lIHN0eWxlcyAqL1xuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmxpbmUge1xuICBib3JkZXItY29sb3I6ICMzMzY3ZDk7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbn1cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC5saW5lLmxlZnQsXG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wubGluZS5yaWdodCB7XG4gIHdpZHRoOiAxcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICB0b3A6IDA7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC5saW5lLmxlZnQge1xuICBsZWZ0OiAwO1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xufVxuLnJlYWN0LWZsb3dfX3Jlc2l6ZS1jb250cm9sLmxpbmUucmlnaHQge1xuICBsZWZ0OiAxMDAlO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDFweDtcbn1cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC5saW5lLnRvcCxcbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC5saW5lLmJvdHRvbSB7XG4gIGhlaWdodDogMXB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4ucmVhY3QtZmxvd19fcmVzaXplLWNvbnRyb2wubGluZS50b3Age1xuICB0b3A6IDA7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbn1cbi5yZWFjdC1mbG93X19yZXNpemUtY29udHJvbC5saW5lLmJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgdG9wOiAxMDAlO1xufVxuIiwgIi8qIHNyYy9zdHlsZXMuY3NzIFx1MDQzOFx1MDQzQlx1MDQzOCBcdTA0M0FcdTA0NDNcdTA0MzRcdTA0MzAgXHUwNDQyXHUwNDRCIFx1MDQzNFx1MDQzRVx1MDQzMVx1MDQzMFx1MDQzMlx1MDQzQlx1MDQ0Rlx1MDQzNVx1MDQ0OFx1MDQ0QyBcdTA0NDFcdTA0NDJcdTA0MzhcdTA0M0JcdTA0MzggKi9cclxuXHJcbjpyb290IHtcclxuICAgIC8qIFx1MDQyNlx1MDQzMlx1MDQzNVx1MDQ0Mlx1MDQzMCBcdTA0NDFcdTA0M0VcdTA0M0VcdTA0MzFcdTA0NDlcdTA0MzVcdTA0M0RcdTA0MzhcdTA0MzkgXHUwNDQ3XHUwNDMwXHUwNDQyXHUwNDMwICovXHJcbiAgICAtLWxsbS11c2VyLWJvcmRlci1jb2xvcjogIzc4QjBFMztcclxuICAgIC0tbGxtLXVzZXItYmFja2dyb3VuZC1jb2xvcjogI0M1RTFGRjtcclxuICAgIC0tbGxtLWxsbS1ib3JkZXItY29sb3I6ICNBOEQ4QUQ7XHJcbiAgICAtLWxsbS1sbG0tYmFja2dyb3VuZC1jb2xvcjogI0RCRjVERDtcclxuICAgIC0tbGxtLXRvb2wtYm9yZGVyLWNvbG9yOiAjRkZEMTgwO1xyXG4gICAgLS1sbG0tdG9vbC1iYWNrZ3JvdW5kLWNvbG9yOiAjRkZGMEM5O1xyXG4gICAgLS1sbG0tZXJyb3ItYm9yZGVyLWNvbG9yOiAjRkY2NjY2O1xyXG4gICAgLS1sbG0tZXJyb3ItYmFja2dyb3VuZC1jb2xvcjogI0ZGQ0NDQztcclxuICAgIC0tbGxtLWFzc2lzdGFudC1ib3JkZXItY29sb3I6ICNCMEIwQjA7IC8qIFx1MDQxRFx1MDQzNVx1MDQzOVx1MDQ0Mlx1MDQ0MFx1MDQzMFx1MDQzQlx1MDQ0Q1x1MDQzRFx1MDQ0Qlx1MDQzOSBcdTA0NDFcdTA0MzVcdTA0NDBcdTA0NEJcdTA0MzkgXHUwNDM0XHUwNDNCXHUwNDRGIFx1MDQzMFx1MDQ0MVx1MDQ0MVx1MDQzOFx1MDQ0MVx1MDQ0Mlx1MDQzNVx1MDQzRFx1MDQ0Mlx1MDQzMCAqL1xyXG4gICAgLS1sbG0tYXNzaXN0YW50LWJhY2tncm91bmQtY29sb3I6ICNFMEUwRTA7IC8qIFx1MDQyMVx1MDQzMlx1MDQzNVx1MDQ0Mlx1MDQzQlx1MDQzRS1cdTA0NDFcdTA0MzVcdTA0NDBcdTA0NEJcdTA0MzkgXHUwNDQ0XHUwNDNFXHUwNDNEICovXHJcblxyXG4gICAgLyogXHUwNDFFXHUwNDMxXHUwNDQ5XHUwNDM4XHUwNDM1IFx1MDQ0MVx1MDQ0Mlx1MDQzOFx1MDQzQlx1MDQzOCBcdTA0NDNcdTA0MzdcdTA0M0JcdTA0M0VcdTA0MzIgXHUwNDMzXHUwNDQwXHUwNDMwXHUwNDQ0XHUwNDMwICovXHJcbiAgICAtLW5vZGUtcGFkZGluZzogMTBweDtcclxuICAgIC0tbm9kZS1ib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICAtLW5vZGUtZm9udC1zaXplOiAxNHB4O1xyXG4gICAgLS1ub2RlLWZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgLS1ub2RlLXRleHQtY29sb3I6ICMzMzM7XHJcbiAgICAtLW5vZGUtdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIC8qIFx1MDQxRlx1MDQzNVx1MDQ0MFx1MDQzNVx1MDQzQ1x1MDQzNVx1MDQzRFx1MDQzRFx1MDQ0Qlx1MDQzNSBcdTA0MzRcdTA0M0JcdTA0NEYgXHUwNDQyXHUwNDM1XHUwNDNBXHUwNDQxXHUwNDQyXHUwNDMwICovXHJcbiAgICAtLWZvbnQtdGV4dC1zaXplOiAxNHB4O1xyXG4gICAgLS10ZXh0LW5vcm1hbDogIzMzMztcclxuICAgIC0tdGV4dC1tdXRlZDogIzY2NjtcclxuICAgIC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0OiAjZjBmMGYwO1xyXG4gICAgLS1mb250LW1vbm9zcGFjZTogJ1JvYm90byBNb25vJywgbW9ub3NwYWNlO1xyXG4gICAgLS10ZXh0LWFjY2VudDogIzAwN2JmZjtcclxufVxyXG5cclxuLmxsbS1hZ2VudC1jaGF0LXBhbmVsIC5tZXNzYWdlLXR5cGUtdXNlciB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1sbG0tdXNlci1ib3JkZXItY29sb3IpOyAvKiBcdTA0MjZcdTA0MzJcdTA0MzVcdTA0NDIgXHUwNDM0XHUwNDNCXHUwNDRGIHVzZXIgKi9cclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxsbS11c2VyLWJhY2tncm91bmQtY29sb3IpOyAvKiBcdTA0MjFcdTA0MzJcdTA0MzVcdTA0NDJcdTA0M0JcdTA0M0UtXHUwNDMzXHUwNDNFXHUwNDNCXHUwNDQzXHUwNDMxXHUwNDNFXHUwNDM5IFx1MDQ0NFx1MDQzRVx1MDQzRCBcdTA0MzRcdTA0M0JcdTA0NEYgdXNlciAqL1xyXG59XHJcblxyXG4ubGxtLWFnZW50LWNoYXQtcGFuZWwgLm1lc3NhZ2UtdHlwZS1sbG0ge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGxtLWxsbS1ib3JkZXItY29sb3IpOyAvKiBcdTA0MjZcdTA0MzJcdTA0MzVcdTA0NDIgXHUwNDM0XHUwNDNCXHUwNDRGIGxsbSAqL1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGxtLWxsbS1iYWNrZ3JvdW5kLWNvbG9yKTsgLyogXHUwNDIxXHUwNDMyXHUwNDM1XHUwNDQyXHUwNDNCXHUwNDNFLVx1MDQzN1x1MDQzNVx1MDQzQlx1MDQzNVx1MDQzRFx1MDQ0Qlx1MDQzOSBcdTA0NDRcdTA0M0VcdTA0M0QgXHUwNDM0XHUwNDNCXHUwNDRGIGxsbSAqL1xyXG59XHJcblxyXG4ubGxtLWFnZW50LWNoYXQtcGFuZWwgLm1lc3NhZ2UtdHlwZS10b29sIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxsbS10b29sLWJvcmRlci1jb2xvcik7IC8qIFx1MDQyNlx1MDQzMlx1MDQzNVx1MDQ0MiBcdTA0MzRcdTA0M0JcdTA0NEYgdG9vbCAqL1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGxtLXRvb2wtYmFja2dyb3VuZC1jb2xvcik7IC8qIFx1MDQyMVx1MDQzMlx1MDQzNVx1MDQ0Mlx1MDQzQlx1MDQzRS1cdTA0M0VcdTA0NDBcdTA0MzBcdTA0M0RcdTA0MzZcdTA0MzVcdTA0MzJcdTA0NEJcdTA0MzkgXHUwNDQ0XHUwNDNFXHUwNDNEIFx1MDQzNFx1MDQzQlx1MDQ0RiB0b29sICovXHJcbn1cclxuXHJcbi5sbG0tYWdlbnQtY2hhdC1wYW5lbCAubWVzc2FnZS10eXBlLWVycm9yIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxsbS1lcnJvci1ib3JkZXItY29sb3IpOyAvKiBcdTA0MUFcdTA0NDBcdTA0MzBcdTA0NDFcdTA0M0RcdTA0NEJcdTA0MzkgXHUwNDQ2XHUwNDMyXHUwNDM1XHUwNDQyIFx1MDQzNFx1MDQzQlx1MDQ0RiBlcnJvciAqL1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGxtLWVycm9yLWJhY2tncm91bmQtY29sb3IpOyAvKiBcdTA0MjFcdTA0MzJcdTA0MzVcdTA0NDJcdTA0M0JcdTA0M0UtXHUwNDNBXHUwNDQwXHUwNDMwXHUwNDQxXHUwNDNEXHUwNDRCXHUwNDM5IFx1MDQ0NFx1MDQzRVx1MDQzRCBcdTA0MzRcdTA0M0JcdTA0NEYgZXJyb3IgKi9cclxufVxyXG5cclxuLmxsbS1hZ2VudC1jaGF0LXBhbmVsIC5tZXNzYWdlLXR5cGUtYXNzaXN0YW50IHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxsbS1hc3Npc3RhbnQtYm9yZGVyLWNvbG9yKTsgLyogXHUwNDI2XHUwNDMyXHUwNDM1XHUwNDQyIFx1MDQzNFx1MDQzQlx1MDQ0RiBhc3Npc3RhbnQgKi9cclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxsbS1hc3Npc3RhbnQtYmFja2dyb3VuZC1jb2xvcik7IC8qIFx1MDQyMVx1MDQzMlx1MDQzNVx1MDQ0Mlx1MDQzQlx1MDQzRS1cdTA0NDFcdTA0MzVcdTA0NDBcdTA0NEJcdTA0MzkgXHUwNDQ0XHUwNDNFXHUwNDNEIFx1MDQzNFx1MDQzQlx1MDQ0RiBhc3Npc3RhbnQgKi9cclxufVxyXG5cclxuLyogXHUwNDFFXHUwNDMxXHUwNDQ5XHUwNDM4XHUwNDM1IFx1MDQ0MVx1MDQ0Mlx1MDQzOFx1MDQzQlx1MDQzOCBcdTA0MzRcdTA0M0JcdTA0NEYgXHUwNDQxXHUwNDNFXHUwNDNFXHUwNDMxXHUwNDQ5XHUwNDM1XHUwNDNEXHUwNDM4XHUwNDM5ICovXHJcbi5sbG0tYWdlbnQtY2hhdC1wYW5lbCAubWVzc2FnZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgZGlzcGxheTogZmxleDsgLyogRmxleC1cdTA0M0FcdTA0M0VcdTA0M0RcdTA0NDJcdTA0MzVcdTA0MzlcdTA0M0RcdTA0MzVcdTA0NDAgXHUwNDM0XHUwNDNCXHUwNDRGIFx1MDQzMlx1MDQ0MVx1MDQzNVx1MDQzM1x1MDQzRSBcdTA0NDFcdTA0M0VcdTA0M0VcdTA0MzFcdTA0NDlcdTA0MzVcdTA0M0RcdTA0MzhcdTA0NEYgKi9cclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8qIFx1MDQyRFx1MDQzQlx1MDQzNVx1MDQzQ1x1MDQzNVx1MDQzRFx1MDQ0Mlx1MDQ0QiBcdTA0MzJcdTA0M0RcdTA0NDNcdTA0NDJcdTA0NDBcdTA0MzggXHUwNDQxXHUwNDNFXHUwNDNFXHUwNDMxXHUwNDQ5XHUwNDM1XHUwNDNEXHUwNDM4XHUwNDRGIFx1MDQzMVx1MDQ0M1x1MDQzNFx1MDQ0M1x1MDQ0MiBcdTA0MzJcdTA0NEJcdTA0NDFcdTA0NDJcdTA0NDBcdTA0MzBcdTA0MzhcdTA0MzJcdTA0MzBcdTA0NDJcdTA0NENcdTA0NDFcdTA0NEYgXHUwNDMyXHUwNDM1XHUwNDQwXHUwNDQyXHUwNDM4XHUwNDNBXHUwNDMwXHUwNDNCXHUwNDRDXHUwNDNEXHUwNDNFICovXHJcbiAgICBwYWRkaW5nOiAxMHB4OyAvKiBcdTA0MUVcdTA0MzFcdTA0NDlcdTA0MzhcdTA0MzUgXHUwNDNFXHUwNDQyXHUwNDQxXHUwNDQyXHUwNDQzXHUwNDNGXHUwNDRCIFx1MDQzNFx1MDQzQlx1MDQ0RiBcdTA0MzJcdTA0NDFcdTA0MzVcdTA0MzNcdTA0M0UgXHUwNDQxXHUwNDNFXHUwNDNFXHUwNDMxXHUwNDQ5XHUwNDM1XHUwNDNEXHUwNDM4XHUwNDRGICovXHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBtYXgtd2lkdGg6IDgwJTsgLyogXHUwNDFFXHUwNDMzXHUwNDQwXHUwNDMwXHUwNDNEXHUwNDM4XHUwNDQ3XHUwNDM1XHUwNDNEXHUwNDM4XHUwNDM1IFx1MDQ0OFx1MDQzOFx1MDQ0MFx1MDQzOFx1MDQzRFx1MDQ0QiBcdTA0NDFcdTA0M0VcdTA0M0VcdTA0MzFcdTA0NDlcdTA0MzVcdTA0M0RcdTA0MzhcdTA0NEYgKi9cclxuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IC8qIFx1MDQyMFx1MDQzMFx1MDQzN1x1MDQzMVx1MDQzOFx1MDQzNVx1MDQzRFx1MDQzOFx1MDQzNSBcdTA0NDFcdTA0M0JcdTA0M0VcdTA0MzIgXHUwNDM0XHUwNDNCXHUwNDRGIFx1MDQzNFx1MDQzQlx1MDQzOFx1MDQzRFx1MDQzRFx1MDQ0Qlx1MDQ0NSBcdTA0NDFcdTA0M0VcdTA0M0VcdTA0MzFcdTA0NDlcdTA0MzVcdTA0M0RcdTA0MzhcdTA0MzkgKi9cclxuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7IC8qIFx1MDQxRlx1MDQzNVx1MDQ0MFx1MDQzNVx1MDQzRFx1MDQzRVx1MDQ0MSBcdTA0NDFcdTA0M0JcdTA0M0VcdTA0MzIgKi9cclxufVxyXG5cclxuLmxsbS1hZ2VudC1jaGF0LXBhbmVsIC5tZXNzYWdlLnVzZXIge1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IC8qIFx1MDQxMlx1MDQ0Qlx1MDQ0MFx1MDQzMFx1MDQzMlx1MDQzRFx1MDQzOFx1MDQzMlx1MDQzMFx1MDQzRFx1MDQzOFx1MDQzNSBcdTA0M0ZcdTA0M0UgXHUwNDNGXHUwNDQwXHUwNDMwXHUwNDMyXHUwNDNFXHUwNDNDXHUwNDQzIFx1MDQzQVx1MDQ0MFx1MDQzMFx1MDQ0RSBcdTA0MzRcdTA0M0JcdTA0NEYgXHUwNDNGXHUwNDNFXHUwNDNCXHUwNDRDXHUwNDM3XHUwNDNFXHUwNDMyXHUwNDMwXHUwNDQyXHUwNDM1XHUwNDNCXHUwNDRGICovXHJcbn1cclxuXHJcbi5sbG0tYWdlbnQtY2hhdC1wYW5lbCAubWVzc2FnZS5hc3Npc3RhbnQge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyAvKiBcdTA0MTJcdTA0NEJcdTA0NDBcdTA0MzBcdTA0MzJcdTA0M0RcdTA0MzhcdTA0MzJcdTA0MzBcdTA0M0RcdTA0MzhcdTA0MzUgXHUwNDNGXHUwNDNFIFx1MDQzQlx1MDQzNVx1MDQzMlx1MDQzRVx1MDQzQ1x1MDQ0MyBcdTA0M0FcdTA0NDBcdTA0MzBcdTA0NEUgXHUwNDM0XHUwNDNCXHUwNDRGIFx1MDQzMFx1MDQ0MVx1MDQ0MVx1MDQzOFx1MDQ0MVx1MDQ0Mlx1MDQzNVx1MDQzRFx1MDQ0Mlx1MDQzMCwgXHUwNDM1XHUwNDQxXHUwNDNCXHUwNDM4IFx1MDQzRlx1MDQzRVx1MDQ0Mlx1MDQ0MFx1MDQzNVx1MDQzMVx1MDQ0M1x1MDQzNVx1MDQ0Mlx1MDQ0MVx1MDQ0RiAqL1xyXG59XHJcblxyXG4uY2hhdC1tZXRhIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDVweDsgLyogXHUwNDFFXHUwNDQyXHUwNDQxXHUwNDQyXHUwNDQzXHUwNDNGIFx1MDQzQ1x1MDQzNVx1MDQzNlx1MDQzNFx1MDQ0MyBcdTA0M0NcdTA0MzVcdTA0NDJcdTA0MzAtXHUwNDM4XHUwNDNEXHUwNDQ0XHUwNDNFXHUwNDQwXHUwNDNDXHUwNDMwXHUwNDQ2XHUwNDM4XHUwNDM1XHUwNDM5IFx1MDQzOCBcdTA0NDFcdTA0M0VcdTA0MzRcdTA0MzVcdTA0NDBcdTA0MzZcdTA0MzhcdTA0M0NcdTA0NEJcdTA0M0MgKi9cclxufVxyXG5cclxuLmNoYXQtc2VuZGVyLWluZm8ge1xyXG4gICAgZGlzcGxheTogZmxleDsgLyogXHUwNDE0XHUwNDM1XHUwNDNCXHUwNDMwXHUwNDM1XHUwNDNDIHNlbmRlci1pbmZvIGZsZXgtXHUwNDNBXHUwNDNFXHUwNDNEXHUwNDQyXHUwNDM1XHUwNDM5XHUwNDNEXHUwNDM1XHUwNDQwXHUwNDNFXHUwNDNDICovXHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyAvKiBcdTA0MTJcdTA0NEJcdTA0NDBcdTA0MzBcdTA0MzJcdTA0M0RcdTA0MzhcdTA0MzJcdTA0MzBcdTA0M0RcdTA0MzhcdTA0MzUgXHUwNDM4XHUwNDNBXHUwNDNFXHUwNDNEXHUwNDNBXHUwNDM4IFx1MDQzOCBcdTA0NDJcdTA0MzVcdTA0M0FcdTA0NDFcdTA0NDJcdTA0MzAgXHUwNDNGXHUwNDNFIFx1MDQ0Nlx1MDQzNVx1MDQzRFx1MDQ0Mlx1MDQ0MFx1MDQ0MyAqL1xyXG4gICAgZ2FwOiA4cHg7IC8qIFx1MDQyMFx1MDQzMFx1MDQ0MVx1MDQ0MVx1MDQ0Mlx1MDQzRVx1MDQ0Rlx1MDQzRFx1MDQzOFx1MDQzNSBcdTA0M0NcdTA0MzVcdTA0MzZcdTA0MzRcdTA0NDMgXHUwNDM4XHUwNDNBXHUwNDNFXHUwNDNEXHUwNDNBXHUwNDNFXHUwNDM5IFx1MDQzOCBcdTA0NDJcdTA0MzVcdTA0M0FcdTA0NDFcdTA0NDJcdTA0M0VcdTA0M0MgKi9cclxufVxyXG5cclxuLmNoYXQtbWVzc2FnZS1pY29uIHN2ZyB7XHJcbiAgICB3aWR0aDogMjBweDsgLyogXHUwNDIwXHUwNDMwXHUwNDM3XHUwNDNDXHUwNDM1XHUwNDQwIFx1MDQzOFx1MDQzQVx1MDQzRVx1MDQzRFx1MDQzQVx1MDQzOCAqL1xyXG4gICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgZmxleC1zaHJpbms6IDA7IC8qIFx1MDQxRlx1MDQ0MFx1MDQzNVx1MDQzNFx1MDQzRVx1MDQ0Mlx1MDQzMlx1MDQ0MFx1MDQzMFx1MDQ0OVx1MDQzMFx1MDQzNVx1MDQ0MiBcdTA0NDFcdTA0MzZcdTA0MzBcdTA0NDJcdTA0MzhcdTA0MzUgXHUwNDM4XHUwNDNBXHUwNDNFXHUwNDNEXHUwNDNBXHUwNDM4ICovXHJcbn1cclxuXHJcbi5jaGF0LXJvbGUtbGFiZWwge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBmb250LXNpemU6IDAuOWVtO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4uY2hhdC1tZXNzYWdlLWNvbnRlbnQge1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXRleHQtc2l6ZSk7XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuICAgIHVzZXItc2VsZWN0OiB0ZXh0OyAvKiBcdTA0MjBcdTA0MzBcdTA0MzdcdTA0NDBcdTA0MzVcdTA0NDhcdTA0MzhcdTA0NDJcdTA0NEMgXHUwNDMyXHUwNDRCXHUwNDM0XHUwNDM1XHUwNDNCXHUwNDM1XHUwNDNEXHUwNDM4XHUwNDM1IFx1MDQ0Mlx1MDQzNVx1MDQzQVx1MDQ0MVx1MDQ0Mlx1MDQzMCBcdTA0MzJcdTA0M0RcdTA0NDNcdTA0NDJcdTA0NDBcdTA0MzggXHUwNDQxXHUwNDNFXHUwNDM0XHUwNDM1XHUwNDQwXHUwNDM2XHUwNDM4XHUwNDNDXHUwNDNFXHUwNDMzXHUwNDNFICovXHJcbn1cclxuXHJcbi8qIFx1MDQyMVx1MDQ0Mlx1MDQzOFx1MDQzQlx1MDQzOCBcdTA0MzRcdTA0M0JcdTA0NEYgXHUwNDQzXHUwNDM3XHUwNDNCXHUwNDNFXHUwNDMyIFx1MDQzM1x1MDQ0MFx1MDQzMFx1MDQ0NFx1MDQzMCAqL1xyXG4ucmVhY3QtZmxvd19fbm9kZS1kZWZhdWx0LFxyXG4ucmVhY3QtZmxvd19fbm9kZS11c2VyLFxyXG4ucmVhY3QtZmxvd19fbm9kZS1sbG0sXHJcbi5yZWFjdC1mbG93X19ub2RlLXRvb2wsXHJcbi5yZWFjdC1mbG93X19ub2RlLWVycm9yLFxyXG4ucmVhY3QtZmxvd19fbm9kZS1hc3Npc3RhbnQge1xyXG4gICAgcGFkZGluZzogdmFyKC0tbm9kZS1wYWRkaW5nKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLW5vZGUtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICB0ZXh0LWFsaWduOiB2YXIoLS1ub2RlLXRleHQtYWxpZ24pO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1ub2RlLWZvbnQtc2l6ZSk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tbm9kZS1mb250LXdlaWdodCk7XHJcbiAgICBjb2xvcjogdmFyKC0tbm9kZS10ZXh0LWNvbG9yKTtcclxufVxyXG5cclxuLnJlYWN0LWZsb3dfX25vZGUtdXNlciB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1sbG0tdXNlci1ib3JkZXItY29sb3IpOyAvKiBcdTA0MjZcdTA0MzJcdTA0MzVcdTA0NDIgXHUwNDM0XHUwNDNCXHUwNDRGIHVzZXIgKi9cclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxsbS11c2VyLWJhY2tncm91bmQtY29sb3IpOyAvKiBcdTA0MjFcdTA0MzJcdTA0MzVcdTA0NDJcdTA0M0JcdTA0M0UtXHUwNDMzXHUwNDNFXHUwNDNCXHUwNDQzXHUwNDMxXHUwNDNFXHUwNDM5IFx1MDQ0NFx1MDQzRVx1MDQzRCBcdTA0MzRcdTA0M0JcdTA0NEYgdXNlciAqL1xyXG59XHJcblxyXG4ucmVhY3QtZmxvd19fbm9kZS1sbG0ge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGxtLWxsbS1ib3JkZXItY29sb3IpOyAvKiBcdTA0MjZcdTA0MzJcdTA0MzVcdTA0NDIgXHUwNDM0XHUwNDNCXHUwNDRGIGxsbSAqL1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGxtLWxsbS1iYWNrZ3JvdW5kLWNvbG9yKTsgLyogXHUwNDIxXHUwNDMyXHUwNDM1XHUwNDQyXHUwNDNCXHUwNDNFLVx1MDQzN1x1MDQzNVx1MDQzQlx1MDQzNVx1MDQzRFx1MDQ0Qlx1MDQzOSBcdTA0NDRcdTA0M0VcdTA0M0QgXHUwNDM0XHUwNDNCXHUwNDRGIGxsbSAqL1xyXG59XHJcblxyXG4ucmVhY3QtZmxvd19fbm9kZS10b29sIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxsbS10b29sLWJvcmRlci1jb2xvcik7IC8qIFx1MDQyNlx1MDQzMlx1MDQzNVx1MDQ0MiBcdTA0MzRcdTA0M0JcdTA0NEYgdG9vbCAqL1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGxtLXRvb2wtYmFja2dyb3VuZC1jb2xvcik7IC8qIFx1MDQyMVx1MDQzMlx1MDQzNVx1MDQ0Mlx1MDQzQlx1MDQzRS1cdTA0M0VcdTA0NDBcdTA0MzBcdTA0M0RcdTA0MzZcdTA0MzVcdTA0MzJcdTA0NEJcdTA0MzkgXHUwNDQ0XHUwNDNFXHUwNDNEIFx1MDQzNFx1MDQzQlx1MDQ0RiB0b29sICovXHJcbn1cclxuXHJcbi5yZWFjdC1mbG93X19ub2RlLWVycm9yIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxsbS1lcnJvci1ib3JkZXItY29sb3IpOyAvKiBcdTA0MUFcdTA0NDBcdTA0MzBcdTA0NDFcdTA0M0RcdTA0NEJcdTA0MzkgXHUwNDQ2XHUwNDMyXHUwNDM1XHUwNDQyIFx1MDQzNFx1MDQzQlx1MDQ0RiBlcnJvciAqL1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGxtLWVycm9yLWJhY2tncm91bmQtY29sb3IpOyAvKiBcdTA0MjFcdTA0MzJcdTA0MzVcdTA0NDJcdTA0M0JcdTA0M0UtXHUwNDNBXHUwNDQwXHUwNDMwXHUwNDQxXHUwNDNEXHUwNDRCXHUwNDM5IFx1MDQ0NFx1MDQzRVx1MDQzRCBcdTA0MzRcdTA0M0JcdTA0NEYgZXJyb3IgKi9cclxufVxyXG5cclxuLnJlYWN0LWZsb3dfX25vZGUtYXNzaXN0YW50IHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxsbS1hc3Npc3RhbnQtYm9yZGVyLWNvbG9yKTsgLyogXHUwNDFEXHUwNDM1XHUwNDM5XHUwNDQyXHUwNDQwXHUwNDMwXHUwNDNCXHUwNDRDXHUwNDNEXHUwNDRCXHUwNDM5IFx1MDQ0MVx1MDQzNVx1MDQ0MFx1MDQ0Qlx1MDQzOSBcdTA0MzRcdTA0M0JcdTA0NEYgXHUwNDMwXHUwNDQxXHUwNDQxXHUwNDM4XHUwNDQxXHUwNDQyXHUwNDM1XHUwNDNEXHUwNDQyXHUwNDMwICovXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1sbG0tYXNzaXN0YW50LWJhY2tncm91bmQtY29sb3IpOyAvKiBcdTA0MjFcdTA0MzJcdTA0MzVcdTA0NDJcdTA0M0JcdTA0M0UtXHUwNDQxXHUwNDM1XHUwNDQwXHUwNDRCXHUwNDM5IFx1MDQ0NFx1MDQzRVx1MDQzRCAqL1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBDaGF0IFBhbmVsIFN0eWxlcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmxsbS1hZ2VudC1jaGF0LXBhbmVsIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uY2hhdC1oaXN0b3J5IHtcclxuICAgIGZsZXgtZ3JvdzogMTtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogdGV4dDsgLyogXHUwNDIwXHUwNDMwXHUwNDM3XHUwNDQwXHUwNDM1XHUwNDQ4XHUwNDM4XHUwNDQyXHUwNDRDIFx1MDQzMlx1MDQ0Qlx1MDQzNFx1MDQzNVx1MDQzQlx1MDQzNVx1MDQzRFx1MDQzOFx1MDQzNSBcdTA0MzRcdTA0M0JcdTA0NEYgV2ViS2l0LVx1MDQzMVx1MDQ0MFx1MDQzMFx1MDQ0M1x1MDQzN1x1MDQzNVx1MDQ0MFx1MDQzRVx1MDQzMiAqL1xyXG4gICAgLW1vei11c2VyLXNlbGVjdDogdGV4dDsgICAgLyogXHUwNDIwXHUwNDMwXHUwNDM3XHUwNDQwXHUwNDM1XHUwNDQ4XHUwNDM4XHUwNDQyXHUwNDRDIFx1MDQzMlx1MDQ0Qlx1MDQzNFx1MDQzNVx1MDQzQlx1MDQzNVx1MDQzRFx1MDQzOFx1MDQzNSBcdTA0MzRcdTA0M0JcdTA0NEYgRmlyZWZveCAqL1xyXG4gICAgdXNlci1zZWxlY3Q6IHRleHQ7ICAgICAgICAgLyogXHUwNDIxXHUwNDQyXHUwNDMwXHUwNDNEXHUwNDM0XHUwNDMwXHUwNDQwXHUwNDQyXHUwNDNEXHUwNDNFXHUwNDM1IFx1MDQ0MVx1MDQzMlx1MDQzRVx1MDQzOVx1MDQ0MVx1MDQ0Mlx1MDQzMlx1MDQzRSBcdTA0MzRcdTA0M0JcdTA0NEYgXHUwNDMyXHUwNDRCXHUwNDM0XHUwNDM1XHUwNDNCXHUwNDM1XHUwNDNEXHUwNDM4XHUwNDRGIFx1MDQ0Mlx1MDQzNVx1MDQzQVx1MDQ0MVx1MDQ0Mlx1MDQzMCAqL1xyXG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XHJcbn1cclxuXHJcbi8qIFx1MDQyMVx1MDQ0Mlx1MDQzOFx1MDQzQlx1MDQzOCBcdTA0MzRcdTA0M0JcdTA0NEYgaW5saW5lLVx1MDQzQVx1MDQzRVx1MDQzNFx1MDQzMCBcdTA0MzIgXHUwNDQxXHUwNDNFXHUwNDNFXHUwNDMxXHUwNDQ5XHUwNDM1XHUwNDNEXHUwNDM4XHUwNDRGXHUwNDQ1ICovXHJcbi5jaGF0LW1lc3NhZ2UtY29udGVudCBjb2RlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICBwYWRkaW5nOiAycHggNHB4O1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuICAgIGZvbnQtc2l6ZTogMC45ZW07XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBcdTA0MjFcdTA0NDJcdTA0MzhcdTA0M0JcdTA0NEMgXHUwNDM0XHUwNDNCXHUwNDRGIFx1MDQ0NFx1MDQzRVx1MDQ0MFx1MDQzQyBcdTA0MzJcdTA0MzJcdTA0M0VcdTA0MzRcdTA0MzAgXHUwNDQ3XHUwNDMwXHUwNDQyXHUwNDMwICovXHJcbi5jaGF0LWlucHV0LWZvcm0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VlZTtcclxuICAgIGdhcDogMTBweDtcclxufVxyXG5cclxuLmNvbW1hbmQtaW5wdXQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZmxleC1ncm93OiAxO1xyXG59XHJcblxyXG4jbWVzc2FnZS1pbnB1dCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDhweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG4jc2VuZC1idXR0b24ge1xyXG4gICAgcGFkZGluZzogOHB4IDE1cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4jc2VuZC1idXR0b246aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTZiMztcclxufVxyXG5cclxuLnN1Z2dlc3Rpb25zIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMTAwJTsgLyogXHUwNDFGXHUwNDNFXHUwNDNDXHUwNDM1XHUwNDQ5XHUwNDMwXHUwNDM1XHUwNDNDIFx1MDQzRFx1MDQzMFx1MDQzNCBcdTA0M0ZcdTA0M0VcdTA0M0JcdTA0MzVcdTA0M0MgXHUwNDMyXHUwNDMyXHUwNDNFXHUwNDM0XHUwNDMwICovXHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICBtYXgtaGVpZ2h0OiAxNTBweDtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICB6LWluZGV4OiAxMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDVweDsgLyogXHUwNDFFXHUwNDQyXHUwNDQxXHUwNDQyXHUwNDQzXHUwNDNGIFx1MDQzRVx1MDQ0MiBcdTA0M0ZcdTA0M0VcdTA0M0JcdTA0NEYgXHUwNDMyXHUwNDMyXHUwNDNFXHUwNDM0XHUwNDMwICovXHJcbn1cclxuXHJcbi5zdWdnZXN0aW9uLWl0ZW0ge1xyXG4gICAgcGFkZGluZzogOHB4IDEwcHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5zdWdnZXN0aW9uLWl0ZW06aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcclxufSJdLAogICJtYXBwaW5ncyI6ICI7QUFFQTtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNJO0FBQUE7QUFFSjtBQUNJO0FBQ0E7QUFBQTtBQUVKO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFBQTtBQUVFO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7QUFFRjtBQUNJO0FBQ0E7QUFDUTtBQUFBO0FBRVo7QUFDSTtBQUNBO0FBQ1E7QUFBQTtBQUVaO0FBQ0k7QUFBQTtBQUVKO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFFSjtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBRUo7QUFDSTtBQUFBO0FBRUo7QUFDSTtBQUFBO0FBRUo7QUFDSTtBQUNBO0FBQ0c7QUFDSztBQUFBO0FBRVo7QUFDRTtBQUFBO0FBRUY7QUFDSTtBQUNBO0FBQ1E7QUFBQTtBQUVaO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0c7QUFDSztBQUNSO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0k7QUFDQTtBQUFBO0FBRUo7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0k7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVKO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNJO0FBQ0E7QUFBQTtBQUVKO0FBQ0k7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVKO0FBQ0k7QUFDQTtBQUNBO0FBQUE7QUFFSjtBQUNJO0FBQ0E7QUFDQTtBQUFBO0FBRUo7QUFDSTtBQUNBO0FBQ0E7QUFBQTtBQUVKO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0k7QUFBQTtBQUVKO0FBQ0k7QUFBQTtBQUVKO0FBQ0k7QUFBQTtBQUVKO0FBQ0k7QUFBQTtBQUVKO0FBQ0k7QUFDQTtBQUFBO0FBRUo7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDSTtBQUNBO0FBQUE7QUFFSjtBQUFBO0FBRUk7QUFBQTtBQUFBO0FBR0o7QUFBQTtBQUVJO0FBQUE7QUFBQTtBQUdKO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNHO0FBQ0s7QUFBQTtBQUVWO0FBQ007QUFBQTtBQUVOO0FBQ0k7QUFBQTtBQUVKO0FBQUE7QUFFSTtBQUFBO0FBRUo7QUFBQTtBQUFBO0FBQUE7QUFJRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFBQTtBQUFBO0FBQUE7QUFDTTtBQUFBO0FBRU47QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBWU07QUFBQTtBQUVOO0FBQ0U7QUFBQTtBQUVGO0FBQUE7QUFFRTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFFSjtBQUNFO0FBQUE7QUFFRjtBQUNJO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDRztBQUNLO0FBQ1I7QUFBQTtBQUVKO0FBQ007QUFBQTtBQUVOO0FBQ007QUFDQTtBQUNBO0FBQUE7QUFFTjtBQUNNO0FBQUE7QUFFTjtBQUNRO0FBQUE7QUFFUjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFBQTtBQUVGO0FBQUE7QUFFRTtBQUFBO0FBRUY7QUFBQTtBQUVFO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFBQTtBQUdGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUdGO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7OztBQ2xaRjtBQUVJO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFHSjtBQUNJO0FBQ0E7QUFBQTtBQUdKO0FBQ0k7QUFDQTtBQUFBO0FBR0o7QUFDSTtBQUNBO0FBQUE7QUFHSjtBQUNJO0FBQ0E7QUFBQTtBQUdKO0FBQ0k7QUFDQTtBQUFBO0FBSUo7QUFDSTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFHSjtBQUNJO0FBQUE7QUFHSjtBQUNJO0FBQUE7QUFHSjtBQUNJO0FBQUE7QUFHSjtBQUNJO0FBQ0E7QUFDQTtBQUFBO0FBR0o7QUFDSTtBQUNBO0FBQ0E7QUFBQTtBQUdKO0FBQ0k7QUFDQTtBQUNBO0FBQUE7QUFHSjtBQUNJO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFJSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNSTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUdKO0FBQ0k7QUFDQTtBQUFBO0FBR0o7QUFDSTtBQUNBO0FBQUE7QUFHSjtBQUNJO0FBQ0E7QUFBQTtBQUdKO0FBQ0k7QUFDQTtBQUFBO0FBR0o7QUFDSTtBQUNBO0FBQUE7QUFLSjtBQUNJO0FBQ0E7QUFDQTtBQUFBO0FBR0o7QUFDSTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBSUo7QUFDSTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUlKO0FBQ0k7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUdKO0FBQ0k7QUFDQTtBQUFBO0FBR0o7QUFDSTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFHSjtBQUNJO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBR0o7QUFDSTtBQUFBO0FBR0o7QUFDSTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFHSjtBQUNJO0FBQ0E7QUFBQTtBQUdKO0FBQ0k7QUFBQTsiLAogICJuYW1lcyI6IFtdCn0K */