:root{--primary-color:#1db954;--background-color:#121212;--surface-color:#1e1e1e;--text-primary:#fff;--text-secondary:#b3b3b3;--border-color:#333;--shadow-color:rgba(0,0,0,.6);--background-overlay-color:hsla(0,0%,7%,.6);--background-blur-brightness:0.6;--touch-target-size:48px}body.light-theme{--background-color:#f0f2f5;--surface-color:#fff;--text-primary:#1c1e21;--text-secondary:#65676b;--border-color:#dddfe2;--shadow-color:rgba(0,0,0,.2);--background-overlay-color:rgba(240,242,245,.5);--background-blur-brightness:0.9}body.sunset-theme{--primary-color:#ff8c42;--background-color:#2c2c54;--surface-color:#474787;--text-primary:#fff;--text-secondary:#a4a4bf;--border-color:#5c5c8d;--shadow-color:rgba(0,0,0,.5);--background-overlay-color:rgba(44,44,84,.6);--background-blur-brightness:0.7}body.ocean-theme{--primary-color:#00a8cc;--background-color:#005f73;--surface-color:#0a9396;--text-primary:#e9d8a6;--text-secondary:#94d2bd;--border-color:#007f8d;--shadow-color:rgba(0,0,0,.5);--background-overlay-color:rgba(0,95,115,.6);--background-blur-brightness:0.7}body.forest-theme{--primary-color:#d4a373;--background-color:#3a5a40;--surface-color:#588157;--text-primary:#dad7cd;--text-secondary:#a3b18a;--border-color:#4a6e4e;--shadow-color:rgba(0,0,0,.5);--background-overlay-color:rgba(58,90,64,.6);--background-blur-brightness:0.7}body.matrix-theme{--primary-color:#00ff41;--background-color:#0d0208;--surface-color:#0d0208;--text-primary:#00ff41;--text-secondary:#008f11;--border-color:#005f08;--shadow-color:rgba(0,255,65,.2);--background-overlay-color:rgba(13,2,8,.7);--background-blur-brightness:0.5}body.coffee-theme{--primary-color:#ff9f1c;--background-color:#4f3a30;--surface-color:#6d5444;--text-primary:#eae0d5;--text-secondary:#c6ac8f;--border-color:#5a4438;--shadow-color:rgba(0,0,0,.4);--background-overlay-color:rgba(79,58,48,.6);--background-blur-brightness:0.8}body.grape-theme{--primary-color:#d8b4fe;--background-color:#3b0764;--surface-color:#5a189a;--text-primary:#f3e8ff;--text-secondary:#e0aaff;--border-color:#4a0c7a;--shadow-color:rgba(0,0,0,.5);--background-overlay-color:rgba(59,7,100,.6);--background-blur-brightness:0.7}body.dusk-theme{--primary-color:#f28482;--background-color:#232946;--surface-color:#2d3454;--text-primary:#fffffe;--text-secondary:#b8c1ec;--border-color:#333a59;--shadow-color:rgba(0,0,0,.5);--background-overlay-color:rgba(35,41,70,.6);--background-blur-brightness:0.7}body.aurora-theme{--primary-color:#84a59d;--background-color:#264653;--surface-color:#2a9d8f;--text-primary:#fff;--text-secondary:#e9c46a;--border-color:#287a82;--shadow-color:rgba(0,0,0,.5);--background-overlay-color:rgba(38,70,83,.6);--background-blur-brightness:0.7}body.blossom-theme{--primary-color:#f7c5cc;--background-color:#6d214f;--surface-color:#b33771;--text-primary:#fff;--text-secondary:#f7c5cc;--border-color:#8e2c63;--shadow-color:rgba(0,0,0,.5);--background-overlay-color:rgba(109,33,79,.6);--background-blur-brightness:0.7}body.royal-theme{--primary-color:#d6a2e8;--background-color:#3d3d5b;--surface-color:#4b4b73;--text-primary:#fff;--text-secondary:#d6a2e8;--border-color:#446;--shadow-color:rgba(0,0,0,.5);--background-overlay-color:rgba(61,61,91,.6);--background-blur-brightness:0.7}body{background-color:var(--background-color);color:var(--text-primary);font-family:Poppins,sans-serif;margin:0;overflow:hidden;padding:0 0 90px;transition:background-color .3s,color .3s;user-select:none;-webkit-tap-highlight-color:transparent}.marquee-container{background-color:var(--primary-color);box-sizing:border-box;color:var(--background-color);left:0;overflow:hidden;padding:5px 0;position:fixed;top:0;white-space:nowrap;width:100%;z-index:11}.marquee-text{animation:marquee 60s linear infinite;display:inline-block;font-size:14px;font-weight:500;margin:0;padding-left:100%}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(-100%)}}.station-header{box-sizing:border-box;justify-content:space-between;left:0;padding:15px 20px;position:fixed;top:29px;width:100%;z-index:10}.header-left,.station-header{align-items:center;display:flex}.station-logo{height:auto;margin-right:12px;max-width:80px;width:100%}.station-name{font-size:clamp(9px,2vw,16px);font-weight:700}.header-controls{position:relative}.header-menu{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px var(--shadow-color);opacity:0;overflow:hidden;position:absolute;right:0;top:calc(100% + 10px);transform:translateY(-10px);transition:opacity .2s ease,transform .2s ease,visibility .2s;visibility:hidden;width:150px;z-index:11}.header-menu.visible{opacity:1;transform:translateY(0);visibility:visible}.header-menu-item{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;gap:12px;padding:12px 15px;text-align:left;width:100%}.header-menu-item:hover{background-color:hsla(0,0%,100%,.05)}#header-menu-btn{align-items:center;background-color:transparent;border-radius:50%;display:flex;height:40px;justify-content:center;transition:background-color .2s ease;width:40px}#header-menu-btn:hover{background-color:hsla(0,0%,100%,.1)}.background-blur{background-position:50%;background-size:cover;filter:blur(50px) brightness(var(--background-blur-brightness));height:120%;left:-10%;position:fixed;top:-10%;transition:background-image .7s ease-in-out,filter .3s ease-in-out;width:120%;z-index:-2}.background-overlay{background:var(--background-overlay-color);height:100%;left:0;position:fixed;top:0;transition:background .3s ease-in-out;width:100%;z-index:-1}.now-playing-fullscreen{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;height:calc(100vh - 90px);justify-content:center;padding:120px 20px 20px;text-align:center}#main-album-art{aspect-ratio:1/1;border-radius:12px;box-shadow:0 10px 40px var(--shadow-color);margin-bottom:24px;max-height:70vw;max-width:70vw;object-fit:cover;width:100%}#main-song-title{font-size:24px;font-weight:700;margin:0}#main-artist-name{color:var(--text-secondary);font-size:16px;margin-top:8px}.side-panel{backdrop-filter:blur(10px);background-color:var(--surface-color);box-shadow:-5px 0 15px var(--shadow-color);display:flex;flex-direction:column;height:100%;max-width:320px;position:fixed;right:0;top:0;transform:translateX(100%);transition:transform .3s ease-in-out;width:85vw;z-index:1000}.side-panel.visible{transform:translateX(0)}.panel-header-top{align-items:center;justify-content:space-between;padding:20px}.panel-header-top,.panel-tabs{border-bottom:1px solid var(--border-color);display:flex}.panel-tabs{flex-wrap:wrap}.tab-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;flex-grow:1;font-family:Poppins,sans-serif;font-size:13px;padding:14px 5px;position:relative;text-align:center}.tab-btn.active{color:var(--text-primary);font-weight:500}.tab-btn.active:after{background-color:var(--primary-color);bottom:-1px;content:"";height:2px;left:0;position:absolute;width:100%}.panel-content{display:none;flex-direction:column;flex-grow:1;overflow-y:auto}.panel-content.active{display:flex}.song-list{list-style:none;margin:0;overflow-y:auto;padding:0}.song-list-item{align-items:center;border-bottom:1px solid var(--border-color);display:flex;padding:12px 20px}.social-links{border-top:1px solid var(--border-color);margin-top:auto;padding:15px 20px;text-align:center}.social-links a{color:var(--text-secondary);font-size:22px;margin:0 10px;transition:color .2s ease-in-out}.social-links a:hover{color:var(--primary-color)}.hidden{display:none}.panel-footer{border-top:1px solid var(--border-color);color:var(--text-secondary);flex-shrink:0;font-size:11px;margin-top:auto;padding:15px 20px;text-align:center}.main-player{background-color:var(--surface-color);border-top:1px solid var(--border-color);bottom:0;box-sizing:border-box;display:flex;flex-direction:column;height:90px;justify-content:center;left:0;padding:8px 15px;position:fixed;width:100%}.player-top-row{align-items:center;display:flex;width:100%}.album-art{border-radius:6px;height:48px;margin-right:12px;width:48px}.track-details{display:flex;flex-direction:column;flex-grow:1;overflow:hidden}.song-title{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.artist-name{color:var(--text-secondary);font-size:13px}.player-controls{align-items:center;display:flex;gap:15px}.control-btn{background:none;border:none;color:inherit;cursor:pointer;line-height:1;margin:0;padding:0;-webkit-tap-highlight-color:transparent}.player-controls i{align-items:center;color:var(--text-primary);display:inline-flex;font-size:24px;justify-content:center;min-height:var(--touch-target-size);min-width:var(--touch-target-size)}.play-button{font-size:38px!important}.progress-container{align-items:center;display:flex;gap:10px;margin-top:8px;width:100%}.time-current,.time-total{color:var(--text-secondary);font-size:11px}.progress-bar-wrapper{background-color:#4d4d4d;border-radius:2px;cursor:pointer;flex-grow:1;height:4px}.progress-bar{background-color:var(--primary-color);border-radius:2px;height:100%;width:0}.volume-slider-container{background-color:var(--surface-color);border-radius:20px;bottom:95px;box-shadow:0 -4px 15px var(--shadow-color);opacity:0;padding:20px 10px;position:fixed;right:15px;transition:opacity .3s ease,visibility .3s ease;visibility:hidden;z-index:100}.volume-slider-container.visible{opacity:1;visibility:visible}.volume-slider-container input[type=range]{-webkit-appearance:none;appearance:none;direction:rtl;height:120px;padding:0 5px;width:8px;writing-mode:vertical-lr}.volume-slider-container input[type=range]::-webkit-slider-runnable-track{background:#4d4d4d;border:none;border-radius:4px;height:4px;width:100%}.volume-slider-container input[type=range]::-moz-range-track{background:#4d4d4d;border:none;border-radius:4px;height:4px;width:100%}@media (min-width:768px){body{overflow:auto}.station-header{top:5px}.station-logo{height:auto;max-width:150px;width:50%}.station-name{font-size:clamp(30px,3vw,32px);font-weight:700}.now-playing-fullscreen{align-items:center;flex-direction:row;gap:5vw;height:calc(100vh - 160px);justify-content:center;margin-top:90px;padding:20px 5vw}#main-album-art{flex-shrink:0;height:30vw;margin-bottom:0;max-height:450px;max-width:450px;width:30vw}.now-playing-fullscreen>div{max-width:800px;max-width:550px;text-align:left;width:80vw}#main-song-title{font-size:clamp(.8rem,3vw,3rem)}#main-artist-name{font-size:1.5vw}.main-player{padding:8px 25px}}
/*# sourceMappingURL=data:application/json;base64,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QUFnQixDQUhoQixlQUFnQixDQUVoQixVQUVKLENBRUEsaUJBRUYsK0JBQ0UsQ0FFQSxrQkFDSSxlQUNKLENBRUEsYUFDSSxnQkFDSixDQUNKIiwiZmlsZSI6InN0eWxlLm1pbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIgICAgICAgIDpyb290IHtcbiAgICAgICAgICAgIC0tcHJpbWFyeS1jb2xvcjogIzFEQjk1NDtcbiAgICAgICAgICAgIC0tYmFja2dyb3VuZC1jb2xvcjogIzEyMTIxMjtcbiAgICAgICAgICAgIC0tc3VyZmFjZS1jb2xvcjogIzFlMWUxZTtcbiAgICAgICAgICAgIC0tdGV4dC1wcmltYXJ5OiAjZmZmZmZmO1xuICAgICAgICAgICAgLS10ZXh0LXNlY29uZGFyeTogI2IzYjNiMztcbiAgICAgICAgICAgIC0tYm9yZGVyLWNvbG9yOiAjMzMzO1xuICAgICAgICAgICAgLS1zaGFkb3ctY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICAgICAgICAgIC0tYmFja2dyb3VuZC1vdmVybGF5LWNvbG9yOiByZ2JhKDE4LCAxOCwgMTgsIDAuNik7XG4gICAgICAgICAgICAtLWJhY2tncm91bmQtYmx1ci1icmlnaHRuZXNzOiAwLjY7XG4gICAgICAgICAgICAtLXRvdWNoLXRhcmdldC1zaXplOiA0OHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYm9keS5saWdodC10aGVtZSB7XG4gICAgICAgICAgICAtLWJhY2tncm91bmQtY29sb3I6ICNmMGYyZjU7XG4gICAgICAgICAgICAtLXN1cmZhY2UtY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgICAtLXRleHQtcHJpbWFyeTogIzFjMWUyMTtcbiAgICAgICAgICAgIC0tdGV4dC1zZWNvbmRhcnk6ICM2NTY3NmI7XG4gICAgICAgICAgICAtLWJvcmRlci1jb2xvcjogI2RkZGZlMjtcbiAgICAgICAgICAgIC0tc2hhZG93LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICAgICAgICAtLWJhY2tncm91bmQtb3ZlcmxheS1jb2xvcjogcmdiYSgyNDAsIDI0MiwgMjQ1LCAwLjUpO1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLWJsdXItYnJpZ2h0bmVzczogMC45O1xuICAgICAgICB9XG5cbiAgICAgICAgYm9keS5zdW5zZXQtdGhlbWUge1xuICAgICAgICAgICAgLS1wcmltYXJ5LWNvbG9yOiAjRkY4QzQyOyAvKiBWaWJyYW50IE9yYW5nZSAqL1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiAjMkMyQzU0OyAvKiBEZWVwIEluZGlnbyAqL1xuICAgICAgICAgICAgLS1zdXJmYWNlLWNvbG9yOiAjNDc0Nzg3OyAvKiBNdXRlZCBQdXJwbGUgKi9cbiAgICAgICAgICAgIC0tdGV4dC1wcmltYXJ5OiAjZmZmZmZmO1xuICAgICAgICAgICAgLS10ZXh0LXNlY29uZGFyeTogI0E0QTRCRjtcbiAgICAgICAgICAgIC0tYm9yZGVyLWNvbG9yOiAjNUM1QzhEO1xuICAgICAgICAgICAgLS1zaGFkb3ctY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgICAgICAgIC0tYmFja2dyb3VuZC1vdmVybGF5LWNvbG9yOiByZ2JhKDQ0LCA0NCwgODQsIDAuNik7XG4gICAgICAgICAgICAtLWJhY2tncm91bmQtYmx1ci1icmlnaHRuZXNzOiAwLjc7XG4gICAgICAgIH1cblxuICAgICAgICBib2R5Lm9jZWFuLXRoZW1lIHtcbiAgICAgICAgICAgIC0tcHJpbWFyeS1jb2xvcjogIzAwQThDQzsgLyogQnJpZ2h0IEN5YW4gKi9cbiAgICAgICAgICAgIC0tYmFja2dyb3VuZC1jb2xvcjogIzAwNUY3MzsgLyogRGFyayBUZWFsICovXG4gICAgICAgICAgICAtLXN1cmZhY2UtY29sb3I6ICMwQTkzOTY7IC8qIE1lZGl1bSBUZWFsICovXG4gICAgICAgICAgICAtLXRleHQtcHJpbWFyeTogI0U5RDhBNjsgLyogUGFsZSBZZWxsb3cgKi9cbiAgICAgICAgICAgIC0tdGV4dC1zZWNvbmRhcnk6ICM5NEQyQkQ7XG4gICAgICAgICAgICAtLWJvcmRlci1jb2xvcjogIzAwN0Y4RDtcbiAgICAgICAgICAgIC0tc2hhZG93LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgICAgICAgICAtLWJhY2tncm91bmQtb3ZlcmxheS1jb2xvcjogcmdiYSgwLCA5NSwgMTE1LCAwLjYpO1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLWJsdXItYnJpZ2h0bmVzczogMC43O1xuICAgICAgICB9XG5cbiAgICAgICAgYm9keS5mb3Jlc3QtdGhlbWUge1xuICAgICAgICAgICAgLS1wcmltYXJ5LWNvbG9yOiAjRDRBMzczOyAvKiBTYW5keSBCcm93biAqL1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiAjM0E1QTQwOyAvKiBEYXJrIEdyZWVuICovXG4gICAgICAgICAgICAtLXN1cmZhY2UtY29sb3I6ICM1ODgxNTc7IC8qIE1lZGl1bSBHcmVlbiAqL1xuICAgICAgICAgICAgLS10ZXh0LXByaW1hcnk6ICNEQUQ3Q0Q7IC8qIExpZ2h0IEtoYWtpICovXG4gICAgICAgICAgICAtLXRleHQtc2Vjb25kYXJ5OiAjQTNCMThBO1xuICAgICAgICAgICAgLS1ib3JkZXItY29sb3I6ICM0QTZFNEU7XG4gICAgICAgICAgICAtLXNoYWRvdy1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLW92ZXJsYXktY29sb3I6IHJnYmEoNTgsIDkwLCA2NCwgMC42KTtcbiAgICAgICAgICAgIC0tYmFja2dyb3VuZC1ibHVyLWJyaWdodG5lc3M6IDAuNztcbiAgICAgICAgfVxuXG4gICAgICAgIGJvZHkubWF0cml4LXRoZW1lIHtcbiAgICAgICAgICAgIC0tcHJpbWFyeS1jb2xvcjogIzAwRkY0MTsgLyogQnJpZ2h0IEdyZWVuICovXG4gICAgICAgICAgICAtLWJhY2tncm91bmQtY29sb3I6ICMwRDAyMDg7IC8qIE5lYXIgQmxhY2sgKi9cbiAgICAgICAgICAgIC0tc3VyZmFjZS1jb2xvcjogIzBEMDIwODtcbiAgICAgICAgICAgIC0tdGV4dC1wcmltYXJ5OiAjMDBGRjQxO1xuICAgICAgICAgICAgLS10ZXh0LXNlY29uZGFyeTogIzAwOEYxMTtcbiAgICAgICAgICAgIC0tYm9yZGVyLWNvbG9yOiAjMDA1RjA4O1xuICAgICAgICAgICAgLS1zaGFkb3ctY29sb3I6IHJnYmEoMCwgMjU1LCA2NSwgMC4yKTtcbiAgICAgICAgICAgIC0tYmFja2dyb3VuZC1vdmVybGF5LWNvbG9yOiByZ2JhKDEzLCAyLCA4LCAwLjcpO1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLWJsdXItYnJpZ2h0bmVzczogMC41O1xuICAgICAgICB9XG5cbiAgICAgICAgYm9keS5jb2ZmZWUtdGhlbWUge1xuICAgICAgICAgICAgLS1wcmltYXJ5LWNvbG9yOiAjRkY5RjFDOyAvKiBBbWJlciAqL1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiAjNEYzQTMwOyAvKiBEYXJrIEJyb3duICovXG4gICAgICAgICAgICAtLXN1cmZhY2UtY29sb3I6ICM2RDU0NDQ7IC8qIE1lZGl1bSBCcm93biAqL1xuICAgICAgICAgICAgLS10ZXh0LXByaW1hcnk6ICNFQUUwRDU7IC8qIENyZWFtICovXG4gICAgICAgICAgICAtLXRleHQtc2Vjb25kYXJ5OiAjQzZBQzhGO1xuICAgICAgICAgICAgLS1ib3JkZXItY29sb3I6ICM1QTQ0Mzg7XG4gICAgICAgICAgICAtLXNoYWRvdy1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLW92ZXJsYXktY29sb3I6IHJnYmEoNzksIDU4LCA0OCwgMC42KTtcbiAgICAgICAgICAgIC0tYmFja2dyb3VuZC1ibHVyLWJyaWdodG5lc3M6IDAuODtcbiAgICAgICAgfVxuXG4gICAgICAgIGJvZHkuZ3JhcGUtdGhlbWUge1xuICAgICAgICAgICAgLS1wcmltYXJ5LWNvbG9yOiAjRDhCNEZFOyAvKiBMaWdodCBQdXJwbGUgKi9cbiAgICAgICAgICAgIC0tYmFja2dyb3VuZC1jb2xvcjogIzNCMDc2NDsgLyogRGVlcCBQdXJwbGUgKi9cbiAgICAgICAgICAgIC0tc3VyZmFjZS1jb2xvcjogIzVBMTg5QTsgLyogTWVkaXVtIFB1cnBsZSAqL1xuICAgICAgICAgICAgLS10ZXh0LXByaW1hcnk6ICNGM0U4RkY7XG4gICAgICAgICAgICAtLXRleHQtc2Vjb25kYXJ5OiAjRTBBQUZGO1xuICAgICAgICAgICAgLS1ib3JkZXItY29sb3I6ICM0QTBDN0E7XG4gICAgICAgICAgICAtLXNoYWRvdy1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLW92ZXJsYXktY29sb3I6IHJnYmEoNTksIDcsIDEwMCwgMC42KTtcbiAgICAgICAgICAgIC0tYmFja2dyb3VuZC1ibHVyLWJyaWdodG5lc3M6IDAuNztcbiAgICAgICAgfVxuXG4gICAgICAgIGJvZHkuZHVzay10aGVtZSB7XG4gICAgICAgICAgICAtLXByaW1hcnktY29sb3I6ICNGMjg0ODI7IC8qIFBhc3RlbCBQaW5rICovXG4gICAgICAgICAgICAtLWJhY2tncm91bmQtY29sb3I6ICMyMzI5NDY7IC8qIERhcmsgQmx1ZSAqL1xuICAgICAgICAgICAgLS1zdXJmYWNlLWNvbG9yOiAjMkQzNDU0O1xuICAgICAgICAgICAgLS10ZXh0LXByaW1hcnk6ICNGRkZGRkU7XG4gICAgICAgICAgICAtLXRleHQtc2Vjb25kYXJ5OiAjQjhDMUVDO1xuICAgICAgICAgICAgLS1ib3JkZXItY29sb3I6ICMzMzNBNTk7XG4gICAgICAgICAgICAtLXNoYWRvdy1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLW92ZXJsYXktY29sb3I6IHJnYmEoMzUsIDQxLCA3MCwgMC42KTtcbiAgICAgICAgICAgIC0tYmFja2dyb3VuZC1ibHVyLWJyaWdodG5lc3M6IDAuNztcbiAgICAgICAgfVxuXG4gICAgICAgIGJvZHkuYXVyb3JhLXRoZW1lIHtcbiAgICAgICAgICAgIC0tcHJpbWFyeS1jb2xvcjogIzg0QTU5RDsgLyogU2FnZSBHcmVlbiAqL1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiAjMjY0NjUzOyAvKiBEYXJrIFNsYXRlIEdyZWVuICovXG4gICAgICAgICAgICAtLXN1cmZhY2UtY29sb3I6ICMyQTlEOEY7IC8qIEp1bmdsZSBHcmVlbiAqL1xuICAgICAgICAgICAgLS10ZXh0LXByaW1hcnk6ICNGRkZGRkY7XG4gICAgICAgICAgICAtLXRleHQtc2Vjb25kYXJ5OiAjRTlDNDZBOyAvKiBTYWZmcm9uICovXG4gICAgICAgICAgICAtLWJvcmRlci1jb2xvcjogIzI4N0E4MjtcbiAgICAgICAgICAgIC0tc2hhZG93LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgICAgICAgICAtLWJhY2tncm91bmQtb3ZlcmxheS1jb2xvcjogcmdiYSgzOCwgNzAsIDgzLCAwLjYpO1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLWJsdXItYnJpZ2h0bmVzczogMC43O1xuICAgICAgICB9XG5cbiAgICAgICAgYm9keS5ibG9zc29tLXRoZW1lIHtcbiAgICAgICAgICAgIC0tcHJpbWFyeS1jb2xvcjogI0Y3QzVDQzsgLyogTGlnaHQgUGluayAqL1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiAjNkQyMTRGOyAvKiBEZWVwIE1hZ2VudGEgKi9cbiAgICAgICAgICAgIC0tc3VyZmFjZS1jb2xvcjogI0IzMzc3MTsgLyogTWVkaXVtIFBpbmsgKi9cbiAgICAgICAgICAgIC0tdGV4dC1wcmltYXJ5OiAjRkZGRkZGO1xuICAgICAgICAgICAgLS10ZXh0LXNlY29uZGFyeTogI0Y3QzVDQztcbiAgICAgICAgICAgIC0tYm9yZGVyLWNvbG9yOiAjOEUyQzYzO1xuICAgICAgICAgICAgLS1zaGFkb3ctY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgICAgICAgIC0tYmFja2dyb3VuZC1vdmVybGF5LWNvbG9yOiByZ2JhKDEwOSwgMzMsIDc5LCAwLjYpO1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLWJsdXItYnJpZ2h0bmVzczogMC43O1xuICAgICAgICB9XG5cbiAgICAgICAgYm9keS5yb3lhbC10aGVtZSB7XG4gICAgICAgICAgICAtLXByaW1hcnktY29sb3I6ICNENkEyRTg7IC8qIExpZ2h0IExhdmVuZGVyICovXG4gICAgICAgICAgICAtLWJhY2tncm91bmQtY29sb3I6ICMzRDNENUI7IC8qIFNsYXRlIEJsdWUgKi9cbiAgICAgICAgICAgIC0tc3VyZmFjZS1jb2xvcjogIzRCNEI3MzsgLyogRGFyayBTbGF0ZSBCbHVlICovXG4gICAgICAgICAgICAtLXRleHQtcHJpbWFyeTogI0ZGRkZGRjtcbiAgICAgICAgICAgIC0tdGV4dC1zZWNvbmRhcnk6ICNENkEyRTg7XG4gICAgICAgICAgICAtLWJvcmRlci1jb2xvcjogIzQ0NDQ2NjtcbiAgICAgICAgICAgIC0tc2hhZG93LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgICAgICAgICAtLWJhY2tncm91bmQtb3ZlcmxheS1jb2xvcjogcmdiYSg2MSwgNjEsIDkxLCAwLjYpO1xuICAgICAgICAgICAgLS1iYWNrZ3JvdW5kLWJsdXItYnJpZ2h0bmVzczogMC43O1xuICAgICAgICB9XG5cbiAgICAgICAgYm9keSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnkpO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJywgc2Fucy1zZXJpZjtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCA5MHB4IDA7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzLCBjb2xvciAwLjNzO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7IC8qIFByZXZlbnRzIHRleHQgc2VsZWN0aW9uIG9uIGRvdWJsZS1jbGljayAqL1xuICAgICAgICAgICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIC0tLSBNYXJxdWVlIFN0eWxlcyAtLS0gKi9cbiAgICAgICAgLm1hcnF1ZWUtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgLyogSGlkZXMgdGhlIHRleHQgd2hlbiBpdCdzIG91dHNpZGUgdGhlIGNvbnRhaW5lciAqL1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jb2xvcik7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvKiBQcmV2ZW50cyB0aGUgdGV4dCBmcm9tIHdyYXBwaW5nIHRvIGEgbmV3IGxpbmUgKi9cbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogMTE7IC8qIEVuc3VyZXMgaXQncyBvbiB0b3Agb2YgdGhlIGhlYWRlciAqL1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICAubWFycXVlZS10ZXh0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTAwJTsgLyogU3RhcnRzIHRoZSB0ZXh0IG9mZi1zY3JlZW4gdG8gdGhlIHJpZ2h0ICovXG4gICAgICAgICAgICBhbmltYXRpb246IG1hcnF1ZWUgNjBzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cblxuICAgICAgICAvKiBBbmltYXRpb24gdGhhdCBtb3ZlcyB0aGUgdGV4dCBmcm9tIHJpZ2h0IHRvIGxlZnQgKi9cbiAgICAgICAgQGtleWZyYW1lcyBtYXJxdWVlIHtcbiAgICAgICAgICAgIDAlICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbiAgICAgICAgICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG4gICAgICAgIH1cblxuICAgICAgICAvKiAtLS0gSGVhZGVyIFN0eWxlcyAtLS0gKi9cbiAgICAgICAgLnN0YXRpb24taGVhZGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHRvcDogMjlweDsgLyogUHVzaGVkIGRvd24gdG8gbWFrZSBzcGFjZSBmb3IgdGhlIG1hcnF1ZWUgKi9cbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRlci1sZWZ0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN0YXRpb24tbG9nbyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogODBweDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bzsgICAgICAgICAgICBcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdGF0aW9uLW5hbWUge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjbGFtcCg5cHgsIDJ2dywgMTZweCk7IC8qIG1pbiA4cHgsIHByZWZlcnJlZCAydncsIG1heCAxNnB4ICovXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogLS0tIE5ldyBIZWFkZXIgTWVudSBTdHlsZXMgLS0tICovXG4gICAgICAgIC5oZWFkZXItY29udHJvbHMge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRlci1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogY2FsYygxMDAlICsgMTBweCk7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN1cmZhY2UtY29sb3IpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTJweCB2YXIoLS1zaGFkb3ctY29sb3IpO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB6LWluZGV4OiAxMTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UsIHRyYW5zZm9ybSAwLjJzIGVhc2UsIHZpc2liaWxpdHkgMC4ycztcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkZXItbWVudS52aXNpYmxlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRlci1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDEycHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMTVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyLW1lbnUtaXRlbTpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogTWFrZSB0aGUgaGVhZGVyIG1lbnUgYnV0dG9uIGNpcmN1bGFyICovXG4gICAgICAgICNoZWFkZXItbWVudS1idG4ge1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcbiAgICAgICAgfVxuXG4gICAgICAgICNoZWFkZXItbWVudS1idG46aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICAgICB9XG5cblxuICAgICAgICAuYmFja2dyb3VuZC1ibHVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHRvcDogLTEwJTtcbiAgICAgICAgICAgIGxlZnQ6IC0xMCU7XG4gICAgICAgICAgICB3aWR0aDogMTIwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTIwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IC0yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIGZpbHRlcjogYmx1cig1MHB4KSBicmlnaHRuZXNzKHZhcigtLWJhY2tncm91bmQtYmx1ci1icmlnaHRuZXNzKSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWltYWdlIDAuN3MgZWFzZS1pbi1vdXQsIGZpbHRlciAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhY2tncm91bmQtb3ZlcmxheSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtb3ZlcmxheS1jb2xvcik7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICAubm93LXBsYXlpbmctZnVsbHNjcmVlbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDkwcHgpOyAvKiBMZWF2ZSBzcGFjZSBmb3IgdGhlIGJvdHRvbSBwbGF5ZXIgKi9cbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEyMHB4IDIwcHggMjBweCAyMHB4OyAvKiBJbmNyZWFzZWQgdG9wIHBhZGRpbmcgdG8gcHVzaCBjb250ZW50IGRvd24gKi9cbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIH1cblxuICAgICAgICAjbWFpbi1hbGJ1bS1hcnQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDcwdnc7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA3MHZ3O1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggNDBweCB2YXIoLS1zaGFkb3ctY29sb3IpO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgI21haW4tc29uZy10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgI21haW4tYXJ0aXN0LW5hbWUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIFNpZGUgUGFuZWwgY29waWVkIGZyb20gdjIxICovXG4gICAgICAgIC5zaWRlLXBhbmVsIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDg1dnc7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMyMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3VyZmFjZS1jb2xvcik7XG4gICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAtNXB4IDAgMTVweCB2YXIoLS1zaGFkb3ctY29sb3IpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cblxuICAgICAgICAuc2lkZS1wYW5lbC52aXNpYmxlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wYW5lbC1oZWFkZXItdG9wIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBhbmVsLXRhYnMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRhYi1idG4ge1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgcGFkZGluZzogMTRweCA1cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUG9wcGlucycsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAudGFiLWJ0bi5hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRhYi1idG4uYWN0aXZlOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICAucGFuZWwtY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87IC8qIEFsbG93IHRoaXMgY29udGFpbmVyIHRvIHNjcm9sbCAqL1xuICAgICAgICB9XG5cbiAgICAgICAgLnBhbmVsLWNvbnRlbnQuYWN0aXZlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cblxuICAgICAgICAuc29uZy1saXN0IHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgLyogZmxleC1ncm93OiAxOyAqLyAvKiBSZW1vdmVkIHRvIGFsbG93IGZvb3RlciBhbmQgc29jaWFsIGxpbmtzIHRvIHNob3cgKi9cbiAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAuc29uZy1saXN0LWl0ZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDIwcHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zb2NpYWwtbGlua3Mge1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvOyAvKiBQdXNoZXMgdGhpcyBhbmQgdGhlIGZvb3RlciB0byB0aGUgYm90dG9tICovXG4gICAgICAgIH1cblxuICAgICAgICAuc29jaWFsLWxpbmtzIGEge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zb2NpYWwtbGlua3MgYTpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICAuaGlkZGVuIHsgZGlzcGxheTogbm9uZTsgfVxuXG4gICAgICAgIC5wYW5lbC1mb290ZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogYXV0bzsgLyogUHVzaGVzIHRoZSBmb290ZXIgdG8gdGhlIGJvdHRvbSAqL1xuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAubWFpbi1wbGF5ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3VyZmFjZS1jb2xvcik7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTVweDtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIH1cblxuICAgICAgICAucGxheWVyLXRvcC1yb3cge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hbGJ1bS1hcnQge1xuICAgICAgICAgICAgd2lkdGg6IDQ4cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgICAgIH1cblxuICAgICAgICAudHJhY2stZGV0YWlscyB7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICAuc29uZy10aXRsZSB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmFydGlzdC1uYW1lIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeSk7XG4gICAgICAgIH1cblxuICAgICAgICAucGxheWVyLWNvbnRyb2xzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAxNXB4OyAvKiBJbmNyZWFzZWQgZ2FwIGZvciBiZXR0ZXIgc3BhY2luZyAqL1xuICAgICAgICB9XG5cbiAgICAgICAgLyogQWNjZXNzaWJpbGl0eTogU3R5bGUgYnV0dG9ucyB0byBiZSBpbnZpc2libGUgd3JhcHBlcnMgZm9yIGljb25zICovXG4gICAgICAgIC5jb250cm9sLWJ0biB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0OyAvKiBJbmhlcml0IGNvbG9yIGZyb20gcGFyZW50ICovXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTsgLyogRW5zdXJlIHByb3BlciBhbGlnbm1lbnQgKi9cbiAgICAgICAgICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIFJlbW92ZSB0YXAgaGlnaGxpZ2h0IG9uIG1vYmlsZSAqL1xuICAgICAgICB9XG5cbiAgICAgICAgLnBsYXllci1jb250cm9scyBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnkpO1xuICAgICAgICAgICAgbWluLXdpZHRoOiB2YXIoLS10b3VjaC10YXJnZXQtc2l6ZSk7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS10b3VjaC10YXJnZXQtc2l6ZSk7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wbGF5LWJ1dHRvbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDM4cHggIWltcG9ydGFudDsgLyogU2xpZ2h0bHkgc21hbGxlciBmb3IgYmFsYW5jZSAqL1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2dyZXNzLWNvbnRhaW5lciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpbWUtY3VycmVudCxcbiAgICAgICAgLnRpbWUtdG90YWwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9ncmVzcy1iYXItd3JhcHBlciB7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0ZDRkNGQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgICAgIHdpZHRoOiAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLyogLS0tIEJBRy1PTkcgQ1NTIFBBUkEgU0EgVkVSVElDQUwgVk9MVU1FIC0tLSAqL1xuICAgICAgICAudm9sdW1lLXNsaWRlci1jb250YWluZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgYm90dG9tOiA5NXB4OyAvKiBBZGp1c3RlZCB0byBhbGlnbiBiZXR0ZXIgd2l0aCB0aGUgY29udHJvbHMgKi9cbiAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3VyZmFjZS1jb2xvcik7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAtNHB4IDE1cHggdmFyKC0tc2hhZG93LWNvbG9yKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZSwgdmlzaWJpbGl0eSAwLjNzIGVhc2U7XG4gICAgICAgIH1cblxuICAgICAgICAudm9sdW1lLXNsaWRlci1jb250YWluZXIudmlzaWJsZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC52b2x1bWUtc2xpZGVyLWNvbnRhaW5lciBpbnB1dFt0eXBlPSdyYW5nZSddIHtcbiAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLyogUmVtb3ZlIGRlZmF1bHQgYnJvd3NlciBzdHlsaW5nICovXG4gICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1scjsgLyogTWFrZSB0aGUgc2xpZGVyIHZlcnRpY2FsICovXG4gICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDsgLyogRW5zdXJlIGNvcnJlY3Qgb3JpZW50YXRpb24gKi9cbiAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAvKiAtLS0gQ3VzdG9tIFRyYWNrIFN0eWxpbmcgZm9yIFZvbHVtZSBTbGlkZXIgLS0tICovXG4gICAgICAgIC8qIEZvciBXZWJLaXQgYnJvd3NlcnMgKENocm9tZSwgU2FmYXJpLCBFZGdlKSAqL1xuICAgICAgICAudm9sdW1lLXNsaWRlci1jb250YWluZXIgaW5wdXRbdHlwZT0ncmFuZ2UnXTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM0ZDRkNGQ7IC8qIE5ldXRyYWwgdHJhY2sgY29sb3IgKi9cbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIEZvciBGaXJlZm94ICovXG4gICAgICAgIC52b2x1bWUtc2xpZGVyLWNvbnRhaW5lciBpbnB1dFt0eXBlPSdyYW5nZSddOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjNGQ0ZDRkOyAvKiBOZXV0cmFsIHRyYWNrIGNvbG9yICovXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAvKiogRGVza3RvcCBWaWV3ICoqL1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGJvZHkge1xuICAgICAgICAgICAgICAgIC8qIEFsbG93IHNjcm9sbGluZyBvbiBkZXNrdG9wIGlmIGNvbnRlbnQgb3ZlcmZsb3dzICovXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC8qIC0tLSBIZWFkZXIgU3R5bGVzIC0tLSAqL1xuICAgICAgICAgICAgLnN0YXRpb24taGVhZGVyIHtcbiAgICAgICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnN0YXRpb24tbG9nbyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnN0YXRpb24tbmFtZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjbGFtcCgzMHB4LCAzdncsIDMycHgpOyAvKiBtaW4gOHB4LCBwcmVmZXJyZWQgMnZ3LCBtYXggMTZweCAqL1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5ub3ctcGxheWluZy1mdWxsc2NyZWVuIHtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZ2FwOiA1dnc7IC8qIFVzZSB2aWV3cG9ydCB3aWR0aCBmb3IgcmVzcG9uc2l2ZSBzcGFjaW5nICovXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCA1dnc7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gOTBweCAtIDcwcHgpOyAvKiBBY2NvdW50IGZvciBoZWFkZXIgYW5kIHBsYXllciAqL1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDkwcHg7IC8qIFB1c2ggY29udGVudCBiZWxvdyB0aGUgZml4ZWQgaGVhZGVyICovXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNtYWluLWFsYnVtLWFydCB7XG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7IC8qIFByZXZlbnQgaW1hZ2UgZnJvbSBzaHJpbmtpbmcgKi9cbiAgICAgICAgICAgICAgICB3aWR0aDogMzB2dzsgLyogUmVzcG9uc2l2ZSB3aWR0aCAqL1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzB2dzsgLyogTWFpbnRhaW4gYXNwZWN0IHJhdGlvICovXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0NTBweDsgLyogTWF4IHNpemUgKi9cbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA0NTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubm93LXBsYXlpbmctZnVsbHNjcmVlbiA+IGRpdiB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MHZ3OyAvKiBNYXRjaCB0aGUgYWxidW0gYXJ0IHdpZHRoICovXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1NTBweDsgLyogTWF0Y2ggdGhlIGFsYnVtIGFydCBtYXgtd2lkdGggKi9cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI21haW4tc29uZy10aXRsZSB7XG4gICAgICAgICAgICAgICAgLypmb250LXNpemU6IGNsYW1wKDAuNzVyZW0sIC0wLjAycmVtICsgMy4wN3Z3LCAxLjI5cmVtKSovIC8qIFJlc3BvbnNpdmUgZm9udCBzaXplICovXG5cdFx0ICAgICAgICBmb250LXNpemU6IGNsYW1wKC44MHJlbSwgM3Z3LCAzcmVtKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI21haW4tYXJ0aXN0LW5hbWUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41dnc7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tYWluLXBsYXllciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDI1cHg7IC8qIEFkZCBtb3JlIHBhZGRpbmcgb24gZGVza3RvcCAqL1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4iXX0= */