[x-cloak]{display:none!important}.gallery-albums-section{min-height:120px}.gallery-grid-section{min-height:400px}.album-card-cover{aspect-ratio:1/1}[data-tooltip]{cursor:help;position:relative}[data-tooltip]:hover:after,[data-tooltip]:hover:before{opacity:1;transition:opacity .2s ease-in-out,visibility .2s ease-in-out;visibility:visible}[data-tooltip]:before{background-color:rgba(0,0,0,.9);border-radius:6px;bottom:calc(100% + 8px);box-shadow:0 4px 12px rgba(0,0,0,.3);color:#fff;content:attr(data-tooltip);font-size:.875rem;line-height:1.4;padding:8px 12px;white-space:nowrap}[data-tooltip]:after,[data-tooltip]:before{left:50%;opacity:0;pointer-events:none;position:absolute;transform:translateX(-50%);visibility:hidden;z-index:1000}[data-tooltip]:after{border:6px solid transparent;border-top-color:rgba(0,0,0,.9);bottom:calc(100% + 2px);content:""}[data-tooltip-pos=top]:before{bottom:calc(100% + 8px);top:auto}[data-tooltip-pos=bottom]:before{bottom:auto;top:calc(100% + 8px)}[data-tooltip-pos=bottom]:after{border-bottom-color:rgba(0,0,0,.9);border-top-color:transparent;bottom:auto;top:calc(100% + 2px)}[data-tooltip-pos=left]:before{bottom:auto;left:auto;right:calc(100% + 8px);top:50%;transform:translateY(-50%)}[data-tooltip-pos=left]:after{border-left-color:rgba(0,0,0,.9);border-top-color:transparent;bottom:auto;left:auto;right:calc(100% + 2px);top:50%;transform:translateY(-50%)}[data-tooltip-pos=right]:before{bottom:auto;left:calc(100% + 8px);top:50%;transform:translateY(-50%)}[data-tooltip-pos=right]:after{border-right-color:rgba(0,0,0,.9);border-top-color:transparent;bottom:auto;left:calc(100% + 2px);top:50%;transform:translateY(-50%)}.gallery-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 10px 25px rgba(102,126,234,.2);margin-bottom:2rem;padding:2rem}.gallery-header h1{color:#fff;font-size:2.5rem;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.1)}.gallery-header p{color:hsla(0,0%,100%,.95);font-size:1.125rem}.gallery-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08);overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.gallery-card:hover{box-shadow:0 12px 24px rgba(0,0,0,.15);transform:translateY(-4px)}.gallery-card img{transition:transform .5s cubic-bezier(.4,0,.2,1)}.gallery-card:hover img{transform:scale(1.08)}.btn-enhanced{overflow:hidden;position:relative;transition:all .3s ease}.btn-enhanced:before{background:hsla(0,0%,100%,.2);border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.btn-enhanced:hover:before{height:300px;width:300px}.filter-pill{position:relative;transition:all .2s ease}.filter-pill.active{box-shadow:0 4px 12px rgba(59,130,246,.3)}.skeleton{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state{padding:4rem 2rem;text-align:center}.empty-state-icon{align-items:center;animation:float 3s ease-in-out infinite;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;height:120px;justify-content:center;margin:0 auto 1.5rem;width:120px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.empty-state-icon svg{color:#fff;height:64px;width:64px}.ai-badge{align-items:center;animation:pulse 2s ease-in-out infinite;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;display:inline-flex;font-size:.75rem;font-weight:600;gap:4px;padding:4px 8px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.view-toggle{background:#fff;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.08);display:flex;padding:4px}.view-toggle button{background:transparent;border:none;border-radius:6px;color:#6b7280;cursor:pointer;padding:8px 12px;transition:all .2s ease}.view-toggle button.active{background:#3b82f6;color:#fff}.search-wrapper{position:relative}.search-wrapper input{transition:all .3s ease}.search-wrapper input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.tag-pill{align-items:center;background:rgba(59,130,246,.1);border-radius:12px;color:#1e40af;display:inline-flex;font-size:.75rem;font-weight:500;gap:4px;padding:4px 10px;transition:all .2s ease}.tag-pill:hover{background:rgba(59,130,246,.2);transform:scale(1.05)}.lightbox-controls{display:flex;gap:12px;justify-content:center;margin-top:1rem}.lightbox-btn{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;padding:8px 16px;transition:all .2s ease}.lightbox-btn:hover{background:hsla(0,0%,100%,.2);transform:translateY(-2px)}.lightbox-media-container{align-items:center;display:flex;justify-content:center;margin:0 auto;max-height:80vh;max-width:90vw}.lightbox-media-container img,.lightbox-media-container video{height:auto;max-height:80vh;max-width:90vw;object-fit:contain;width:auto}.back-to-gallery-btn{align-items:center;backdrop-filter:blur(10px);background:hsla(0,0%,100%,.15);border:1px solid hsla(0,0%,100%,.3);border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;gap:6px;padding:8px 16px;transition:all .2s ease}.back-to-gallery-btn:hover{background:hsla(0,0%,100%,.25);transform:translateY(-1px)}.lightbox-header{align-items:center;backdrop-filter:blur(10px);background:rgba(0,0,0,.85);border-radius:8px;display:flex;justify-content:space-between;margin-bottom:1rem;margin-left:-1rem;margin-right:-1rem;padding:.75rem 1rem;position:sticky;top:0;z-index:30}.lightbox-close-btn{align-items:center;background:hsla(0,0%,100%,.15);border:1px solid hsla(0,0%,100%,.3);border-radius:50%;color:#fff;cursor:pointer;display:flex;height:44px;justify-content:center;transition:all .2s ease;width:44px}.lightbox-close-btn:hover{background:hsla(0,0%,100%,.25);transform:scale(1.1)}.lightbox-close-btn svg{height:24px;width:24px}.lightbox-floating-close{align-items:center;background:rgba(0,0,0,.7);border:2px solid hsla(0,0%,100%,.5);border-radius:50%;box-shadow:0 4px 12px rgba(0,0,0,.4);color:#fff;cursor:pointer;display:flex;height:48px;justify-content:center;position:fixed;right:20px;top:80px;transition:all .2s ease;width:48px;z-index:60}.lightbox-floating-close:hover{background:rgba(0,0,0,.9);border-color:#fff;transform:scale(1.1)}.lightbox-floating-close svg{height:28px;width:28px}.exif-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.exif-item{background:hsla(0,0%,100%,.05);border-radius:8px;padding:.75rem}.stats-badge{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08);display:inline-flex;gap:8px;padding:8px 16px}.stats-badge-value{color:#1f2937;font-size:1.5rem;font-weight:700}.stats-badge-label{color:#6b7280;font-size:.875rem}@media (max-width:640px){.gallery-header{padding:1.5rem}.gallery-header h1{font-size:1.875rem}[data-tooltip]:before{max-width:200px;white-space:normal}}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}*{transition-timing-function:cubic-bezier(.4,0,.2,1)}.gallery-card[draggable=true]{cursor:grab;position:relative}.gallery-card[draggable=true]:active{cursor:grabbing}.gallery-card.dragging{box-shadow:0 8px 25px rgba(0,0,0,.15);opacity:.5;transform:scale(.95)}.album-drop-target{position:relative;transition:all .2s ease}.album-drop-target.drag-over{border-color:#8b5cf6!important;border-width:2px;box-shadow:0 0 0 4px rgba(139,92,246,.2),0 8px 25px rgba(139,92,246,.3);transform:scale(1.05)}.album-drop-target.drag-over:after{background:rgba(139,92,246,.1);border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute;z-index:10}.gallery-card[draggable=true]:not(.dragging):hover:after{background:rgba(0,0,0,.75);border-radius:4px;bottom:4px;color:#fff;content:"Drag to album";font-size:.7rem;left:50%;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity .2s;white-space:nowrap}body:has(.album-drop-target) .gallery-card[draggable=true]:not(.dragging):hover:after{opacity:1}.gallery-card.reorder-dragging{border:2px dashed var(--color-primary,#3b82f6);opacity:.4;transform:scale(.95)}.gallery-card.reorder-drop-target{border:2px solid var(--color-primary,#3b82f6);box-shadow:0 0 0 4px rgba(59,130,246,.2);transform:scale(1.02)}.gallery-card.reorder-drop-target:before{background:rgba(59,130,246,.1);content:"";inset:0;pointer-events:none;position:absolute;z-index:1}.album-reorder-hint{align-items:center;background:var(--color-info-bg,#eff6ff);border:1px solid var(--color-info-border,#bfdbfe);border-radius:.5rem;color:var(--color-info-text,#1e40af);display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1rem;padding:.5rem 1rem}.album-reorder-hint svg{flex-shrink:0;height:16px;width:16px}
/*# sourceMappingURL=data:application/json;base64,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aUJBQW1CLENBTm5CLFNBQVcsQ0FPWCxrQkFBbUIsQ0FObkIsa0JBT0YsQ0FFQSx3QkFHRSxhQUFjLENBRGQsV0FBWSxDQURaLFVBR0YiLCJmaWxlIjoiZ2FsbGVyeS5taW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHYWxsZXJ5IFBhZ2UgU3R5bGVzXG4gKiBFbmhhbmNlZCBVSSB3aXRoIHRvb2x0aXBzIGFuZCBtb2Rlcm4gZGVzaWduXG4gKi9cblxuLyogQ0xTIFByZXZlbnRpb24gLSBIaWRlIHVudGlsIEFscGluZSBpbml0aWFsaXplcyAqL1xuW3gtY2xvYWtdIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiBDTFMgUHJldmVudGlvbiAtIFJlc2VydmUgbWluaW11bSBzcGFjZSBmb3IgZHluYW1pYyBjb250ZW50ICovXG4uZ2FsbGVyeS1hbGJ1bXMtc2VjdGlvbiB7XG4gIG1pbi1oZWlnaHQ6IDEyMHB4OyAvKiBSZXNlcnZlIHNwYWNlIGZvciBhbGJ1bXMgcm93ICovXG59XG5cbi5nYWxsZXJ5LWdyaWQtc2VjdGlvbiB7XG4gIG1pbi1oZWlnaHQ6IDQwMHB4OyAvKiBSZXNlcnZlIHNwYWNlIGZvciBnYWxsZXJ5IGdyaWQgKi9cbn1cblxuLyogQWxidW0gY2FyZCBhc3BlY3QgcmF0aW8gcHJlc2VydmF0aW9uICovXG4uYWxidW0tY2FyZC1jb3ZlciB7XG4gIGFzcGVjdC1yYXRpbzogMSAvIDE7XG59XG5cbi8qIFRvb2x0aXAgU3lzdGVtICovXG5bZGF0YS10b29sdGlwXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBoZWxwO1xufVxuXG5bZGF0YS10b29sdGlwXTpob3Zlcjo6YmVmb3JlLFxuW2RhdGEtdG9vbHRpcF06aG92ZXI6OmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0LCB2aXNpYmlsaXR5IDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbltkYXRhLXRvb2x0aXBdOjpiZWZvcmUge1xuICBjb250ZW50OiBhdHRyKGRhdGEtdG9vbHRpcCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiBjYWxjKDEwMCUgKyA4cHgpO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgcGFkZGluZzogOHB4IDEycHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHotaW5kZXg6IDEwMDA7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuXG5bZGF0YS10b29sdGlwXTo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IGNhbGMoMTAwJSArIDJweCk7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBib3JkZXI6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICB6LWluZGV4OiAxMDAwO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vKiBUb29sdGlwIHBvc2l0aW9uaW5nIHZhcmlhbnRzICovXG5bZGF0YS10b29sdGlwLXBvcz1cInRvcFwiXTo6YmVmb3JlIHtcbiAgYm90dG9tOiBjYWxjKDEwMCUgKyA4cHgpO1xuICB0b3A6IGF1dG87XG59XG5cbltkYXRhLXRvb2x0aXAtcG9zPVwiYm90dG9tXCJdOjpiZWZvcmUge1xuICB0b3A6IGNhbGMoMTAwJSArIDhweCk7XG4gIGJvdHRvbTogYXV0bztcbn1cblxuW2RhdGEtdG9vbHRpcC1wb3M9XCJib3R0b21cIl06OmFmdGVyIHtcbiAgdG9wOiBjYWxjKDEwMCUgKyAycHgpO1xuICBib3R0b206IGF1dG87XG4gIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG5cbltkYXRhLXRvb2x0aXAtcG9zPVwibGVmdFwiXTo6YmVmb3JlIHtcbiAgcmlnaHQ6IGNhbGMoMTAwJSArIDhweCk7XG4gIGxlZnQ6IGF1dG87XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdG9wOiA1MCU7XG4gIGJvdHRvbTogYXV0bztcbn1cblxuW2RhdGEtdG9vbHRpcC1wb3M9XCJsZWZ0XCJdOjphZnRlciB7XG4gIHJpZ2h0OiBjYWxjKDEwMCUgKyAycHgpO1xuICBsZWZ0OiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgYm90dG9tOiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuXG5bZGF0YS10b29sdGlwLXBvcz1cInJpZ2h0XCJdOjpiZWZvcmUge1xuICBsZWZ0OiBjYWxjKDEwMCUgKyA4cHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRvcDogNTAlO1xuICBib3R0b206IGF1dG87XG59XG5cbltkYXRhLXRvb2x0aXAtcG9zPVwicmlnaHRcIl06OmFmdGVyIHtcbiAgbGVmdDogY2FsYygxMDAlICsgMnB4KTtcbiAgdG9wOiA1MCU7XG4gIGJvdHRvbTogYXV0bztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG5cbi8qIEVuaGFuY2VkIEhlYWRlciB3aXRoIEdyYWRpZW50ICovXG4uZ2FsbGVyeS1oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNjY3ZWVhIDAlLCAjNzY0YmEyIDEwMCUpO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBwYWRkaW5nOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBib3gtc2hhZG93OiAwIDEwcHggMjVweCByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMik7XG59XG5cbi5nYWxsZXJ5LWhlYWRlciBoMSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4uZ2FsbGVyeS1oZWFkZXIgcCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuXG4vKiBFbmhhbmNlZCBDYXJkcyAqL1xuLmdhbGxlcnktY2FyZCB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbn1cblxuLmdhbGxlcnktY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMTJweCAyNHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTtcbn1cblxuLyogSW1hZ2UgWm9vbSBFZmZlY3QgKi9cbi5nYWxsZXJ5LWNhcmQgaW1nIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbn1cblxuLmdhbGxlcnktY2FyZDpob3ZlciBpbWcge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xufVxuXG4vKiBCdXR0b24gRW5oYW5jZW1lbnRzICovXG4uYnRuLWVuaGFuY2VkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4uYnRuLWVuaGFuY2VkOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuNnMsIGhlaWdodCAwLjZzO1xufVxuXG4uYnRuLWVuaGFuY2VkOmhvdmVyOjpiZWZvcmUge1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogMzAwcHg7XG59XG5cbi8qIEZpbHRlciBQaWxscyAqL1xuLmZpbHRlci1waWxsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xufVxuXG4uZmlsdGVyLXBpbGwuYWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMCA0cHggMTJweCByZ2JhKDU5LCAxMzAsIDI0NiwgMC4zKTtcbn1cblxuLyogTG9hZGluZyBTa2VsZXRvbiAqL1xuLnNrZWxldG9uIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjZjBmMGYwIDI1JSwgI2UwZTBlMCA1MCUsICNmMGYwZjAgNzUlKTtcbiAgYmFja2dyb3VuZC1zaXplOiAyMDAlIDEwMCU7XG4gIGFuaW1hdGlvbjogbG9hZGluZyAxLjVzIGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIGxvYWRpbmcge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMjAwJSAwO1xuICB9XG4gIDEwMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMDAlIDA7XG4gIH1cbn1cblxuLyogRW5oYW5jZWQgRW1wdHkgU3RhdGUgKi9cbi5lbXB0eS1zdGF0ZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogNHJlbSAycmVtO1xufVxuXG4uZW1wdHktc3RhdGUtaWNvbiB7XG4gIHdpZHRoOiAxMjBweDtcbiAgaGVpZ2h0OiAxMjBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMS41cmVtO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNjY3ZWVhIDAlLCAjNzY0YmEyIDEwMCUpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbmltYXRpb246IGZsb2F0IDNzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIGZsb2F0IHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cbn1cblxuLmVtcHR5LXN0YXRlLWljb24gc3ZnIHtcbiAgd2lkdGg6IDY0cHg7XG4gIGhlaWdodDogNjRweDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4vKiBBSSBCYWRnZSAqL1xuLmFpLWJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogNHB4O1xuICBwYWRkaW5nOiA0cHggOHB4O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNjY3ZWVhIDAlLCAjNzY0YmEyIDEwMCUpO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYW5pbWF0aW9uOiBwdWxzZSAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBwdWxzZSB7XG4gIDAlLCAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC44O1xuICB9XG59XG5cbi8qIFZpZXcgTW9kZSBUb2dnbGUgKi9cbi52aWV3LXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHBhZGRpbmc6IDRweDtcbiAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG59XG5cbi52aWV3LXRvZ2dsZSBidXR0b24ge1xuICBwYWRkaW5nOiA4cHggMTJweDtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzZiNzI4MDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xufVxuXG4udmlldy10b2dnbGUgYnV0dG9uLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICMzYjgyZjY7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLyogU2VhcmNoIEJhciBFbmhhbmNlbWVudCAqL1xuLnNlYXJjaC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2VhcmNoLXdyYXBwZXIgaW5wdXQge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4uc2VhcmNoLXdyYXBwZXIgaW5wdXQ6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSg1OSwgMTMwLCAyNDYsIDAuMSk7XG4gIGJvcmRlci1jb2xvcjogIzNiODJmNjtcbn1cblxuLyogVGFnIFBpbGxzICovXG4udGFnLXBpbGwge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA0cHg7XG4gIHBhZGRpbmc6IDRweCAxMHB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDU5LCAxMzAsIDI0NiwgMC4xKTtcbiAgY29sb3I6ICMxZTQwYWY7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbn1cblxuLnRhZy1waWxsOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSg1OSwgMTMwLCAyNDYsIDAuMik7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG5cbi8qIExpZ2h0Ym94IEVuaGFuY2VtZW50cyAqL1xuLmxpZ2h0Ym94LWNvbnRyb2xzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxMnB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cblxuLmxpZ2h0Ym94LWJ0biB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDhweCAxNnB4O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xufVxuXG4ubGlnaHRib3gtYnRuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG59XG5cbi8qIExpZ2h0Ym94IEltYWdlIFNpemluZyAtIEZpdCB3aXRoaW4gdmlld3BvcnQgKi9cbi5saWdodGJveC1tZWRpYS1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWF4LWhlaWdodDogODB2aDtcbiAgbWF4LXdpZHRoOiA5MHZ3O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmxpZ2h0Ym94LW1lZGlhLWNvbnRhaW5lciBpbWcsXG4ubGlnaHRib3gtbWVkaWEtY29udGFpbmVyIHZpZGVvIHtcbiAgbWF4LWhlaWdodDogODB2aDtcbiAgbWF4LXdpZHRoOiA5MHZ3O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4vKiBCYWNrIHRvIEdhbGxlcnkgYnV0dG9uICovXG4uYmFjay10by1nYWxsZXJ5LWJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDZweDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDhweCAxNnB4O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xufVxuXG4uYmFjay10by1nYWxsZXJ5LWJ0bjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbn1cblxuLyogTGlnaHRib3ggaGVhZGVyIGJhciAtIHN0aWNreSBzbyBjbG9zZSBidXR0b24gYWx3YXlzIHZpc2libGUgKi9cbi5saWdodGJveC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAzMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcbn1cblxuLyogTGlnaHRib3ggY2xvc2UgYnV0dG9uIC0gcHJvbWluZW50IGFuZCB0b3VjaC1mcmllbmRseSAqL1xuLmxpZ2h0Ym94LWNsb3NlLWJ0biB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29sb3I6IHdoaXRlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG59XG5cbi5saWdodGJveC1jbG9zZS1idG46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5cbi5saWdodGJveC1jbG9zZS1idG4gc3ZnIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cblxuLyogRmxvYXRpbmcgY2xvc2UgYnV0dG9uIC0gQUxXQVlTIHZpc2libGUgaW4gdG9wLXJpZ2h0IGNvcm5lciAqL1xuLmxpZ2h0Ym94LWZsb2F0aW5nLWNsb3NlIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDgwcHg7IC8qIEJlbG93IHNpdGUgaGVhZGVyICovXG4gIHJpZ2h0OiAyMHB4O1xuICB6LWluZGV4OiA2MDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiA0OHB4O1xuICBoZWlnaHQ6IDQ4cHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgYm9yZGVyOiAycHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuLmxpZ2h0Ym94LWZsb2F0aW5nLWNsb3NlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICBib3JkZXItY29sb3I6IHdoaXRlO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5cbi5saWdodGJveC1mbG9hdGluZy1jbG9zZSBzdmcge1xuICB3aWR0aDogMjhweDtcbiAgaGVpZ2h0OiAyOHB4O1xufVxuXG4vKiBFWElGIG1ldGFkYXRhIGdyaWQgKi9cbi5leGlmLWdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDE1MHB4LCAxZnIpKTtcbiAgZ2FwOiAxcmVtO1xufVxuXG4uZXhpZi1pdGVtIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xufVxuXG4vKiBTdGF0cyBCYWRnZSAqL1xuLnN0YXRzLWJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogOHB4O1xuICBwYWRkaW5nOiA4cHggMTZweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xufVxuXG4uc3RhdHMtYmFkZ2UtdmFsdWUge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMxZjI5Mzc7XG59XG5cbi5zdGF0cy1iYWRnZS1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjNmI3MjgwO1xufVxuXG4vKiBNb2JpbGUgUmVzcG9uc2l2ZSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5nYWxsZXJ5LWhlYWRlciB7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICB9XG5cbiAgLmdhbGxlcnktaGVhZGVyIGgxIHtcbiAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICB9XG5cbiAgW2RhdGEtdG9vbHRpcF06OmJlZm9yZSB7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICB9XG59XG5cbi8qIEFjY2Vzc2liaWxpdHkgKi9cbi5zci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXItd2lkdGg6IDA7XG59XG5cbi8qIEZvY3VzIHN0YXRlcyAqL1xuKjpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogMnB4IHNvbGlkICMzYjgyZjY7XG4gIG91dGxpbmUtb2Zmc2V0OiAycHg7XG59XG5cbi8qIFNtb290aCB0cmFuc2l0aW9ucyAqL1xuKiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xufVxuXG4vKiBEcmFnIGFuZCBEcm9wIFN0eWxlcyAqL1xuLmdhbGxlcnktY2FyZFtkcmFnZ2FibGU9XCJ0cnVlXCJdIHtcbiAgY3Vyc29yOiBncmFiO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5nYWxsZXJ5LWNhcmRbZHJhZ2dhYmxlPVwidHJ1ZVwiXTphY3RpdmUge1xuICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuXG4uZ2FsbGVyeS1jYXJkLmRyYWdnaW5nIHtcbiAgb3BhY2l0eTogMC41O1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICBib3gtc2hhZG93OiAwIDhweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi8qIEFsYnVtIGRyb3AgdGFyZ2V0ICovXG4uYWxidW0tZHJvcC10YXJnZXQge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5hbGJ1bS1kcm9wLXRhcmdldC5kcmFnLW92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICBib3JkZXItY29sb3I6ICM4YjVjZjYgIWltcG9ydGFudDtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDEzOSwgOTIsIDI0NiwgMC4yKSwgMCA4cHggMjVweCByZ2JhKDEzOSwgOTIsIDI0NiwgMC4zKTtcbn1cblxuLmFsYnVtLWRyb3AtdGFyZ2V0LmRyYWctb3Zlcjo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZDogcmdiYSgxMzksIDkyLCAyNDYsIDAuMSk7XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLyogRHJhZyBoaW50IHdoZW4gZHJhZ2dpbmcgKi9cbi5nYWxsZXJ5LWNhcmRbZHJhZ2dhYmxlPVwidHJ1ZVwiXTpub3QoLmRyYWdnaW5nKTpob3Zlcjo6YWZ0ZXIge1xuICBjb250ZW50OiAnRHJhZyB0byBhbGJ1bSc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiA0cHg7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDRweCA4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZm9udC1zaXplOiAwLjdyZW07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG59XG5cbi8qIFNob3cgaGludCBvbiBob3ZlciB3aGVuIGFsYnVtcyBleGlzdCAqL1xuYm9keTpoYXMoLmFsYnVtLWRyb3AtdGFyZ2V0KSAuZ2FsbGVyeS1jYXJkW2RyYWdnYWJsZT1cInRydWVcIl06bm90KC5kcmFnZ2luZyk6aG92ZXI6OmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEFsYnVtIFJlb3JkZXIgU3R5bGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZ2FsbGVyeS1jYXJkLnJlb3JkZXItZHJhZ2dpbmcge1xuICBvcGFjaXR5OiAwLjQ7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gIGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1jb2xvci1wcmltYXJ5LCAjM2I4MmY2KTtcbn1cblxuLmdhbGxlcnktY2FyZC5yZW9yZGVyLWRyb3AtdGFyZ2V0IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItcHJpbWFyeSwgIzNiODJmNik7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDU5LCAxMzAsIDI0NiwgMC4yKTtcbn1cblxuLmdhbGxlcnktY2FyZC5yZW9yZGVyLWRyb3AtdGFyZ2V0OjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZDogcmdiYSg1OSwgMTMwLCAyNDYsIDAuMSk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB6LWluZGV4OiAxO1xufVxuXG4vKiBSZW9yZGVyIGhpbnQgaW4gYWxidW0gdmlldyAqL1xuLmFsYnVtLXJlb3JkZXItaGludCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC41cmVtO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItaW5mby1iZywgI2VmZjZmZik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWluZm8tYm9yZGVyLCAjYmZkYmZlKTtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICBjb2xvcjogdmFyKC0tY29sb3ItaW5mby10ZXh0LCAjMWU0MGFmKTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmFsYnVtLXJlb3JkZXItaGludCBzdmcge1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBmbGV4LXNocmluazogMDtcbn1cbiJdfQ== */